Ask Google Maps to plan a delivery run and it stops you at 10 destinations. Every driver, courier, estate agent and field rep hits this wall eventually, and the standard advice is to split the day into chunks or pay for dedicated routing software. Circuit's free tier gives you 10 stops. RouteXL's gives you 20. MapQuest allows 26.
We route delivery days for a living, so we went looking for the real ceiling instead of the documented one. The result: a single, plain Google Maps link that loads and routes 100 stops. No API key, no extension, no scraping, nothing against any terms, just a longer URL than anyone usually builds. This post shows exactly how we tested it, where the real limits are, and the shortcut that builds these links for you.
- →Google Maps lets you add 10 destinations in the app or on the web. That limit is real, but it only applies to the interactive interface.
- →The documented URL method (the ?api=1 form from Google's own developer docs) raises the ceiling to about 25 stops per link.
- →The undocumented path form, google.com/maps/dir/lat,lng/lat,lng/..., routes 100 stops in one link. We verified it on desktop web, mobile web and the native app.
- →The evidence it isn't silently dropping stops: trip time grows linearly with stop count (50 stops ≈ 11 hr, 100 stops ≈ 20 hr on our test lattice), and the full route renders on the map.
- →Past roughly 25 stops the interface becomes read-only ('Route cannot be modified further') but the route still draws, computes and navigates.
- →Building a 100-coordinate URL by hand is miserable, so we also show the one-formula version from a Google Sheet, and a free tool that does it from a pasted list.
The 10-stop wall (and where it actually lives)
The 10-destination limit is an interface rule, not a routing-engine rule. Google's own help page describes adding up to 9 extra destinations to a route, and the app's plus button greys out after that. Because everyone meets the limit through the interface, everyone assumes it is the engine's ceiling.
The first clue it isn't: Google's developer documentation for Maps URLs (the ?api=1 form used by apps that deep-link into Maps) accepts an origin, a destination and a list of waypoints, and in practice that form carries about 25 stops before it truncates. Better, but still not a real delivery day.
How we tested the real ceiling
There is a second, older URL form that predates the documented API: the path form, where every stop simply becomes a segment of the URL itself: google.com/maps/dir/51.46,-0.22/51.47,-0.21/…. Nothing in Google's documentation says how many segments it accepts, so we measured instead of guessing.
The method: generate a lattice of coordinate points across London so every stop is distinct and routable, build path-form URLs at 25, 26, 28, 30, 40, 50, 60, 80 and 100 stops, open each in a clean browser session (desktop viewport, then an iPhone profile for mobile web), accept the consent screen, and record what renders.
Coordinates rather than addresses matter for the test: an address can geocode ambiguously, which would make a dropped stop indistinguishable from a misread one. A lat,lng pair is exact, so if the route renders through the point, the point was routed.
The findings: 100 stops route, on every surface
Every count we tested rendered a complete route, up to and including 100 stops. The map draws the full zigzag through the lattice, the trip summary computes, and the link navigates like any other directions link.
The proof that Google isn't silently truncating the list: trip duration grows linearly with stop count. Our 50-stop test computed roughly 11 hours of driving; 60 stops came back at 11 hours 24 minutes; 80 stops at 15 hours 12 minutes; 100 stops at 20 hours 1 minute across 226 miles. If the engine were quietly routing only the first 25 stops, those numbers would plateau. They don't.
Mobile behaves the same: mobile web rendered the 100-stop route with a 21-hour trip summary, and the native Google Maps app opened and routed the same link in our hands-on test.
One honest quirk: past about 25 stops the waypoint list becomes read-only and Google shows 'Route cannot be modified further'. You cannot drag or edit stops at that point, but the route itself renders, computes and navigates normally. For a link you hand a driver, read-only is arguably a feature.
26, 30, 40, 50, 60, 80 and 100 stops: all rendered and routed (desktop web)
100 stops on mobile web: routed, 21 hr 10 min trip computed
100 stops in the native app: opens and routes (hands-on test)
Trip time grows linearly with stops, ruling out silent truncation
Past ~25 stops the stop list is read-only but fully navigable
How to build one yourself
The recipe is almost embarrassingly simple: take your stops in the order you want to drive them, convert each to latitude,longitude, and join them with slashes after https://www.google.com/maps/dir/. A 100-stop URL is only about 2,000 characters, well inside what browsers and Google accept.
Two practical rules. First, use coordinates rather than address text once you're past 20 or so stops: address strings make the URL enormous and every one is a chance for Google to geocode somewhere you didn't mean. Second, the path form does not optimise your order; it drives the stops in the sequence you give it, so put them in a sensible visiting order first, otherwise you'll ping-pong across town.
Which is the real catch: hand-converting 100 addresses to coordinates and hand-ordering them is an afternoon of work. That's the part worth automating.
The one-formula version
If your stops live in a Google Sheet (most delivery lists do), one formula does the whole pipeline: =GEOCODE_WORKFLOW(A2:A101) geocodes every address, works out the shortest visiting order, and writes the finished 100-stop link into the sheet. =ROUTE_LINK(A2:A101) does just the link if you already like your order. Both are free formulas in the InstaMaps add-on, and past 25 stops they automatically switch to the coordinate form this research validated.
No spreadsheet handy? Our free 100-Stop Route Planner does the same from a pasted list: paste your stops, get the optimised order and the one link.
Map your Salesforce accounts in under 5 minutes — no admin setup.
Common Questions
No. It is a plain URL that Google's own service accepts and renders, the same mechanism as any shared directions link. There is no scraping, automation or circumvention involved, just more path segments than the interface builds for you.
The 25-waypoint figure belongs to the documented ?api=1 URL form and the Directions API. The path form we tested is a separate, older URL structure that Google supports but does not document a limit for. We measured 100 working; the true ceiling may be higher.
No. The path form drives stops in exactly the order they appear in the URL. Order them first, by hand, with =GEOCODE_WORKFLOW in Sheets, or with the free route planner tool, otherwise the route will criss-cross itself.
Yes. We verified 100 stops on mobile web, and the native Google Maps app opened and routed the same link in a hands-on test. Past about 25 stops the stop list is read-only on all surfaces, but navigation works normally.
We stopped testing at 100 because it comfortably covers a delivery day. If you routinely run more, split the day into legs, one link per run, or tell us, because we would genuinely like to know what you're delivering.
Paste your stops into the free planner: fastest visiting order, one Google Maps link, whole day loaded. Or do it straight from your sheet with =GEOCODE_WORKFLOW(A2:A101).
Open the free 100-Stop Route Planner