Geocoding API

Forward, reverse, structured, autocomplete and batch geocoding on OpenStreetMap data.

How it works

1

Send an address

Pass any string — street, city, or freeform text.

2

Plaza geocodes it

Parsed with libpostal, then matched against OpenStreetMap addresses and places.

3

Get coordinates

A GeoJSON point with a confidence score and the address parts.

See it in action

An example request and its response, drawn on the map.

terminal
$

Who uses this

Teams building with Geocoding API.

Delivery routing

Convert customer addresses to coordinates for last-mile dispatch.

Real estate search

Let users search by address and see listings on a map.

AI agents

Give your agent location awareness with structured geo responses.

5

Endpoints

1,000

Addresses per batch

1

Request per address

What you can build

Example apps powered by Geocoding API.

Store Locator

Geocode input, find nearest stores, show directions.

Geocoding Search Directions

Address Verification

Validate and normalize shipping addresses at checkout.

Geocoding Autocomplete

Coverage Checker

Check if an address falls within a service area.

Geocoding Isochrone

Start building

curl -X POST "https://plaza.fyi/api/v1/geocode" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"q": "1600 Pennsylvania Ave, Washington DC"
}'
View endpoints
Method Path Description
POST /api/v1/geocode Forward geocode an address to coordinates
POST /api/v1/geocode/reverse Reverse geocode coordinates to an address
POST /api/v1/geocode/autocomplete Autocomplete address suggestions as you type
POST /api/v1/geocode/batch Geocode up to 1,000 addresses in a single request
POST /api/v1/geocode/structured Geocode an address split into street, locality, region and postcode

How it compares

Google: $5/1K requests
Plaza: from $0.50/1K
Mapbox: $0.75/1K requests
Plaza: from $0.50/1K
Nominatim public server: 1 req/sec, no heavy use
Plaza: up to 2K/min on Pro, 10K/min on Enterprise

Common questions

Can I cache geocoding results?

Yes. Unlike Google Maps (which prohibits caching in their ToS), Plaza data is ODbL licensed. Cache indefinitely, store in your own database, redistribute with attribution.

How does batch geocoding work?

POST up to 1,000 addresses to /api/v1/geocode/batch and get coordinates for all of them back in one response. Each address counts as one request toward your plan, so a batch of 500 is 500 requests. The batch is a single call against your per-minute rate limit.