Geofence: knowing you arrived without you saying so
A check-in is the silliest piece of friction in software. Always-on GPS is surveillance. In between lives the geofence with a dwell window.
A check-in is the silliest piece of friction in software. The user is already there — you can literally see their car. Asking them to confirm means you haven’t looked at their GPS.
The context
Trip mode needs to know when a destination has been visited. If it doesn’t know, it can’t advance the day’s card. If it doesn’t advance, the main screen stays stuck on destination 1 while you’re already eating lunch at destination 2.
The obvious option is a “mark as visited” button. The obvious option works… until you forget. If you forget, the route looks broken. If the route looks broken, you stop using the app two hours in.
The other obvious option is always-on GPS — continuous tracking. It works, but then the app knows where you are every minute, also when you’re asleep, also three days after the trip if you forget to stop it. No.
The decision
Geofence with a dwell window:
- Around each planned destination, a virtual ring of ~150–300 m radius.
- The phone’s browser listens to enter/leave events (Geolocation API + visibility hint), not positions every second.
- On entering and staying more than 5 minutes, the
destination is marked
visited. - If you leave before 5 minutes, it isn’t — that was a roundabout, not an arrival.
Why 5 minutes and not instant. A random roundabout inside your radius behaves like an instant entry. If you fire “visited” on entry, you mark false destinations. The dwell threshold is the cheapest filter: if you’ve been there 5 minutes, you probably stopped for real. If it was a roundabout, you’re no longer there.
What it’s not
To be explicit:
- Not continuous tracking. We don’t log your position every minute; only boundary events (enter/leave) on points you have already marked as destinations.
- Not real-time navigation. The app doesn’t tell you “turn right”. Waze and Google Maps exist for that.
- Not always-on. When trip mode closes, the geofence listeners are destroyed. No background tracking between trips.
What’s next
Next post: how the leap from “POIs and a route” to useful data on the map happens — fuel prices, open/closed status, restrictions. The difference between a pretty map and a map that saves you money.