Positionstack
"Free, Real-Time Geocoding & Maps API" - built to offer a straightforward and reliable solution for forward and reverse geocoding, covering more than 2 billion places and addresses worldwide. [1]
Positionstack is a REST-based geocoding API covering more than 2 billion places worldwide, supporting forward geocoding, reverse geocoding, batch geocoding, and embeddable maps integration. It is self-serve with a free tier of 100 requests per month restricted to personal, non-commercial use, and paid subscription plans starting at $9.99 per month scaling up to 3 million monthly requests on the Business plan, with an enterprise option available. SDKs are published for seven languages including Python, Node.js, Go, and Java, and the service is GDPR-compliant.
Best for / Avoid if
Best for: Prototypes and side projects - free to start, no sales call; Cost-sensitive teams - low, transparent entry price
Avoid if: You have strict compliance requirements
Scores
- 30 / 100Agent friendliness
- 100 / 100Pricing transparency
- 85 / 100Setup speed
- 15 / 100Docs quality
- 100 / 100Procurement ease
- 15 / 100Trust readiness
Pricing & procurement
- Pricing model
- Subscription [2]
- Published pricing
- ✓ Yes [3]
- Free tier
- ✓ Yes [4]
- Free tier details
- Free plan at $0/month includes 100 requests/month; personal license only; no commercial use; no support included. [5]
- Self-serve signup
- ✓ Yes [6]
- Requires sales call
- ✗ No
- Enterprise plan
- ✓ Yes [7]
| Plan | Item | Per | Amount | Source |
|---|---|---|---|---|
| Free | geocoding requests | month (100 requests included) | $0 | source |
| Basic | 100,000 geocoding requests | month | $9.99 | source |
| Basic (annual) | 100,000 geocoding requests | month | $8.99 | source |
| Basic | overage geocoding request | request | $0.0004 | source |
| Professional | 1,000,000 geocoding requests | month | $49.99 | source |
| Professional (annual) | 1,000,000 geocoding requests | month | $43.99 | source |
| Professional | overage geocoding request | request | $0.0002 | source |
| Business | 3,000,000 geocoding requests | month | $99.99 | source |
| Business (annual) | 3,000,000 geocoding requests | month | $84.99 | source |
| Business | overage geocoding request | request | $0.0001 | source |
| Enterprise | custom volume geocoding requests | month | - | source |
Capabilities
- Supported actions
- forward_geocode, reverse_geocode, batch_geocode [8]
- Regions
- global
- Languages
- multiple languages
- Input types
- free-form address, place name, lat/lon coordinates
- Output types
- JSON, XML, GeoJSON [9]
- Webhooks
- ✗ No [10]
- Sandbox / test mode
- ✗ No [11]
- SDK languages
- PHP, Python, Java, Node.js, Ruby, Go, JavaScript [12]
- MCP server
- ✗ No
Trust & compliance
- SOC 2
- – Unknown [13]
- HIPAA
- – Unknown [14]
- GDPR
- ✓ Yes [15]
- ISO 27001
- – Unknown [16]
- PCI DSS
- – Unknown [17]
- Published SLA
- ✗ No [18]
- Rate limits
- Monthly request quotas per plan (100 free; 100K Basic; 1M Professional; 3M Business); no per-second or per-minute rate documented. Response headers include X-RateLimit-Limit-Day and X-RateLimit-Limit-Month. Quota may be exceeded by up to 5% before access is disabled. [19]
- Known restrictions
- Free plan limited to personal (non-commercial) use only, Users cannot store, distribute, or otherwise exploit positionstack API data outside of their application(s), End users must use data strictly for their own personal use; commercial redistribution of data prohibited, Unused monthly quota does not carry over to the next month, API access key must be kept private; do not embed in client-side code, Attribution is optional but encouraged (link to positionstack.com), Quota may be exceeded by a maximum of 5%, after which API access is disabled, GitHub SDK repository archived (read-only) as of June 2024 [20]
Developer surface
Integration
- API style
- rest
- Base URL
- https://api.positionstack.com/v1/
- Version
- v1
- Versioning
- url
- Stability
- ga
- Auth methods
- api_key
- Idempotency keys
- ✗ No
- Error format
- vendor-specific JSON: {code, message, context}
Adoption & maturity
- Launched
- 2020-01-01
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: positionstack.com · github.com
- ↑Pricing model: positionstack.com
- ↑Published pricing: positionstack.com
- ↑Free tier: positionstack.com · positionstack.com
- ↑Free tier details: positionstack.com
- ↑Self-serve signup: positionstack.com
- ↑Enterprise plan: positionstack.com
- ↑Supported actions: positionstack.com · positionstack.com
- ↑Output types: positionstack.com
- ↑Webhooks: positionstack.com
- ↑Sandbox: positionstack.com
- ↑SDK languages: github.com
- ↑SOC 2: ideracorp.com
- ↑HIPAA: ideracorp.com
- ↑GDPR: positionstack.com
- ↑ISO 27001: ideracorp.com
- ↑PCI DSS: ideracorp.com
- ↑Published SLA: positionstack.com · positionstack.com
- ↑Rate limits: positionstack.com · marketplace.apilayer.com
- ↑Known restrictions: positionstack.com · github.com
Change history
- 2026-06-15 Score Agent Friendliness: 10 → 30
- 2026-06-15 Score Docs Quality: 0 → 15
- 2026-06-14 Docs URL: (none) → https://docs.apilayer.com/positionstack/docs/api-documentation?utm_source=Posit…
- 2026-06-14 Robots Allows Agents: (none) → Yes
- 2026-06-14 Has Structured Data: (none) → Yes
- 2026-06-14 Capabilities: {} → {"batch":true,"forward":true,"reverse":true}
- 2026-06-14 Summary Md: (none) → Positionstack is a REST-based geocoding API covering more than 2 billion places…
- 2026-06-14 Llms Txt Present: (none) → No
- 2026-06-14 Rendering: (none) → static
- 2026-06-14 Status Page URL: (none) → https://status.positionstack.com
- 2026-06-14 Score Setup Speed: (none) → 85
- 2026-06-14 Score Pricing Transparency: (none) → 100
- 2026-06-14 Avoid If: (none) → You have strict compliance requirements
- 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) → 15
- 2026-06-14 Score Procurement Friction: (none) → 100
- 2026-06-14 Score Docs Quality: (none) → 0
- 2026-06-14 Scoring Methodology: (none) → Scores are computed deterministically from this profile's published, sourced fi…
- 2026-06-14 Score Agent Friendliness: (none) → 10
- 2026-06-14 Free Tier Details: set to Free plan at $0/month includes 100 requests/month; personal license only; no co…
- 2026-06-14 Self Serve Signup: set to Yes
- 2026-06-14 Requires Sales Call: set to No
- 2026-06-14 Enterprise Plan Available: set to Yes
- 2026-06-14 GDPR: set to Yes
- 2026-06-14 SLA Published: set to No
- 2026-06-14 Data Retention Policy URL: set to https://positionstack.com/privacy
- 2026-06-14 Documented Rate Limits: set to Monthly request quotas per plan (100 free; 100K Basic; 1M Professional; 3M Busi…
- 2026-06-14 Known Restrictions: set to Free plan limited to personal (non-commercial) use only, Users cannot store, di…
- 2026-06-14 Auth Methods: set to api_key
- 2026-06-14 Auth Docs URL: set to https://positionstack.com/documentation
- 2026-06-14 API Style: set to rest
- 2026-06-14 Base URL: set to https://api.positionstack.com/v1/
- 2026-06-14 API Version: set to v1
- 2026-06-14 Versioning Scheme: set to url
- 2026-06-14 Stability: set to ga
- 2026-06-14 Quickstart URL: set to https://docs.apilayer.com/positionstack/docs/getting-started
- 2026-06-14 Idempotency Supported: set to No
- 2026-06-14 Error Format: set to vendor-specific JSON: {code, message, context}
- 2026-06-14 Requires Verification: set to No
- 2026-06-14 Starting Price Usd: set to 9.99
- 2026-06-14 Price Basis: set to month
- 2026-06-14 Free Tier Limit: set to 100 requests/month
- 2026-06-14 Slug: set to positionstack
- 2026-06-14 Notable Customers: set to (none)
- 2026-06-14 Fields Not Found: set to documented_rate_limits per-second/per-minute (not published), soc2, hipaa, iso_…
- 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 Launched At: set to 2020-01-01
Suggest an edit / leave a review
Leave a review or comment
curl -X POST https://apio.sh/api/feedback/positionstack \
-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/positionstack/FIELD \
-H 'Content-Type: application/json' \
-d '{"value":"corrected value","citations":[{"url":"https://source.example/page","excerpt":"supporting quote"}],"note":"what changed and why"}'