How accurate is a phone level?
Short answer: without calibration, often within 1° to 2°. With a half-turn calibration, a few tenths of a degree. Here is where those numbers come from.
By Springlab · 17 October 2026. We make Level & Compass. Before we wrote any accuracy claim for it, we read the sensor datasheets, Android's rules and 7,437 low-star reviews of other level and compass apps. This page is what we found. We are now testing more phones against a calibrated gauge, and we will add those measurements here.
What the sensor makers say
A phone level reads the accelerometer, a small chip that feels gravity. Its datasheet gives a “zero-g offset”: how far the reading can be from zero when the chip is perfectly level, straight from the factory. Converted to an angle:
| Sensor (typical phones) | Zero-g offset | As a tilt angle |
|---|---|---|
| TDK ICM-456xx family (recent flagships) | ±10 mg | ±0.57° |
| ST LSM6DSO family (mid-range phones, such as the Galaxy A16) | ±20 mg | ±1.15° |
| ST LSM6DSL / LSM6DS3 (older and cheaper phones) | ±40 mg | ±2.3° |
The angle is asin(offset ÷ 1 g). These are the makers' typical values; board stress when the chip is soldered can make them larger. The offset also drifts a little with temperature: about 0.09° per 10 °C on the TDK part.
What Android promises
Android's compatibility rules (the CDD, section 7.3) say how noisy the accelerometer may be: at most 0.05 m/s² per sample, which is about 0.29° of tilt. They say nothing about the offset. A phone can pass every Android test and still read 2° off on a perfect surface.
That matches what users report. In the 1- and 2-star reviews of the five most-installed level apps, 7.4 % say the app showed level when it was not, and another 3.9 % complain about calibration. One reviewer put it well: an app that asks for a level surface to calibrate is no use, because if you had a level surface, you would not need the app.
The half-turn trick
You do not need a level surface to calibrate. Read the angle, turn the phone 180° in the same spot, and read again. The surface's slope turns with the phone, but the sensor's error does not, so:
- true slope = (first + second) ÷ 2
- phone error = (first − second) ÷ 2
Do it on any reasonably flat spot. Mark the phone's outline, or press it against a straight edge, so it goes back in the same place. Our app does this for both axes and then removes the error from every reading. The browser level on this site cannot store a calibration, so do the sum yourself.
What we show in the app
| State | What the app claims | Why |
|---|---|---|
| Not calibrated | ±1.0° | Covers the typical offset of most phones made in recent years |
| After flip calibration | ±0.2° | The offset cancels; what is left is noise, drift and how well you put the phone back |
These are our design targets, built from the datasheets. We are confirming them with a digital angle gauge on more phones, including cheap ones, and will publish the results on this page.
And the compass?
A phone compass is less accurate than its level. Android allows the magnetometer a built-in offset of up to 700 µT (the Earth's field is only 22 to 67 µT), which the phone must learn as you use it, and per-sample noise of up to 1.5 µT, about 4° of heading. At its best, in the open, a phone compass is good to about ±3°. Next to steel or a magnet it can be wrong by tens of degrees, which is why our app warns you instead.
True north needs the magnetic declination for your location. Android still uses the 2020 world magnetic model. We checked it against NOAA's current model for four cities: it was within 0.15°, inside NOAA's own uncertainty.
How to test your own phone
- Open the online bubble level on your phone.
- Do the half-turn check on a table: half the difference is your phone's error on that axis.
- Turn the phone 90° and repeat for the other axis.
- If you have a spirit level or a machinist's level, compare on a surface it says is level.
If you measure something surprising, tell us: hello@springlab.app.
Questions
Are phone level apps accurate?
Often to within 1° to 2° without calibration, because the sensor has a factory offset. With a half-turn calibration, a few tenths of a degree.
Why do level apps disagree with a spirit level?
The phone's accelerometer has a small zero error from the factory, and Android sets no limit on it. A camera bump or a case can tilt the phone too.
How do I calibrate a phone level without a level surface?
Read the angle, turn the phone 180° in the same spot, and read again. Half the difference is the phone's error; the average is the true slope.