API COMPARISON

Geocoding & Maps API Comparison 2026

Side-by-side comparison of 7 geocoding APIs. Convert addresses to coordinates and coordinates to addresses with the right provider for your project.

Last updated: March 2026 · Prices verified at source

What Do Geocoding APIs Do?

Geocoding APIs convert between human-readable addresses and geographic coordinates (latitude/longitude). They power map search, address validation, delivery routing, and location-based features.

🔍

Forward Geocoding

Convert text addresses to lat/lng coordinates. Power search bars, store locators, and address autocomplete.

📍

Reverse Geocoding

Convert coordinates to addresses. Show "You are at..." in mobile apps, tag photos with locations, log delivery drops.

Address Validation

Verify and normalize addresses at checkout. Reduce failed deliveries and improve data quality.

🌍

Batch Geocoding

Geocode thousands of addresses at once. Clean up CRM data, import spreadsheets, build mapping datasets.

Feature Comparison

Core capabilities across all 7 geocoding providers.

Feature
Google Mapsmaps.google.com
Mapboxmapbox.com
OpenCageopencagedata.com
LocationIQlocationiq.com
Nominatimnominatim.org
Positionstackpositionstack.com
HEREhere.com
Forward Geocoding
Reverse Geocoding
Autocomplete
Batch Geocoding
Address Validation
Map Tiles
Routing / Directions
No API Key Required
Self-Hostable
Data SourceGoogleMapbox + OSMOpenStreetMapOpenStreetMapOpenStreetMapMultipleHERE
Global Coverage

Pricing Comparison

Free tiers and paid plans for each geocoding API. All prices as of March 2026.

ProviderFree TierPaid Starting AtCost per 1K RequestsCredit Card Required?
NominatimUnlimited (self-host) / Shared: 1 req/sFree (self-host) or hosted from ~$25/mo$0 (self-hosted)No
Positionstack25,000 req/month$9.99/month (100K req)$0.10No
OpenCage2,500 req/day$50/month (10K req/day)$0.17No
LocationIQ5,000 req/day$49/month (30K req/day)$0.05No
Google Maps$200/mo credit (~40K req)Pay-as-you-go$5.00Yes
Mapbox100K req/month$5.00 per 1K over free tier$5.00Yes
HERE250K req/monthPay-as-you-go$1.00Yes

Best Value Pick

LocationIQ offers the best balance of free tier generosity (5K/day), low paid pricing ($0.05/1K), and OSM-quality data. For zero-cost projects, Nominatim is unbeatable — self-host for unlimited geocoding, or use the public endpoint for low-volume needs.

Provider Deep Dives

Google Maps Geocoding API

The gold standard for geocoding accuracy, especially for ambiguous addresses and complex queries. Best-in-class autocomplete ("Places API") and address validation. Downsides: most expensive per-request, requires credit card, and strict Terms of Service (results must be displayed on Google Maps).

Best For

Enterprise apps where accuracy is critical and you need the full Google Maps ecosystem (maps, directions, Street View, Places).

Mapbox Geocoding API

Strong geocoding built on a combination of proprietary data and OpenStreetMap. Generous 100K free requests/month. The real strength is the mapping platform — if you're already using Mapbox GL JS for maps, the geocoding integrates seamlessly. Batch geocoding available.

Best For

Projects already using Mapbox maps, or those needing combined map tiles + geocoding from one provider.

OpenCage Geocoding API

Clean, developer-friendly geocoding API built on OpenStreetMap data. Returns rich metadata including timezone, currency, what3words address, and formatted address components. No credit card for free tier. GDPR-compliant with EU-hosted options.

Best For

Privacy-conscious apps, European projects needing GDPR compliance, and developers wanting clean structured response data.

LocationIQ

Cost-effective geocoding using OpenStreetMap data. Offers geocoding, autocomplete, map tiles, and routing — a full mapping stack at a fraction of Google Maps pricing. The API is Nominatim-compatible, making migration easy. Also provides static maps.

Best For

Startups and mid-size apps that want Google Maps-like features at 90% lower cost. Great Nominatim drop-in replacement with better uptime.

Nominatim (OpenStreetMap)

Free and open-source geocoding from OpenStreetMap. No API key needed for the public endpoint. Self-hostable for unlimited usage. Community-maintained data means coverage varies — excellent in Europe and urban areas, sometimes sparse in rural developing regions.

Best For

Open-source projects, prototypes, and teams willing to self-host for unlimited free geocoding.

Positionstack

Simple geocoding API with a generous free tier (25K/month). Easy to get started — clean JSON responses, good documentation. Data sourced from multiple providers. Batch geocoding available on paid plans. Part of the apilayer family of APIs.

Best For

Quick prototypes and small projects that need simple address-to-coordinates conversion without complexity.

HERE Geocoding & Search

Enterprise-grade geocoding from a company with 35+ years of mapping data. HERE's own proprietary data (originally from NAVTEQ) is exceptionally strong for automotive, logistics, and delivery. Very generous free tier at 250K transactions/month. Supports structured and freeform address input.

Best For

Logistics, fleet management, and delivery apps where address precision and routing accuracy are critical.

Code Examples

Forward geocoding with each API in JavaScript (Node.js / fetch).

Google Maps GeocodingJavaScript
const address = '1600 Amphitheatre Parkway, Mountain View, CA';

