We make zipcodestack, so we are not neutral. Every competitor figure below comes from that provider’s own website, checked on October 29, 2026; prices are monthly list prices in US dollars unless noted, as of October 2026. Prices change, so check them before you buy, and tell us if a row is out of date.
The best ZIP code API depends on what you need from a postal code. For looking up city, state and coordinates, validating codes, and distance or radius search, a postal code API such as the zipcodestack ZIP code API or Zipcodebase is the simplest and cheapest choice. For confirming full street addresses, you need an address verification service such as Smarty or the USPS Addresses API. And for occasional lookups, GeoNames offers free web services and downloads.
Short answer
- zipcodestack: postal code lookup, validation, distance, radius, polygon and reverse geocoding for 182 countries; 1,000 free requests a month for testing, paid plans from $34.99.
- Zipcodebase: a similar postal code API for 200+ countries; a larger free plan (private use only) and the lowest price per search from 40 million searches a month.
- Smarty or the USPS Addresses API: US address verification with ZIP+4.
- GeoNames: free web services and downloads with attribution; partial data for some countries.
- Google Geocoding API: if you already use Google Maps Platform and need postal codes as part of geocoding.
Coverage, features and free tier
| API | Coverage | What it does | Free tier |
|---|---|---|---|
| zipcodestack | 182 countries, about 9.6M postal codes | Lookup (up to 100 codes per call), validation, distance, radius, polygon, reverse geocoding, autocomplete, codes by city or state | 1,000 requests / month, 10 / minute; testing and personal projects |
| Zipcodebase | 200+ countries | Lookup, codes by city or state, radius, distance, codes within a distance, provinces | 5,000 searches / month, private use, 1 concurrent request, 10-mile radius |
| Smarty | US addresses; international addresses in 195 countries and 55 territories | Address verification, ZIP+4, city/state ↔ ZIP lookup with county and coordinates | Trial: 1,000 US lookups (100 international) or 42 days, whichever comes first |
| USPS Addresses API (v3) | US only | Address standardization with ZIP+4, cities for a ZIP code, ZIP codes for a city | No price listed; USPS Business Account, hourly quota |
| GeoNames web services | About 120 countries in its postal code data | Postal code search, nearby postal codes (30 km / 500 rows on the free service), lookup | 10,000 credits / day, 1,000 / hour; commercial use allowed with credit (CC BY) |
| Zippopotam.us | 60+ countries | Postal code to place lookup | Free; no published limits; data under ODbL, adapted from GeoNames |
| ZipCodeAPI.com | US and Canada only | Distance, radius, match by distance, ZIP to location | 10 requests / hour |
| Google Geocoding API | Worldwide geocoding | Geocoding with a postal code filter; up to 100 localities per postal code | 10,000 requests / month |
Paid plans and price per 1,000
| API | Entry plan | Largest standard plan | Price per 1,000 (entry → largest) |
|---|---|---|---|
| zipcodestack | $34.99 for 70,000 requests | $249 for 6,000,000 | $0.50 → $0.042 |
| Zipcodebase | $45 for 60,000 searches | $3,000 for 70,000,000 | $0.75 → $0.043 |
| Smarty (US) | $552 a year for 12,000 lookups | Custom | $46.00 at the entry tier |
| Smarty (international) | $95 for 1,000 lookups | Custom | $95.00 at the entry tier |
| GeoNames premium | €40 for 100,000 credits (valid one year) | €300 for 25,000,000 | €0.40 → €0.012 per 1,000 credits |
| ZipCodeAPI.com | $199 a year for 200 requests an hour | $10,000 a year, unlimited | Priced by hourly limit |
| Google Geocoding API | $5.00 per 1,000 after the free 10,000 | Volume discounts | $5.00 → lower at volume |
- zipcodestack’s Medium plan is $59.99 for 250,000 requests. A lookup costs 1 request per postal code found, a distance 1 per distance, a radius or polygon search 10; paid plans have no rate limit. All plans are on the pricing page.
- Zipcodebase’s plans in between: $75 for 200,000, $240 for 1.9 million, $800 for 10 million and $2,000 for 40 million searches, with 1 to 50 concurrent requests and a 10- to 500-mile radius by plan. It charges only successful responses and gives 20% off with yearly billing. The head-to-head is on zipcodestack vs Zipcodebase.
- GeoNames premium also has “Best Availability” plans (€250 for 1 million, €500 for 5 million credits) and raises the nearby-search limits to 160 km and 2,500 rows.
Which one fits
- Postal code data for forms, maps and logistics in many countries: zipcodestack or Zipcodebase. Per 1,000, zipcodestack’s Large plan ($0.064) costs less than any Zipcodebase plan up to 10 million searches ($0.08 on the $800 plan); Zipcodebase’s 40- and 70-million plans cost less.
- US mail deliverability: Smarty or the USPS Addresses API. Both verify full addresses and return ZIP+4, which a postal code API does not.
- A hobby project or prototype: GeoNames’ free web services (with credit), Zippopotam.us, or a free plan of the APIs above. Zipcodebase’s and zipcodestack’s free plans are not for commercial use.
- US and Canada only, low steady traffic: ZipCodeAPI.com, whose plans are sized by requests per hour.
- Already on Google Maps Platform: its Geocoding API can filter by postal code; at $5.00 per 1,000 after the free 10,000 it costs more per lookup than a postal code API.
What to look for
- Coverage of your countries, and whether it is complete there: free data sets often have only major codes for some countries.
- The endpoints you need: radius search, distance, validation and reverse geocoding are not everywhere.
- What counts as a request. A lookup of 100 codes is 1 call but may count as 100 requests; radius searches often count more.
- Commercial use on the free tier. Several free plans exclude it.
- Rate limits and concurrency on the plan you will use, not only the monthly volume.
- Where the data comes from and how it is credited. zipcodestack lists its sources on the attribution page.
zipcodestack in one request
curl -G https://api.zipcodestack.com/v1/search \
-d codes=1010 \
-d country=at \
-H "apikey: YOUR-API-KEY"
The answer has the place, state, province and coordinates of each code; the search documentation lists every field. To try the data without a key, use the free postal code validator or the ZIP code radius tool.