Blog
Comparing Mapbox Isochrone API vs TravelTime Isochrone API
Contents
Both Mapbox and TravelTime isochrones return polygons of the area reachable within a travel time from an origin location.
The practical differences are limits and licensing:
- Mapbox caps a polygon at 60 minutes, supports driving, walking and cycling, and requires results to be displayed on a Mapbox map.
- TravelTime delivers polygons up to 4 hours, supports all modes including public transport, supports arrival-time searches, and lets you cache results and render them on any map.
We have also compared the TravelTime Isochrone API to the HERE Isoline API and to the Google Isochrone API. Read the Mapbox Isochrone API docs.
| Mapbox Isochrone API | TravelTime Isochrone API | |
|---|---|---|
| Transport modes | Driving, walking, cycling | Driving, walking, cycling, public transport, plus combined modes (e.g. driving & train) |
| Maximum travel time | 1 hour | 4 hours |
| Arrival-time searches | No | Yes |
| Unions and intersections | No | Yes |
| Response formats | GeoJSON (polygons or linestrings) | GeoJSON, JSON, KML+XML, WKT |
| SDKs | Python, Java, NodeJS, Ruby | Python, Java, NodeJS, Ruby, R |
| Map requirement | Results must be displayed on a Mapbox map | Any map provider; no TravelTime tiles or geocoding required |
| Caching | Restricted | Allowed as standard |
| Pricing model | Per API request | Fixed cost, not per calculation, element, or request |
You can generate both shapes for the same origin in the TravelTime isochrone playground and the Mapbox playground before writing any code. Or get started with a free TravelTime account.
Which transport modes does each isochrone API support?
Mapbox supports driving, walking and cycling.
TravelTime supports driving, walking and cycling - plus public transport and combined modes. So, a single request can model a real bus-and-walk commute rather than just the car journey.
That matters most in cities, where public transport is a realistic travel mode.
Apartments.com, a TravelTime customer, lets renters search for listings within a maximum public transport journey time of their office — a search you cannot build on driving polygons alone.
Apartments.com recently joined Homes.com and Jitty in the release of AI-powered NLP property search. This allows users to use free-text search in a way that suits them — and that includes their transport mode and time budget preferences. Public transit data is therefore a critical part of the stack to return accurate, well-matched results in property and beyond.
Public transport polygons also let end users and businesses weigh lower-carbon options: "where should I rent?" or "where should we open an office?" both change shape when transit is included and environmental data is layered on top.
What is the maximum travel time for a Mapbox isochrone?
The maximum time for a Mapbox isochrone is 60 minutes. Mapbox caps each polygon at an hour and allows up to four polygons per request from a single coordinate.
TravelTime accepts a travel_time of up to 14,400 seconds, or 4 hours.
The gap shows up in large-scale logistics and trade area work. For example, a fulfilment centre in Kansas City asking "where can we deliver within 4 hours?" needs one TravelTime shape; the same question cannot be answered with Mapbox.
Longer shapes are also where per-request billing starts to hurt: stitching multiple 60-minute contours together to approximate a wider catchment multiplies calls.
Can you generate an isochrone by arrival time?
Mapbox isochrones run forward from a departure point whereas TravelTime supports both departure_searches and arrival_searches.
With TravelTime, you can ask, "where can someone live and still arrive here by 09:00?" — the direction most commute, recruitment and school-catchment searches actually need.
TravelTime also returns unions and intersections of shapes in the same response, which is how you answer questions like "where can both of us reach within 30 minutes?" without post-processing polygons yourself.
How detailed are Mapbox and TravelTime isochrone polygons?
TravelTime returns a noticeably more detailed shape at default settings. Both APIs expose granularity controls — Mapbox through generalize and denoise — but the defaults differ significantly.
One-hour driving isochrone in New York
15-minute driving isochrone in New York
Detail affects several elements of your analysis or UX:
Analysis reliability
When an isochrone filters demographic, property or POI data, an over-simplified shape includes and excludes the wrong records.
User trust
When a polygon covers open water, as in the 60-minute Mapbox shape above, users stop believing the rest of the result.
Our accuracy benchmarking tool compares TravelTime, Mapbox, HERE and TomTom drive times against Google across multiple countries, so you can dive into the numbers rather than images.
Why are there disconnected areas in the TravelTime isochrone?
TravelTime only returns an area as reachable if a journey can actually end there.
Roads, bridges and tunnels you can drive along but not stop on are excluded, so a route that runs along one of those and then turns onto a smaller road where stopping is allowed produces a separate reachable pocket.
It better reflects the real-world experiences of travel.
Can you use Mapbox isochrones outside a Mapbox map?
No. Mapbox requires results to be displayed on a Mapbox map using its libraries or SDKs, and caching is restricted. That constraint reaches past the map: it shapes which tiles, SDK and vendor the rest of your front end must use.
TravelTime licensing works the other way. Caching is allowed as standard, there is no requirement to use TravelTime map tiles or geocoding, and your data is never fed back into the system. Polygons go into Leaflet, Google Maps, Esri, Snowflake, a spatial database or a back-end filter with no display obligation attached.
This freedom to build is the difference that influences most migrations. Discover our Mapbox isochrone migration guide.
What if you need travel times per cell, not a polygon?
Mapbox returns a polygon or single-line boundary. That's the only output shape available. If the polygon is going into a spatial join — filtering listings, scoring sites, joining demographics — you need to do that join yourself.
TravelTime's H3 endpoint returns the travel time to each H3 cell within the catchment instead, at resolutions 4 to 12, with min, max and mean per cell. That means you can get journey times to the points within a time boundary.
Because H3 is the same index a lot of warehouse data is already keyed on, the result joins directly to your tables with no polygon geometry step.
We compared the two output shapes in more detail in isochrones vs H3.
How is each isochrone API priced?
Mapbox meters the Isochrone API in API requests, so cost scales with call volume.
TravelTime's pricing model is not per transaction: you calculate as many journey times as you need for one fixed cost, which makes usage-heavy features predictable to budget for.
When is it worth switching from Mapbox to TravelTime?
There are four typical ‘switch signals’ for our customers that moved from Mapbox to TravelTime (or chose TravelTime after considering both).
Four signals, in the order they usually appear:
- You need public transport catchments, not just driving.
- You are hitting the 60-minute ceiling, or chaining calls to get past it.
- You need to search inbound to a location by arrival time.
- Your per-request bill scales faster than the feature it powers, or the Mapbox map requirement is dictating your front end.
If none of those apply, Mapbox is probably still a reasonable fit.
How do you migrate from the Mapbox Isochrone API to TravelTime?
One GET becomes one POST, and the polygon comes back as GeoJSON either way.
A Mapbox request:
GET https://api.mapbox.com/isochrone/v1/mapbox/driving/-73.9857,40.7484
?contours_minutes=15&polygons=true&access_token=YOUR_TOKEN
The TravelTime equivalent, using the Isochrone (Time Map) endpoint:
POST https://api.traveltime.com/v4/time-map
X-Application-Id: YOUR_APP_ID
X-Api-Key: YOUR_API_KEY
{
"departure_searches": [{
"id": "15 min drive",
"coords": { "lat": 40.7484, "lng": -73.9857 },
"departure_time": "2026-09-01T08:00:00Z",
"travel_time": 900,
"transportation": { "type": "driving" }
}]
}
Full parameters are in the TravelTime API documentation, and the Isochrone API page covers what else the endpoint returns. Keys are free to generate at account.traveltime.com.
Frequently asked questions
What is an isochrone API?
A service that returns a polygon of the area reachable from a location within a maximum travel time, calculated on the road or transit network rather than as a radius.
What is the maximum travel time for a Mapbox isochrone?
60 minutes per polygon, with up to four per request. TravelTime supports up to 4 hours.
Does the Mapbox Isochrone API support public transport?
No. It supports driving, walking and cycling. TravelTime adds public transport and combined modes.
Can Mapbox isochrones be displayed on a non-Mapbox map?
No. Mapbox requires results to be shown on a Mapbox map via its libraries or SDKs. TravelTime has no map provider requirement.
Can you cache isochrone results?
TravelTime allows caching as standard. Mapbox restricts it.
What format do the polygons come back in?
Mapbox returns a GeoJSON FeatureCollection, as polygons or linestrings. TravelTime returns GeoJSON, JSON, KML+XML or WKT.
Is there a free Mapbox Isochrone API alternative to test?
Yes — the TravelTime playground runs without an account and app.traveltime.com is our free online tool. TravelTime API keys are free to generate.