Every 10 seconds, the Konvoyage server takes the latest position and speed of each connected member of a trip, along with how far each one still has to go, and runs them through a short set of checks that ask whether the group is still traveling together. That loop is what people mean (or should mean) by convoy intelligence, and it is far less mysterious than the phrase suggests. Before I looked at how it works, I assumed a shared map full of dots already did the job, because I had watched those dots on plenty of trips and never once felt lost.
My thinking about this started with a Radiolab episode about ant colonies. No individual ant has a map of the colony’s goals or a sense of the larger pattern. Each one reacts to what its nearest neighbors are doing and to the chemical trails they leave behind, and from those local signals the colony forages and builds as a group without any single ant seeing the plan. What caught my attention was that the trail matters more than the position. An ant that somehow knew where every other ant was standing, but had no trail to follow, would be stuck wondering what any of it meant.
That idea kept resurfacing whenever I thought about why groups running location-sharing apps still manage to lose each other on a highway.
Seeing Every Dot and Missing the Split
A road trip to Big Bend convinced me. Our cars all had a location-sharing app running, and every phone showed every other phone, which felt like complete coverage with no blind spots at all.
By mid-afternoon half the group had fallen far behind, and nobody in the lead cars noticed, because the trailing dots were moving along the same highway as ours. Our brains read “roughly the same direction” as “everything is fine.” My friend Marcus, riding in one of the trailing cars, put it well afterward: “I could see your dot the whole time, I just assumed you’d slow down.”
He had watched our dot pull away and treated it as our problem, while we watched his and assumed it was close enough. Nobody was comparing distances, and the app had no way of saying anything on its own, so the gap kept growing until we pulled into a gas station, counted cars, and realized we were going to be sitting there a while. I remember being more annoyed at myself than at anyone else, since I was the one in our car holding the phone, and I had checked it maybe twice since lunch.
Most location-sharing tools blur the difference between having the data and knowing what it means. A map of positions is raw data, and turning it into “the last car is drifting” means someone has to compare those positions over time, which a driver can’t do safely and a passenger tends to forget about after the first stretch of highway.
What the Server Actually Checks
When I went looking at what Konvoyage really computes, I expected something elaborate, and what I found was a handful of plain rules with sensible exceptions.
The gap check is the one that would have saved our Big Bend afternoon, and it only runs when the trip has a destination set. Behind the scenes, the server ranks everyone by how much distance they have left, takes the person closest to arriving and the person furthest from it, and measures how far apart those two are. Once that passes 10 km, everyone in the trip gets an alert saying the trailing driver “is falling behind,” with the size of the gap shown in km or miles, whichever you picked in settings. If it keeps widening, the alert comes again at the next step up, and past 50 km the wording changes to “may have separated” while the bar on screen turns red. A car parked at a gas station doesn’t set it off, because the check skips anyone who isn’t moving.
Why the gap is a straight line
The distance between the leader and the tail is measured as a straight line on the globe, not along the road. My first reaction was that this seemed lazy, since two cars on opposite sides of a mountain switchback can be close on the map and a long way apart in driving time. The comment in the code explains why: road distance needs a call to a routing service every time you check, which costs money and can come back late, and it also raises false alarms when two cars take different but equally good routes to the same place (their road distances pull apart even though nobody is lost). A straight line always reads shorter than the real drive, so it leans toward staying quiet, and the thresholds are set generously to make up for that. On twisty canyon roads I’d still prefer road distance, but on an interstate the difference barely matters.
Stops get their own check, separate from the gap. If one member sits below walking pace for 90 seconds while others are still driving, the group sees “has stopped,” and later “is moving again” once that car picks up speed, while a whole group waiting at the same red light or rest area produces no alert at all.
The off-route check is my favorite, and it doesn’t look at compass heading the way I’d assumed. It watches each moving member’s remaining distance to the destination, and if that number keeps going up for about a minute, the driver is probably heading away from where everyone else is going, so the trip gets “may be off route” next to their name. Once the distance starts shrinking again, a second message says they’re “back on route.” What I like most is the exception: if most of the group shows a climbing distance at the same moment, the server assumes everyone took the detour together (a closed road, a scenic loop somebody insisted on) and stays silent. It can’t tell a planned gas exit from a missed turn, so a quick fuel stop off the highway may briefly get flagged. I’d take a false flag at a fuel stop over hearing nothing when someone really has missed the exit.
Lost signal is the obvious weak spot, and the server handles it bluntly. Anyone whose connection has dropped is left out of these checks until they reconnect, because their last speed and position are frozen and would produce nonsense alerts, which means a car sitting in a dead zone can’t trigger a gap warning while it’s out of touch. Patchy cell service makes watching the map by hand even less reliable, since the dot you’re staring at may be several minutes old.
Why Everyone Gets the Alert
We had people in every car on that Big Bend drive, drivers and passengers both, and not one of them said anything about the group splitting, because each of us assumed someone else was keeping an eye on it. Psychologists have a name for this, diffusion of responsibility.
Every convoy alert goes to the whole trip, the person falling behind included. The trailing driver usually knows they’re behind already; the lead drivers are the ones who need to hear that they’re pulling away. When snow starts falling, the lead car’s sense of how spread out the group is shapes its decisions about pace and stopping points, and a name with a distance next to it beats squinting at dots between wiper strokes.
The Split Nobody Mentions
Convoy breakdowns usually happen without anybody saying a word. Nobody texts “we’re falling behind” because the gap grows slowly enough that it never feels worth mentioning, and by the time it does, the two halves are stopping at different gas stations and pulling in at different times. If our phones had shown “Marcus is falling behind” with a distance on it, somebody in our car would have eased off long before that gas station, and Marcus would have known we’d noticed.
Back to the Ants
Ants don’t track coordinates; they react to trail strength, which already carries information about what the colony is doing. A handful of named alerts is a crude version of that, and I don’t think the current checks catch everything (a car crawling up the back of a long canyon road could stay under the straight-line threshold for a long time while falling well behind in driving time).
When your group last lost a car, how long had the gap been growing before anyone up front noticed?