Nominatim (OpenStreetMap)
Free forward and reverse geocoding from OpenStreetMap data. Rate-limited.
🟢 Online · 102 ms
99.58%
1 req/sec, must set User-Agent, no key
No key required
Free alternatives (live ranking)
- ip-api.com — 🟢 Online · 45 calls/min (HTTP only), no key, no credit card
- IPinfo — 🟢 Online · 50,000 calls/month, no key (token extends limits)
- GeoIP-db — 🟢 Online · Unlimited, no key, no credit card
Compare Nominatim (OpenStreetMap) with…
- Nominatim (OpenStreetMap) vs ip-api.com — 45 calls/min (HTTP only), no key, no credit card
- Nominatim (OpenStreetMap) vs IPinfo — 50,000 calls/month, no key (token extends limits)
- Nominatim (OpenStreetMap) vs GeoIP-db — Unlimited, no key, no credit card
Paid alternatives
- OpenCage Geocoding — from $50/mo
Frequently Asked Questions
Does Nominatim (OpenStreetMap) require an API key?
No, Nominatim (OpenStreetMap) is freely accessible without registration or an API key.
What is Nominatim (OpenStreetMap)'s free tier?
1 req/sec, must set User-Agent, no key
Is Nominatim (OpenStreetMap) currently online?
We check Nominatim (OpenStreetMap) every hour. The current status is shown at the top of this page. You can also see the 30-day uptime history in the chart above.
Implementation notes
When to use Nominatim (OpenStreetMap)
Nominatim is the canonical free geocoder for address-to-coordinates lookups when you need a no-account, no-key service backed by OpenStreetMap data. Its 1 req/sec limit makes it suitable for batch-processing jobs overnight or low-traffic server-side lookups, but unsuitable for real-time user-facing features at scale.
Common pitfalls
- A `User-Agent` header identifying your application is not optional — it is a formal usage requirement. The Nominatim OSM team has blocked IPs sending requests with generic browser agents. The header must contain a valid application name and either a URL or email contact.
- Nominatim's 1 req/sec limit is enforced per IP address. If you are running multiple processes or containers behind a shared egress IP, the combined rate across all processes must stay under 1 req/sec total, not per process.
- Address parsing quality varies significantly by country. German, French, and UK addresses parse with high accuracy. Many African, Southeast Asian, and rural addresses return incomplete or incorrect results because OpenStreetMap coverage is sparser.
- Reverse geocoding at the default zoom level returns an address for the nearest road, not the nearest building. Use `zoom=18` for building-level precision; lower zoom levels return progressively coarser results (city, country, etc.).
Quick start (bash)
curl -H "User-Agent: my-geocoder/1.0 ([email protected])" "https://nominatim.openstreetmap.org/search?q=Eiffel+Tower+Paris&format=json&limit=1" From our monitoring
Nominatim responds in 300-800ms depending on query complexity. Simple city lookups are fast; complex address strings can push toward 1 second. We have observed occasional 503 responses during peak hours (typically 10:00-14:00 UTC) when the OSM servers are under load.
Embed this badge
Add a live status badge to your README, docs, or website.
Markdown
[](https://freeapi.watch/nominatim) HTML
<a href="https://freeapi.watch/nominatim"><img src="https://freeapi-builder.a10ayassine.workers.dev/badge/nominatim.svg" alt="Nominatim (OpenStreetMap) Status"/></a> Further reading
- Geocoding with Nominatim: Why You Must Set a User-Agent — 6 minutes, curl, Python, JavaScript
- Free Geocoding APIs Without an API Key in 2026 — Nominatim, plus the surprising fallback options when OSM rate-limits you. Real numbers.
- 15 Free APIs Perfect for Hackathon Projects — Tested, no-key-required where possible, working in 2026. Pick from this list and start coding in minutes.
- Building a Weather App in 2026? Here's the Free API Stack I'd Use — Open-Meteo for forecasts, Nominatim for location lookup, Open-Meteo Air Quality for pollution data. Code snippets and gotchas included.