From this site

One project, every trade

Each calculator adds its lines to a single estimate — consolidated BOM, schedule and cash-flow included.

Open My Project

Digital Bubble Level

Rest your phone flat against a wall, shelf, or surface. The bubble drifts toward the edge as the surface tilts away from level, and centers with a haptic pulse when it’s within 0.5° of perfectly level.

This device or browser doesn't expose motion sensor data (`DeviceOrientationEvent`) — this tool needs a phone or tablet with an accelerometer, accessed over HTTPS.

How to use the Digital Bubble Level

  1. Open the tool on a phone

    Load the page on a phone or tablet over HTTPS. Desktop browsers define the motion API but never report a tilt reading.

  2. Grant motion access

    On iOS, tap Enable Motion Sensors. Apple requires a deliberate tap before any page can read orientation, so this cannot be done automatically.

  3. Rest the phone on the surface

    Lay it flat on a shelf for level, or press its back flat against a wall for plumb. Remove any thick case first — a raised camera bump tilts the phone by a degree or more.

  4. Read the bubble

    The bubble moves toward the low side. It centres and the phone pulses once when both axes are within 0.5°.

  5. Shim and re-check

    Adjust, then lift and replace the phone rather than sliding it. Sliding drags the reading with the motion.

Where this tool stops

Phone sensors drift slightly with temperature and are only as flat as the phone's own case. For structural setting-out, check against a known-good spirit level first.

Digital Bubble Level — frequently asked questions

How accurate is a phone as a spirit level?
The sensor itself resolves well under a tenth of a degree, but the practical limit is the phone's own flatness: a case, a raised camera ring or a slightly bowed back can introduce a degree of error. Check it once against a known-good spirit level, note the offset, and it is dependable for hanging, shelving and appliance levelling. For setting out structure, use a real level.
Why does it say no motion readings are arriving?
Desktop Chrome and most laptops define DeviceOrientationEvent but have no hardware behind it, so the API exists and never fires. The tool waits for actual readings rather than trusting the API's presence, which is why it tells you plainly instead of showing a bubble frozen at dead centre.
Why do I have to tap a button before it works on iPhone?
Since iOS 13, Safari requires a user gesture before a page may read motion data — a privacy measure, because orientation streams can be used to fingerprint a device. The Enable Motion Sensors button is that gesture. There is no way to skip it.
Does it work with the phone against a vertical wall?
Yes. Press the back of the phone flat against the wall and the same two axes now read plumb instead of level. The tolerance and haptic pulse behave identically.
What does 'within 0.5°' mean in practical terms?
Half a degree is roughly 1 mm of fall across a 120 mm phone, or about 9 mm over a metre. That is tighter than the eye can see on a shelf and comfortably inside what a picture rail or a cabinet run needs.
Does it need an internet connection?
Only to load the page the first time. All the maths runs in the browser, nothing is transmitted, and once the page is cached it works with no signal — which matters in a basement or a steel-framed building.
Can I use it to check a floor for level across a room?
Not directly — it reads the tilt of whatever the phone is touching, so it measures a 150 mm patch. Lay a straightedge across the room and rest the phone on that, which is how a spirit level is used for the same job.
Is any of my sensor data sent anywhere?
No. There is no server component to this site at all; the orientation stream is read, converted to an angle and drawn on screen inside your browser. Nothing is stored and nothing is uploaded.

A reading on its own does not order material. These calculators take what you just measured and give you quantities, cuts or cost.

Other field tools