The ridden-roads map: how GPS becomes a road you've done

Turning a wobbly GPS trace into 'you have ridden this road' is harder than it looks. Here's how map-matching works, and the rule that keeps the map honest.

The pitch is one sentence: ride, and your map fills in with the roads you have done.

The engineering behind that sentence is where all the interesting problems live, and understanding it tells you exactly how much to trust what you are looking at.

The problem with GPS

Your phone does not know where it is. It estimates.

In open country, that estimate is good — 5 to 10 metres. In a valley with steep sides, satellites are blocked on one side and the estimate skews. Under a canopy of gums it degrades further. In a tunnel it stops entirely. Near a cliff face, signals bounce and arrive late, and the phone confidently reports you 40 metres into a paddock.

Plot raw GPS points from a real ride and you get a fuzzy caterpillar, not a line. On a road with a parallel service road, the caterpillar wanders between them. That is the raw material.

What map-matching does with it

Map-matching answers a specific question: given this sequence of unreliable positions, which sequence of actual roads is most likely to have produced them?

The approach is probabilistic. For each GPS point, look at nearby road segments and score how plausible each is given the reported accuracy. Then score the transitions — if you were on road A and then road B, is there actually a connection, and does the distance along the network match the distance you appear to have travelled in that time? Then find the most probable path through the whole chain.

The result is not a smoothed line. It is a list of roads, each one identified individually. That distinction is the entire feature. A smoothed line is a picture. A list of roads is something you can route against later.

Two things fall out of doing it this way:

  • The wander between the highway and the service road resolves, because a path that jumps back and forth between them is wildly improbable.
  • A tunnel with no signal is bridged correctly if the network makes it obvious — but flagged, not invented, if it does not.

The rule that keeps the map honest

Here is the part we are unusually strict about, and it is the reason the feature is worth anything.

Recorded rides have gaps. Phones get suspended by the operating system when the screen locks. Batteries die. Coverage vanishes. So a recorded trace can have a hole in the middle of a ride you definitely rode.

For display, that hole is ugly, so it can be filled in from the route you planned, making the trip line continuous. Fine.

For ridden roads, that filled section is a guess, and a guess is not a fact. So the rule is absolute:

Only points recorded from real GPS during an active ride can mark a road as ridden. Any section filled in from a planned route is flagged as assumed and is never fed into map-matching, never inserted into your ridden roads, and never counted.

The same applies to manually saying “I rode this one” — it is stored separately, and it does not colour the map orange unless a real GPS pass later confirms it.

This costs us. Riders occasionally see a road they definitely rode still showing grey, because their phone died in the middle of it. That is a worse experience than quietly filling it in — and we take it, because a ridden-roads map that is 95% true is worth nothing. Avoid-visited routing is built directly on this data, and a map that lies would route you away from roads you have never seen.

What you see

The map itself is deliberately simple. Two states:

  • Grey — road you have not ridden.
  • Orange — road you have ridden, GPS-confirmed.

No gradients, no partial credit, no “you did 80% of this road”. Riders read a two-colour map instantly at a glance, and every extra state added to it makes it slower to understand.

The first time most riders look at this after a season, the reaction is the same. There is a small, dense orange web around home and their two favourite roads, and an enormous field of grey around it, full of roads they have driven past for years.

That reaction is the product. Everything else — the routing, the Surprise Me button, the avoidance — exists to turn that grey orange.

Practical notes

Recording quality matters more than anything. The map is only as good as the trace. Our ride recording guide covers screen lock, battery and the settings that produce a clean log.

Stopping for coffee is handled. A stationary phone jitters, producing a cloud of points that would otherwise inflate your distance and smear across nearby roads. Stationary jitter is filtered before matching.

Pillion, car, and being a passenger. The app records what the phone did. If you drove the road in a car, the phone was still there. Whether that counts as ridden is a philosophical question we resolve in the rider’s favour: it is your map, and you know what you did. Attribute the ride to the right vehicle in your garage and the distinction stays visible.

Nothing here is public. Your ridden-roads map is yours. It is not a leaderboard, it is not shared, and it is not visible to anyone else unless you deliberately share a specific ride.

Questions riders ask

What is map-matching?

Map-matching takes a sequence of noisy GPS positions and works out which actual roads you travelled along. Instead of a wobbly line floating near the road, you get a definite answer: this road, then this one, then this one.

How accurate does my GPS need to be?

Consumer phone GPS, roughly 5 to 15 metres in the open, is plenty. Map-matching is designed for exactly this level of noise. Dense forest, deep valleys and tunnels degrade it, which is when gaps appear — and gaps are reported honestly rather than filled in as ridden.

What happens if my phone dies mid-ride?

Points recorded before the failure are already saved and will be map-matched normally. The missing section is a gap. It can be drawn in from your planned route so the trip line looks continuous, but it is marked as assumed and never counts as a road you have ridden.

Does riding the same road twice change anything?

The road stays ridden — the map records that you have done it, not how many times. What changes is that avoid-visited routing will keep steering you away from it in favour of roads still marked grey.

Free, no subscription

Plan the curvy bits. Record the ride.
Watch your map fill in.

Motoridez is free on iOS and Android — curvy routing, turn-by-turn voice navigation, ride recording and your ridden-roads map, with nothing behind a paywall.

Plan a ride App Store Google Play