Blog

Google Places API alternative for analytics: TravelTime Data API

Product and APIGoogleComparisonPricing
rebecca payton

rebecca payton

Contents

If you are using Google Places to power a search box — a user types, you show results with photos and reviews — Google is hard to beat. This piece will not tell you otherwise.

But if you are using it to do analysis, count amenities around thousands of locations, score catchments or locations, enrich a listings database, the TravelTime Data API is built for that job.

Most teams looking for a Google Places alternative are not unhappy with the data. They are unhappy with what they are allowed to do with it, and with a bill that grows with every page view or query.

This presents a significant challenge: how do you maintain access to a high-quality dataset, while improving your rights to the data, without skyrocketing costs?

Why teams look for an alternative

Google cost model changed and got harder to forecast

In March 2025, Google replaced the flat $200 monthly credit with per-SKU free caps — 10,000 calls a month for Essentials SKUs, 5,000 for Pro, 1,000 for Enterprise. And reorganised pricing into Essentials, Pro and Enterprise tiers.

A single feature often touches several SKUs at once, so the bill is no longer a number you can estimate from a request count. The original Places API also moved to Legacy status.

You cannot store what you fetch

Google's terms restrict caching and storing place content, so an application that needs the same data repeatedly has to keep asking for it. Every catchment you re-score, every nightly report, every new search, every model retraining run is a fresh set of billable calls for data that has not changed.

You are tied to Google's map

Place data from Google is intended for display on Google's maps, which constrains what you can render it on and where else it can go.

There is no confidence signal

You get a place or you don't. There is no field telling you how many independent sources confirm it, which means you cannot set a precision bar. You either trust everything Google tells you or you build your own filtering on top.

Aggregation is not the shape of the API

Places APIs return lists of places near a point. Analytical work needs counts per area, joined to population and boundaries. Doing that through a search endpoint means thousands of calls and a spatial join you write yourself.

Where Google is still the right answer

Google's places graph includes business-claimed listings, opening hours, photos, ratings and reviews, maintained at a scale.

If your product is a consumer search box where a user types a restaurant name and expects the phone number and last week's reviews, Google has more places and richer content, and it may be best to optimise your Google usage rather than replace it. Use session-based autocomplete billing, request only the fields you need, and keep the SKU tier down.

The TravelTime Data API does not carry opening hours, phone numbers or reviews, and does not try to. It is a places and context layer, not a business-information service. Read more on our data here.

What the TravelTime Data API does differently

TravelTime Data API is built for you. We don't think you should have to ask permission to keep what you've fetched or pay every time you want to run your analysis again. So, we built the opposite. Your data is yours to store, join and build on.

You can use TravelTime Data API for free, with <10,000 requests for Geocoding, Map Tiles, POIs, Environmental Data, Demographic Data on our Basic plan. Totally free, no commitment.

You can store it, join it and aggregate it

The licence is built for that, because that is the point. Fetch once, hold it, run whatever you like against it. This alone changes the cost shape of analytical work — you are not paying per re-read of data that has not changed.

Every record carries a confidence signal

Places are consolidated from Foursquare Open Places, OpenStreetMap and Overture, and each record reports how many independent sources confirmed it.

You can require one, two or three sources depending on your use case.

Government registers override the open data

Where an authoritative register exists for a category, it wins and the record says so. For regulated categories this is a stronger provenance claim than any commercial places graph makes.

Multiple layers on one index

Points of interest, public transport, land cover, population, environmental, and administrative areas are all addressable by coordinates, H3 cell or geohash. The counts you get from one layer join directly to the others, with no spatial join in the middle.

See the coverage here.

Travel time composition

TravelTime's Isochrone API returns catchments as H3 cells, and the Data API takes H3 cells. Generate the area reachable in 30 minutes by public transport, take its cells, and ask each layer what is inside.

That is the query most teams actually want and cannot build from a radius.

Getting started

TravelTime Data API is currently in beta. To get access, sign up here.

Once you're set up, you'll get an API key and can run queries against real data in your own markets.

If you haven’t already, sign up for the TravelTime API to access our other endpoints, including H3, Isochrone, and Matrices. These are designed to work with the Data API.

Let us know how you get on!

Frequently asked questions

Is TravelTime a drop-in replacement for Google Places?

No. There is no autocomplete, and no opening hours, photos or reviews. It replaces Google Places for analytical work rather than for interactive search with rich content.

Does TravelTime have as many places as Google?

No. Google's graph includes business-claimed listings that no open-data consolidation matches. What you get in exchange is data you can store, filter by confidence, trace to a source, and join to population, transport and boundaries.

Can I store and cache the data?

Yes. It is built to be stored, joined and aggregated. Record identifiers are scoped to a dataset snapshot, so re-resolve them when a country is rebuilt.

Can I use TravelTime with a non-Google map?

Yes. There is no rendering restriction tying the data to a particular map provider.

Which countries are covered?

127 countries are covered by the Data API. Not all countries have the same level of coverage, for example, some countries do not have environmental data. See the breakdown here.

Can I combine it with travel time?

Yes, and it is the main reason to choose it. Isochrone catchments come back as H3 cells and every data layer accepts H3 cells.

Product and APIGoogleComparisonPricing
rebecca payton

rebecca payton

Contents