Your country

Tools that support it use your country for local currency, number formats, units and paper size. Your choice is saved only in this browser.

Type a name or a two-letter code. Use the up and down arrow keys to move through the countries, Enter to choose one and Escape to close.

Spirit Level (Bubble Level)

Lay your phone down or stand it on an edge: angle, slope and a calibrated bubble.

Free, no sign-up On this device: nothing is sent
+3 +1 more details No uploadWorks offline once opened Utility

Spirit level

Checking what this device offers…

Mode
From level — Start the level, then lay the device down or stand it on an edge.

Not reading yet

—Top edge
—Right side
—Slope
—Ratio

Not calibrated: the reading includes the sensor’s own offset.

Next steps Done. What next?

Start over

All everyday utilities

About the Spirit Level (Bubble Level)

Turn a phone or tablet into a spirit level. Lay it on a shelf, a table or a floor and the round bull’s-eye bubble shows which way the surface slopes; stand it on its long or short edge against a picture frame, a door or a worktop and the tube bubble levels that edge. The page reads the angle in degrees to the tenth, the slope as a percentage, the rise in millimetres per metre (inches per foot in the United States) and as a ratio such as 1 in 50.

Phones are not built as levels: every sensor has a small offset of its own, and a case or a camera bump tilts the phone itself. So the page has a proper two-step calibration, the way builders check a level: read, turn the device half a turn on the same spot, read again. It cancels the sensor’s offset and tells you how much the surface itself slopes. There is also Set zero here, Hold to freeze a reading you cannot see, and an optional tone when level.

It uses the motion sensors your browser lets a page read, after asking where the browser asks; nothing is sent anywhere.

How to use it

  1. Open the page on a phone or tablet and press Start the level. On an iPhone or iPad, allow motion and orientation access when asked.
  2. Lay the device on the surface: the bubble moves towards the high side, and the reading says how far from level it is. Stand the device on an edge to level that edge instead; Auto switches between the two.
  3. For the best accuracy, press Calibrate: record a reading, turn the device half a turn on the same spot (end over end on an edge), record again. Lying flat, the top and bottom edges, and the side edges each keep their own calibration in this browser.
  4. Press Hold to freeze the reading, for example when the screen faces away from you, and Copy reading to keep it as text.
  5. Tick Tone when level to hear a short tone (and feel a buzz where the device has one) when the bubble reaches level.

Examples

A shelf that is almost level
Input
Phone lying on the shelf, calibrated
Result
0.3° from level, the right side is higher · 0.5% slope · 5 mm per metre · 1 in 191
Hanging a picture
Input
Phone standing on its long edge on top of the frame
Result
1.2°, the left end is higher · 2.1% slope

Lower the left end until the reading is 0.0° and the page says Level.

A drainage fall
Input
A run that must fall 1 in 50
Result
1 in 50 is a 2% slope, 20 mm per metre or 1.15°

Lying flat or on an edge

  • Lying flat (the bull’s-eye): the device lies on the surface. The bubble shows the direction and amount of the tilt in both directions at once; the readings give the slope of the top edge and of the right side, and the angle in the steepest direction.
  • On an edge (the tube): the device stands upright on one of its edges, the screen facing you. The reading is the slope of the edge it stands on: positive when the right end is higher. It works on any of the four edges, and with the screen rotated or not.
  • Auto chooses between them from how the device is held: lying flat below 45° from level, on an edge above (with a little room either way so it does not flicker).

Calibration: the reversal method

A level that reads 0.4° on a level shelf is no use, and a phone can do that because of a sensor offset, a case, or a camera bump. The cure is the check builders use on any level: read it, turn it end for end on the same spot, read it again. Turning flips the surface’s slope as the device sees it but not the device’s own error, so the error is the average of the two readings and the surface’s real slope is half their difference.

