Dead mileage — every kilometre a car drives without a paying passenger — is the quietest line item on your P&L and one of the most expensive. Across the 80+ fleets we have migrated, dead mileage routinely sits between 30% and 45% of total distance driven. Cut it by a fifth and you have effectively given every driver a raise and every owner a margin bump, without raising a single fare.
This is the exact 90-day sequence we run with operators. None of it requires new vehicles or more drivers — only tighter dispatch logic, a few configuration changes, and getting your drivers to trust the system enough to stop free-lancing their own routes.
First, measure the right thing
Most operators track utilisation as a vague percentage and stop there. To actually move the number you need to separate the two kinds of empty distance, because they have completely different fixes:
- Approach mileage — the distance from where a driver finishes a job to where the next pickup starts. This is a dispatch-assignment problem.
- Return/idle mileage — drivers drifting back to a favourite rank or home zone between jobs. This is a behaviour and zoning problem.
Instrument both for two weeks before you change anything. You cannot prove a 23% reduction to a sceptical owner if you never had a clean baseline.
Fix the dispatch assignment first
The single biggest lever is how the next job gets assigned. A nearest-car-wins rule sounds efficient but it ignores the job a driver is already finishing and where it ends. Switching to forward-looking assignment — scoring candidates on the distance from their drop-off point rather than their current GPS ping — typically removes 8 to 12 percentage points of approach mileage on its own.
- Score assignments on projected end-of-trip location, not live position, when a driver is within a few minutes of completing.
- Enable chaining: let the engine pre-commit a driver to a pickup near their drop-off before they go idle.
- Cap the maximum approach distance per zone so the system never sends a car 9 km for a 3 km fare.
Dead mileage is not a driver problem or a demand problem — it is a decision-latency problem. Every job assigned one minute later, or one car further away than it needed to be, is empty distance you are paying for.
Reshape your zones and idle behaviour
Drivers gravitate to where they feel work appears — usually a rank or a town centre. If your zone map rewards that drift, you get convoys of empty cars heading the same direction. Redraw zones around real demand heatmaps, then use soft positioning nudges (not punitive ones) to spread idle cars across the gaps. The goal is that wherever the next booking lands, a car is already nearby.
Bring the drivers with you
Every configuration win evaporates if drivers reject jobs they think are unprofitable and chase their own hunches. Show them the wallet impact directly: when a driver can see that accepting the chained job earned them more per hour than driving back to the rank, the behaviour fixes itself. Transparency does more for utilisation than any dispatch rule.
The 90-day cadence
- Weeks 1–2: baseline both mileage types, no changes.
- Weeks 3–6: switch to forward-looking assignment + chaining, watch approach mileage drop.
- Weeks 7–10: redraw zones, add idle positioning nudges, address return mileage.
- Weeks 11–13: driver-wallet transparency rollout; lock the gains in with weekly utilisation reviews.
Operators who run the full sequence land between 18% and 27% reduction in dead mileage — a recovered 4–6% of monthly revenue that drops almost entirely to the bottom line.
