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 bottom bar with the lean readout. drawn from code

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

Left and right look the same.

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.

Below 5 km/h it reads zero.

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 . 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.

  1. 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.

  2. 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.

  3. 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.

  4. 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.

Portrait and landscape are calibrated separately.

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.

How honest is the number

It blends two sensors: the gyroscope, which is quick and unbothered by cornering forces but drifts over time, and the accelerometer, which doesn’t drift but is pulled about by the bike’s own forces. Most of the reading comes from the gyroscope, with the accelerometer quietly correcting the drift. That’s the standard approach and it works well in practice.

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.
Don’t ride to the number.

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.