const res = await fetch(
  `https://maps.googleapis.com/maps/api/geocode/json?address=${encodeURIComponent(address)}&key=${API_KEY}`
);
const data = await res.json();

const { lat, lng } = data.results[0].geometry.location;
console.log(`${lat}, ${lng}`); // 37.4224764, -122.0842499
OpenCage GeocodingJavaScript
const address = '1600 Amphitheatre Parkway, Mountain View, CA';

const res = await fetch(
  `https://api.opencagedata.com/geocode/v1/json?q=${encodeURIComponent(address)}&key=${API_KEY}`
);
const data = await res.json();

const { lat, lng } = data.results[0].geometry;
console.log(`${lat}, ${lng}`);
console.log(data.results[0].annotations.timezone.name); // America/Los_Angeles
Nominatim (No API Key)JavaScript
const address = '1600 Amphitheatre Parkway, Mountain View, CA';

const res = await fetch(
  `https://nominatim.openstreetmap.org/search?q=${encodeURIComponent(address)}&format=json&limit=1`,
  { headers: { 'User-Agent': 'MyApp/1.0' } }
);
const [result] = await res.json();

console.log(`${result.lat}, ${result.lon}`); // No API key needed!
LocationIQJavaScript
const address = '1600 Amphitheatre Parkway, Mountain View, CA';

const res = await fetch(
  `https://us1.locationiq.com/v1/search?key=${API_KEY}&q=${encodeURIComponent(address)}&format=json`
);
const [result] = await res.json();

console.log(`${result.lat}, ${result.lon}`);
HERE GeocodingJavaScript
const address = '1600 Amphitheatre Parkway, Mountain View, CA';

const res = await fetch(
  `https://geocode.search.hereapi.com/v1/geocode?q=${encodeURIComponent(address)}&apiKey=${API_KEY}`
);
const data = await res.json();

const { lat, lng } = data.items[0].position;
console.log(`${lat}, ${lng}`);

Our Recommendation

Different projects need different geocoding APIs. Here's our take:

🏢

Enterprise / High Accuracy

Google Maps or HERE. Google for consumer apps with Places autocomplete. HERE for logistics and delivery where address precision matters most.

🚀

Startups / Cost-Conscious

LocationIQ or OpenCage. LocationIQ for full mapping stack at low cost. OpenCage for clean API design and GDPR compliance.

🎨

Map-First Applications

Mapbox. If you need beautiful, customizable maps with integrated geocoding. 100K free requests.

💰

Zero Budget / Open Source

Nominatim. Self-host for unlimited free geocoding. Public endpoint for prototypes and low-volume apps.

Combine Geocoding with IP Geolocation

Need to know a user's approximate location before they type an address? IP geolocation gives you country, city, and coordinates from an IP address — perfect for pre-filling location fields, showing local content, or detecting VPN usage.

Free IP Geolocation API

Get country, city, ISP, timezone, and VPN detection from any IP address. No signup required for basic lookups.

Try Frostbyte GeoIP API

Frequently Asked Questions

What is the best free geocoding API in 2026?
Nominatim (OpenStreetMap) is the best completely free geocoding API. It requires no API key, has no hard rate limits for reasonable use, and covers the entire world. For higher reliability and structured data, OpenCage offers 2,500 requests/day free, and LocationIQ provides 5,000 requests/day free with solid accuracy. Positionstack offers the most generous free tier at 25,000 requests/month.
Which geocoding API is the most accurate?
Google Maps Platform consistently provides the most accurate geocoding results worldwide, particularly for ambiguous addresses, apartment numbers, and non-Latin scripts. HERE Technologies and Mapbox also offer high accuracy with address interpolation. For most standard geocoding needs, OpenCage and LocationIQ provide comparable accuracy using OpenStreetMap data, which is excellent in urban areas but can be less detailed in rural regions.
Can I geocode addresses without an API key?
Yes. Nominatim (OpenStreetMap) provides free geocoding without requiring an API key. Simply make HTTP GET requests to nominatim.openstreetmap.org with your query. The service asks for a custom User-Agent header and limits usage to 1 request/second. For higher throughput without a key, you can self-host Nominatim with your own OpenStreetMap data.
What is the cheapest geocoding API for production?
For production use, LocationIQ and OpenCage offer the best value. LocationIQ starts at $49/month for 30,000 requests/day. OpenCage starts at $50/month for 10,000 requests/day. Positionstack starts at $9.99/month for 100,000 requests. Google Maps charges $5 per 1,000 geocoding requests after the $200/month free credit (about 40,000 free requests). For very high volume, self-hosting Nominatim is the cheapest option long-term.
What is the difference between forward and reverse geocoding?
Forward geocoding converts a text address (like "1600 Amphitheatre Parkway, Mountain View") into geographic coordinates (latitude and longitude). Reverse geocoding does the opposite — it takes coordinates and returns a human-readable address. Most geocoding APIs support both. Reverse geocoding is commonly used in mobile apps to show a user's current location as an address, while forward geocoding is used in search, mapping, and address validation.
Does Google Maps geocoding API require a credit card?
Yes. Google Maps Platform requires a billing account with a credit card. However, Google provides $200/month in free credits, which covers approximately 40,000 geocoding requests. You only pay if you exceed the free tier. For projects that need to avoid credit card requirements entirely, Nominatim, OpenCage (free tier), and LocationIQ (free tier) are alternatives.

Related Comparisons