Geocoding · head-to-head
GeoJS vs Nominatim
GeoJS is a free, no-signup IP geolocation lookup that returns country, city, ASN, and timezone data as JSON or JSONP over HTTPS with open CORS. It's built for simple client-side and ChatOps integrations rather than high-volume commercial traffic, and has no paid tier.
Nominatim provides worldwide forward and reverse geocoding built entirely on OpenStreetMap data, needing no API key — only a descriptive User-Agent or Referer header identifying the calling application (the policy states a stock HTTP-library User-Agent will not do). The public instance at nominatim.openstreetmap.org mainly exists to power the search bar on openstreetmap.org and runs on donated servers with very limited capacity: its usage policy caps requests at an absolute maximum of 1 per second, forbids autocomplete-style querying outright, and requires results to be cached on the caller's side. Bulk geocoding is restricted rather than banned — a smaller one-time task is permissible on a single thread and a single machine, with distributed scripts disallowed and anything running longer than a day capped at 4 requests per minute. The policy points larger users first at commercial third-party providers, and the largest at running their own Nominatim instance.
| GeoJS | Nominatim | |
|---|---|---|
| Authentication | None | None |
| Pricing | free | free |
| Formats | JSON, JSONP | JSON, XML, GeoJSON |
| CORS | yes | yes |
| HTTPS | Yes | Yes |
Nominatim supports 3 response formats, while GeoJS offers fewer — pick Nominatim for more integration flexibility.