Lean angle
At the right-hand end of the bar along the bottom of the map there’s a number in degrees with the word lean under it. It’s worked out from your phone’s own motion sensors, it changes colour as the number climbs, and it’s recorded with your ride so you can see afterwards where the corners were.
The lean readout sits at the end of the bottom bar, next to speed, height and direction. It’s a number and a colour — there’s no dial or needle behind it.
Here it’s amber, meaning the angle has passed the amber threshold but not the red one.
The colours
- Green — below your amber setting. Normal riding.
- Amber — past your amber setting. Default is 35°.
- Red — past your red setting, and the whole readout pulses so it catches your eye. Default is 45°.
Both thresholds are yours to set under Ride Settings. Amber zone starts runs from 20° to 50°, Red zone starts from 30° to 60°, and the app keeps at least five degrees between them — drag one past the other and the other moves out of the way.
Pick numbers that mean something for your bike and your tyres. A cruiser will scrape well before a sportsbike gets interesting, so the defaults are a starting point, not a recommendation.
Two things the number won’t tell you
The readout shows the size of the angle, not which way you’re leaning. Thirty degrees left and thirty degrees right both read 30°. The direction is recorded properly in the ride file — it’s only the on-screen number that drops the sign.
At walking pace, turning the bars tips the phone enough that the sensors read it as lean, and you’d see a steady twenty-odd degrees while paddling around a car park. So below 5 km/h the number is held at 0°. That’s why it sits at zero at the lights and wakes up as you pull away.
Calibrating it
The app has no way of knowing how your phone sits in its cradle — angled back on a handlebar mount, flat in a tank bag, tilted on a fork stem. Calibration tells it what upright looks like for your setup. Without it, the number will sit at something other than zero on a straight road, and every reading is off by that much.
-
Get the sensors running
Calibration reads live sensor data, so the app has to be up and reading. If it isn’t, you’ll get Sensors not running — start a ride first. Open the map and let it settle, or start navigating, before you go into settings.
-
Hold the bike upright and still
Not on the side stand. Sitting on it with both feet down is ideal, or have someone hold it. The phone should be in the mount exactly as you ride with it.
-
Open Ride Settings and tap Recalibrate lean angle
It samples for three seconds — the button reads Calibrating… (3 s) while it does. Keep everything still for the whole three seconds. When it’s done you’ll see Lean angle calibrated.
-
Check it
Back on the map, on a level straight, the number should sit at or near zero. If it doesn’t, calibrate again — you probably moved.
The app keeps one calibration for each and switches between them when you rotate the phone. Calibrating in landscape does nothing for portrait. If you ride in both, do both. Rotating mid-ride resets the reading cleanly rather than jumping.
The recorded maximum is filtered; the live gauge isn’t
A leaning motorcycle is riding a circle, and the tightest circle a bike can physically describe is a matter of geometry rather than skill — wheelbase and steering lock. That sets a hard limit on how much lean is available at any given speed. At walking pace it’s a few degrees; by about 30 km/h it’s past anything a road bike sustains.
NavForge uses that limit to throw out readings that cannot have happened. On one real ride the raw data claimed a maximum of 44.4° — recorded at 6.5 km/h, pulling away from a stop. Three samples out of 376 were impossible at the speed they were taken at; discarding them gave a true maximum of 19.3°, which sits neatly between two earlier rides on the same roads.
The live readout can still jump as you pull away from a standstill — that spike happens inside the sensor filter, before any of this applies. If you glance down at the lights and see a number that makes no sense, it is that. The figure stored with your ride has had the impossible readings removed.
How honest is the number
It blends two things. The fast half is the gyroscope, which reacts instantly and is unbothered by cornering forces, but drifts over time. The slow half corrects that drift — and what it uses has changed for the better.
It used to correct against the accelerometer, which on a motorcycle is a poor judge of lean: the accelerometer feels cornering force and the tilt of the phone together and cannot separate them, so turning the bars at low speed or a bump mid-corner both read as lean. The correction now comes from physics instead of a sensor — from how fast you’re travelling and how fast your direction is changing. A bike that is turning at a given rate at a given speed must be leaning by a particular amount, and that is what the reading is pulled back towards. The accelerometer is kept as a fallback for when there’s no usable GPS heading.
The axis the gyroscope is measured around is also learned rather than assumed, from how the phone moves under braking, so a mount at an odd angle no longer bends every reading.
Two honest caveats:
- It has been confirmed on one phone model. The maths depends on how a particular handset orients its sensors, and that has only been checked against the developer’s own device. On another model the sign or the axis could read differently. Before you trust the readout on your phone, calibrate it and then watch it through a few corners you know — if left and right behave sensibly and it returns to zero on the straights, you’re fine.
- It’s your phone leaning, not your bike. A mount with any give in it, or a phone that has shifted in its cradle, reads high or low. If the number looks wrong, check the mount before you blame the app.
It’s a readout to look at afterwards, not a target to chase. Nothing good comes of watching a phone screen mid-corner. The ride file keeps every reading — look at it over a coffee.
Lean in your recorded rides
While a recording is running, the lean angle at each fix is saved with that point. That’s what feeds the Analytics overlay in My Rides, which redraws the ride in green, amber and red, and reports your maximum and average lean for the ride. Average lean ignores the straight bits, so it reads as the average of your actual cornering rather than being flattened by an hour of motorway.
Imported GPX files have no lean data in them, so the overlay isn’t offered on one.