Esri ArcGIS Geocoding (World Geocoding Service)
"Geocoding and search help you convert your addresses and place-names into coordinates and display them on a map" with "accurate and reliable search results for addresses, landmarks, and much more from all over the world." [1]
Esri's World Geocoding Service converts addresses and place names to coordinates (and back) across 149 countries, with street-level precision for 50+ nations including the US, UK, Canada, and Germany. Pricing is usage-based at $0.50 per 1,000 geocodes, with 20,000 free non-stored geocodes per month; storing results raises the rate to $4 per 1,000 and requires passing a forStorage flag. The REST API supports API key and OAuth 2 authentication with JavaScript and Python SDKs, and the service holds SOC 2 Type 2, ISO 27001, HIPAA, and GDPR certifications, though HIPAA-eligible use is limited to US addresses only.
Best for / Avoid if
Best for: Prototypes and side projects - free to start, no sales call; Cost-sensitive teams - low, transparent entry price
Scores
- 30 / 100Agent friendliness
- 100 / 100Pricing transparency
- 80 / 100Setup speed
- 35 / 100Docs quality
- 100 / 100Procurement ease
- 90 / 100Trust readiness
Pricing & procurement
- Pricing model
- Usage-based [2]
- Published pricing
- ✓ Yes [3]
- Free tier
- ✓ Yes [4]
- Free tier details
- 20,000 non-stored geocodes per month free on ArcGIS Location Platform, then $0.50 per 1,000. Stored geocoding has no free allowance ($4 per 1,000). The /suggest (autosuggest) endpoint is always free with no cap. [5]
- Self-serve signup
- ✓ Yes [6]
- Requires sales call
- ✗ No
- Enterprise plan
- – Unknown
| Plan | Item | Per | Amount | Source |
|---|---|---|---|---|
| ArcGIS Location Platform (Pay-as-you-go) | Geocodes (not stored) — first 20,000 per month free | first 20,000 geocodes/month | $0 | source |
| ArcGIS Location Platform (Pay-as-you-go) | Geocodes (not stored) — overage beyond free 20K (findAddressCandidates, reverseGeocode with temporary results) | 1,000 geocodes | $0.5 | source |
| ArcGIS Location Platform (Pay-as-you-go) | Geocodes (stored) — forStorage=true results persisted to database/file (findAddressCandidates, reverseGeocode) | 1,000 geocodes | $4 | source |
| ArcGIS Location Platform (Pay-as-you-go) | Batch geocodes (stored) — geocodeAddresses / BatchGeocode with stored results | 1,000 geocodes | $4 | source |
| ArcGIS Location Platform (Pay-as-you-go) | Autosuggest / suggest requests — always free, no cap | request | $0 | source |
| ArcGIS Online (credit-based subscription) | Stored geocoding via World Geocoding Service (geocodeAddresses, publish spreadsheet as hosted feature layer) | 40 credits per 1,000 geocodes (credit USD value not published on geocoding pricing page) | - | source |
Capabilities
- Supported actions
- findAddressCandidates, reverseGeocode, geocodeAddresses, suggest, BatchGeocode [7]
- Regions
- Global - street-level address data for 149 countries covering more than 90% of the world's population; Level 1 (highest quality) for 50+ countries including USA, Canada, UK, Germany, France, Australia, Japan; Level 2 for ~40 countries; Level 3 for ~65 countries; Level 4 (populated places only) for remaining countries [8]
- Languages
- Multiple languages and local alphabets supported per country via langCode parameter; supports Latin and non-Latin characters, translation and transliteration; special transliteration for Chinese (Pinyin), Korean, Arabic, and Russian; language availability varies by country
- Input types
- free-form address text (SingleLine), structured/multi-field address, lat/lon coordinates (for reverse geocoding), incomplete text (for autosuggest), CSV file (for BatchGeocode), place name, POI name
- Output types
- JSON, PJSON
- Webhooks
- ✗ No [9]
- Sandbox / test mode
- ✗ No [10]
- SDK languages
- JavaScript, Python [11]
- MCP server
- ✗ No [12]
Trust & compliance
- SOC 2
- SOC 2 Type II [13]
- HIPAA
- ✓ Yes [14]
- GDPR
- ✓ Yes [15]
- ISO 27001
- ✓ Yes [16]
- PCI DSS
- – Unknown [17]
- Published SLA
- ✓ Yes [18]
- Known restrictions
- Applications are contractually prohibited from storing geocoding results unless they pass forStorage=true and a valid token - stored results incur higher pricing ($4/1,000 vs $0.50/1,000), Do not include Personally Identifiable Information (PII) such as names, phone numbers, email addresses, bank account or credit card numbers, or social security numbers in any requests to the World Geocoding Service, BatchGeocode does not support South Korea address geocoding, HIPAA-eligible geocoding restricted to United States-based addresses only; no API-key calls allowed (only app logins or user accounts), Attribution required: applications using ArcGIS APIs, SDKs, services, or content must display Esri and data attribution, Canadian postal code data requires specific attribution to Canada Post Corporation, SOC 2 certification is scoped to select internal Esri systems only and does NOT cover products, their operation, or customer datasets, ISO 27001 certification covers ArcGIS Location Platform for EU regional hosting only; APAC hosting is not yet covered, findAddressCandidates returns a maximum of 50 candidates per request; SingleLine input is capped at 200 characters, If usage exceeds the free tier and pay-as-you-go is not enabled, the service is disabled until the next monthly billing cycle [19]
Developer surface
Integration
- API style
- rest
- Base URL
- https://geocode-api.arcgis.com/arcgis/rest/services/World/GeocodeServer
- Versioning
- none
- Stability
- ga
- Auth methods
- api_key, oauth2
- Error format
- vendor-specific JSON: {"error": {"code": <int>, "message": "<string>", "details": []}}
Other Geocoding APIs
Geocodio
"The delightfully boring geocoder"
Melissa
Global data quality and enhancement solutions to profile, verify, clean, update, match, and integrate People data.
Azure Maps (Search / Geocoding)
"Azure Maps is a set of mapping and geospatial services that enable developers and organizations to build intelligent location-based experiences for applications across many different industries and use cases. Use the Azure Maps REST APIs and Web SDK to bring maps, geocoding, location search, routing, real-time traffic, geolocation, time zone information, and weather data into your web and mobile solutions."
LocationIQ
"Affordable Google Maps alternative for your website or app"
Google Geocoding API
"The Geocoding API is a service that accepts a place as an address, latitude and longitude coordinates, or Place ID. It converts the address into latitude and longitude coordinates and a Place ID, or converts latitude and longitude coordinates or a Place ID into an address."
Radar Geocoding API
"Use Radar's geocoding APIs to convert addresses to latitude and longitude coordinates, or vice versa."
References
- ↑Description: esri.com
- ↑Pricing model: location.arcgis.com · location.arcgis.com
- ↑Published pricing: location.arcgis.com
- ↑Free tier: location.arcgis.com · location.arcgis.com
- ↑Free tier details: location.arcgis.com · location.arcgis.com
- ↑Self-serve signup: location.arcgis.com
- ↑Supported actions: developers.arcgis.com · developers.arcgis.com
- ↑Regions: esri.com
- ↑Webhooks: developers.arcgis.com
- ↑Sandbox: location.arcgis.com
- ↑SDK languages: developers.arcgis.com · developers.arcgis.com
- ↑MCP server: github.com
- ↑SOC 2: trust.arcgis.com
- ↑HIPAA: trust.arcgis.com
- ↑GDPR: trust.arcgis.com
- ↑ISO 27001: trust.arcgis.com
- ↑PCI DSS: trust.arcgis.com
- ↑Published SLA: trust.arcgis.com
- ↑Known restrictions: developers.arcgis.com · trust.arcgis.com · trust.arcgis.com
Change history
- 2026-06-15 Score Agent Friendliness: 10 → 30
- 2026-06-15 Score Docs Quality: 15 → 35
- 2026-06-14 Robots Allows Agents: (none) → Yes
- 2026-06-14 API Reference URL: (none) → https://enterprise.arcgis.com/en/geoevent/latest/reference/getting-started-with…
- 2026-06-14 Has Structured Data: (none) → Yes
- 2026-06-14 Capabilities: {} → {"batch":true,"forward":true,"reverse":true,"autocomplete":true}
- 2026-06-14 Summary Md: (none) → Esri's World Geocoding Service converts addresses and place names to coordinate…
- 2026-06-14 Score Docs Quality: 0 → 15
- 2026-06-14 Rendering: (none) → static
- 2026-06-14 Llms Txt Present: (none) → No
- 2026-06-14 Docs URL: (none) → https://developers.arcgis.com/documentation
- 2026-06-14 Score Agent Friendliness: (none) → 10
- 2026-06-14 Scoring Methodology: (none) → Scores are computed deterministically from this profile's published, sourced fi…
- 2026-06-14 Best For: (none) → Prototypes and side projects - free to start, no sales call, Cost-sensitive tea…
- 2026-06-14 Score Trust Readiness: (none) → 90
- 2026-06-14 Score Procurement Friction: (none) → 100
- 2026-06-14 Score Docs Quality: (none) → 0
- 2026-06-14 Score Setup Speed: (none) → 80
- 2026-06-14 Score Pricing Transparency: (none) → 100
- 2026-06-14 Free Tier Details: set to 20,000 non-stored geocodes per month free on ArcGIS Location Platform, then $0.…
- 2026-06-14 Self Serve Signup: set to Yes
- 2026-06-14 Requires Sales Call: set to No
- 2026-06-14 SOC 2: set to type_2
- 2026-06-14 HIPAA: set to Yes
- 2026-06-14 GDPR: set to Yes
- 2026-06-14 ISO 27001: set to Yes
- 2026-06-14 SLA Published: set to Yes
- 2026-06-14 SLA URL: set to https://www.esri.com/content/dam/esrisites/en-us/media/legal/referenced-files/s…
- 2026-06-14 Data Retention Policy URL: set to https://www.esri.com/en-us/privacy/privacy-statements/privacy-supplement
- 2026-06-14 Known Restrictions: set to Applications are contractually prohibited from storing geocoding results unless…
- 2026-06-14 Auth Methods: set to api_key, oauth2
- 2026-06-14 Auth Docs URL: set to https://developers.arcgis.com/documentation/security-and-authentication/
- 2026-06-14 API Style: set to rest
- 2026-06-14 Base URL: set to https://geocode-api.arcgis.com/arcgis/rest/services/World/GeocodeServer
- 2026-06-14 Versioning Scheme: set to none
- 2026-06-14 Stability: set to ga
- 2026-06-14 Quickstart URL: set to https://developers.arcgis.com/arcgis-rest-js/get-started/
- 2026-06-14 Error Format: set to vendor-specific JSON: {"error": {"code": <int>, "message": "<string>", "details…
- 2026-06-14 Requires Verification: set to No
- 2026-06-14 Starting Price Usd: set to 0.5
- 2026-06-14 Price Basis: set to 1,000 geocodes
- 2026-06-14 Slug: set to arcgis-geocoding
- 2026-06-14 Notable Customers: set to (none)
- 2026-06-14 Fields Not Found: set to documented_rate_limits, pci_dss, enterprise_plan_available, minimum_commitment,…
- 2026-06-14 Source Confidence: set to high
- 2026-06-14 Extractor: set to claude-subagent:sonnet
- 2026-06-14 Last Verified At: set to 2026-06-14T00:00:00.000Z
- 2026-06-14 Status: set to published
- 2026-06-14 Free Tier Limit: set to 20,000 non-stored geocodes/month
- 2026-06-14 Name: set to Esri ArcGIS Geocoding (World Geocoding Service)
Suggest an edit / leave a review
Leave a review or comment
curl -X POST https://apio.sh/api/feedback/arcgis-geocoding \
-H 'Content-Type: application/json' \
-d '{"kind":"review","rating":5,"body":"Your experience with this API…"}'Suggest a correction to a field (cite a source)
curl -X POST https://apio.sh/api/suggest/arcgis-geocoding/FIELD \
-H 'Content-Type: application/json' \
-d '{"value":"corrected value","citations":[{"url":"https://source.example/page","excerpt":"supporting quote"}],"note":"what changed and why"}'