Calibrate in the case you will use, on a firm surface close to level: once lying flat, and once on an edge for each pair of edges you measure with (the top and bottom edges are one pair, the two sides the other). Each calibration is used only in its own position, because a case or a camera bump tilts a phone lying flat but not one standing on an edge. On an edge the second reading stands the device on its opposite edge, so use edges that are straight and free of buttons. The page waits a moment after each tap so that the tap does not count, checks that the device was still and was really turned, and stores the calibration in this browser only. Set zero here is the quick alternative: it treats the current surface as level, which is right only when you know it is, and it works within 5° of level.

Slope, percent and ratios

The same slope is written several ways, and the page shows them all: degrees, a percentage (100 × tan of the angle), a rise per run (millimetres per metre, inches per foot) and a ratio (1 in N, the run for one unit of rise). Some values to recognise:

  • 1 in 100 = 1% = 10 mm per metre = 0.57°
  • 1 in 50 = 2% = 20 mm per metre = 1.15°
  • 1 in 12 = 8.3% = about 83 mm per metre = 4.76°
  • 1 in 1 = 100% = 45°

For roofs and ramps there are dedicated calculators: Slope Calculator and Roof Pitch Calculator.

How accurate is a phone level?

Browsers report the device’s tilt in steps no finer than a tenth of a degree, as the W3C DeviceOrientation specification asks them to, so 0.1° is the finest step the page can show. In practice the limits are the phone’s own sensor and how it sits: calibrate it, keep it still, and make sure it rests on its back or edge rather than on a camera bump or a button. For work where tenths of a degree matter, check the result with a good spirit level.

Sources

  • W3C, DeviceOrientation Event Specification: the angles browsers report, their precision and the permission prompt.
  • The slope conversions are plain trigonometry: percent = 100 × tan θ, rise per metre = 1000 × tan θ mm, 1 in N with N = 1 ÷ tan θ.

Limitations

  • The page can only read the sensors the browser exposes: a device without motion sensors, such as a desktop computer, cannot be used as a level.
  • Readings come in steps of 0.1°, and each phone’s sensor has its own small error: calibrate before you rely on the tenths.
  • A curved back, a camera bump or a case changes how the phone sits. Calibrate with the device exactly as you will use it.
  • Browsers stop sending sensor readings while the page is in the background; the level resumes when you come back.
  • Phones cannot measure a level line across a room; for that you need a laser level or a water level.

Privacy

On this device: nothing is sent

Sensor readings stay in this browser: they are drawn on the page and nothing is uploaded. Your calibration and settings are saved only in this browser. Motion access is asked for by the browser, not by us.

Frequently asked questions

How do I calibrate my phone as a level?

Press Calibrate, lay the phone on a firm surface that is close to level and record step 1; then turn it half a turn on the same spot (so its top points the other way) and record step 2. For an edge, stand it on that edge for step 1 and on the opposite edge for step 2, the screen facing you both times. The page then reads correctly even if the surface was not perfectly level.

Why does it ask for motion access?

Safari on iPhone and iPad asks before a page may read the motion sensors, because they are private. Nothing is read until you agree, and nothing is sent anywhere.

Why is the reading not exactly zero on a level table?

Because the phone’s sensor has a small offset, or the phone does not lie evenly (a camera bump, a case, a curved back). Calibrate it with the two-step calibration, or with Set zero here on a surface you know is level.

What does 1 in 50 mean?

One unit of rise for every 50 units of run: 20 mm per metre, a 2% slope or 1.15°. The page shows every slope in degrees, as a percentage, as a rise per metre or foot and as 1 in N.

Does it work on a laptop?

Almost never: most laptops and desktop computers have no motion sensors that a browser can read (some Windows tablets and 2-in-1s do). Open the page on a phone or tablet.

Can I use it when I cannot see the screen?

Yes. Tick Tone when level to hear a short tone when it reaches level, or press Hold to freeze the reading and look at it afterwards.

Quick answers and tool search

Type to search tools or to get a quick answer, for example 18% of 2500. Use the up and down arrow keys to move through the results, Enter to choose, and Escape to close.