A good enough Google Places API alternative.

Search 39 million places from open Overture data. $19 a month covers 100,000 searches; the same volume runs four figures on Google. We stop at your cap, not your invoice.

  • 10,000 searches a month, free
  • One GET request, JSON back
  • Your own place layers on top
Open data from the Overture Maps Foundation
  • Amazon
  • Meta
  • Microsoft
  • TomTom
39Mplaces
18markets
1GET endpoint
MonthlyOverture refresh

One endpoint. One key. One curl away.

The whole product is a single GET against /v1/places. Send a query, a lat/lon, and an optional radius. Get back the places worth showing.

api.goodenoughmaps.com ● 41 ms
1curl -G "https://api.goodenoughmaps.com/v1/places" \
2  --data-urlencode "q=coffee" \
3  --data-urlencode "lat=40.7128" \
4  --data-urlencode "lon=-74.0060" \
5  -H "Authorization: Bearer $GOOD_ENOUGH_MAPS_API_KEY"

Open data, not a black box.

Built on Overture Places, refreshed monthly. The dataset is open and the schema is published, so your base layer is not locked inside a proprietary place index.

Pricing you can model.

Free 10,000 calls a month. Then $19 for 100,000 or $99 for 1 million. Every plan has a hard cap, so the bill never surprises you.

One HTTP call, no SDK.

A single GET, a bearer token, JSON back. No client library to keep updated, no map tiles to load, no widget to style.

Built for “what's near this point”.

Every request is a query, a coordinate, and a radius up to 50 miles. If your product asks that question, this API answers it.

Not for

Address autocomplete, street-address geocoding, map tiles, or global unscoped search. If you need those, we're the wrong API — that's the deal with “good enough.”

Anyone can host Overture.
The layers are yours.

The base data is open — that's the point. What you build on top is the part nobody can copy: your corrections, your suppressions, and your private places, merged into every search your keys make.

  • Corrections fix the base where it's wrong for your product.
  • Suppressions hide the place that closed last spring.
  • Private records exist only for your account's keys.
  • Presets pin a layer mix to an API key — no query changes.
See how layers work

Take it for a spin.

Type a query, pick a city, and watch the live API answer. Same endpoint, same JSON you'd get in production — no signup, no key.

Live results from the Overture dataset.
  1. Search to see live places.

You don't need the whole platform.

Full maps platforms are right when you need the whole stack. Good Enough Maps is narrower: hosted Overture Places search, predictable quotas, and account-owned layers.

Looking at migration economics? Read the comparisons: Google Places, Foursquare, Geoapify, LocationIQ, and HERE.

Good Enough Maps Google Places Self-hosted Overture
Billing Flat plan, hard cap See current Google Maps Platform pricing Your cloud, storage, and search infrastructure
Scope Server-side place search Broad maps platform Whatever you build and operate
Integration One GET, a bearer token Google APIs and SDKs Ingestion, indexing, search, and serving
Data Overture-backed, published schema Proprietary place index Raw Overture releases
Custom layers Built into the API model Owned outside the Places API Build the merge and precedence rules yourself
To start 10,000 calls free, no card Google Cloud project and billing setup Data pipeline and serving infrastructure

Flat plans. No overages.

Pick a tier. We stop at the cap, not your invoice.

Free
$0/mo
  • 10,000 calls per month
  • 120 requests per minute
  • All 18 markets
  • No credit card
Start for free
Pro
$99/mo
  • 1,000,000 calls per month
  • 120 requests per minute
  • Priority support
  • Hard cap. Never an overage charge.
Choose Pro
Scale
Custom
  • More than 1 million calls
  • Higher throughput
  • SLA and support options
  • Hard cap. Never an overage charge.
Start with Pro

Questions, before you sign up.

What happens when I hit my cap?

The API returns a 402 and stops serving until your monthly reset. There's no overage tier and no surprise charge. You upgrade when you're ready, not because a bill forced you to.

How does the 1 million call price compare?

Do the arithmetic. Google's Places text-search SKUs run on the order of $17–$35 per 1,000 calls, so 100,000 searches a month lands in the four figures before credits. Starter is $19 flat for that volume, and Pro is $99 for 1 million with a hard cap. Verify against current Google Maps Platform pricing before procurement — the gap survives the fine print. The other difference is shape: we're narrower, Overture-backed, and built for predictable backend search.

Can I use it for address autocomplete or geocoding?

No, and we'd rather tell you now than after you've integrated. Every search needs a lat/lon and a radius up to 50 miles — it's proximity search, “what's near this point.” If you need an address-form autocomplete or a street-address geocoder, use a geocoding service. If you need places near a coordinate, you're in the right place.

Which places are covered?

39 million places across 18 selected countries and territories: the US, Canada, and Mexico; the UK, Ireland, Germany, France, Italy, and Spain; Japan, South Korea, Singapore, and Malaysia; and the Dominican Republic, Costa Rica, Puerto Rico, Jamaica, and the Bahamas. See the current coverage page.

How fresh is the data?

It tracks Overture's monthly releases. When a new release clears our checks, the dataset moves up with it.

Do I need an SDK?

No. It's one authenticated GET to /v1/places with a bearer token, and JSON back. Use fetch, curl, or whatever your stack already has.

Can I use it commercially?

Yes. It's built on open Overture data. See the docs for the attribution details.

From zero to a result in three steps.

No SDK, no dashboard tour. If you can run curl, you're live in about 30 seconds.

  1. 1

    Create a key

    Sign up free and copy your key from the console. No credit card.

  2. 2

    Drop it in your shell

    export GOOD_ENOUGH_MAPS_API_KEY=gem_live_…
  3. 3

    Make the call

    curl -G "https://api.goodenoughmaps.com/v1/places" \
      --data-urlencode "q=coffee" \
      --data-urlencode "lat=40.7128" \
      --data-urlencode "lon=-74.0060" \
      -H "Authorization: Bearer $GOOD_ENOUGH_MAPS_API_KEY"

Get your key in under 30 seconds.

No credit card. You'll never owe more than your plan. One curl away from a real result.

Get your API key