Start free. Scale as you grow. No hidden fees.
Need extra credits beyond your plan? Credit Packs give you pre-purchased credits that never expire.
| Feature | Free | Developer | Professional | Business |
|---|---|---|---|---|
| Credits | 2,500 / day | 100,000 / mo | 350,000 / mo | 1,500,000 / mo |
| Billing cycle | Daily (resets midnight) | Monthly | Monthly | Monthly |
| Rate limit | 60 / min | 300 / min | 300 / min | 600 / min |
| API keys | 1 | 5 | 10 | 25 |
| Batch endpoint | ||||
| Address validation | ||||
| Address batch | ||||
| Centroid radius | 100 mi | 500 mi | 500 mi | 500 mi |
| Spatial radius | 50 mi | 250 mi | 250 mi | 250 mi |
| Suggest results | 15 max | Up to 500 | Up to 500 | Up to 500 |
| All enrichments | ||||
| US & Canada | ||||
| Credit Packs | ||||
| Support | Docs/Email | Docs/Email | Priority | Dedicated |
Validate and standardize US street addresses with USPS ZIP+4 matching
Centroid and spatial radius modes with configurable distance
Real-time typeahead with fuzzy matching for ZIP codes, cities, and postal codes
Census demographic, social, economic, and housing data
Complete coverage for US ZIP codes and Canadian postal codes
Process thousands of lookups or addresses in a single request
Only pay for the data you need. All enrichments are opt-in
Calculate miles, kilometers, and bearing between any two postal codes
Simple REST calls, no SDK required, works from any language
Pre-purchase credits that never expire. Works alongside any plan, free or paid.
If you exceed your daily free allowance or monthly subscription, purchased credits kick in automatically.
Paying with a wallet? The API also accepts payment through Stripe MPP (Machine Payments Protocol), so an AI agent or a script can buy credits in code. The wallet authorizes each payment (Link, for example, asks its owner to approve every one), and the credits are added after the payment completes. No zip-codes.com signup or account is needed. How it works
| Pack | Credits | Price | Per 1,000 | |
|---|---|---|---|---|
| Starter | 25,000 | $19 | $0.76 | Buy |
| Standard | 65,000 | $49 | $0.75 | Buy |
| Growth | 150,000 | $99 | $0.66 | Buy |
| Pro Best Value | 300,000 | $179 | $0.60 | Buy |
| Enterprise | 2,000,000 | $799 | $0.40 | Buy |
Purchased credits never expire. On an account they are used only after your free or subscription allowance is exhausted; a prepaid API key bought with a wallet holds only the credits it bought. Need a custom volume? Contact us.
Checkout on this page sells Starter through Enterprise. A wallet paying through the API can buy those packs and two smaller ones: Mini (6,250 credits, $5) and Lite (12,500 credits, $10).
See exactly how many credits each API call uses before you commit to a plan.
Tiers: 1–15 = 1 credit · 16–50 = 2 · 51–150 = 3 · 151–500 = 5
No enrichments available on this endpoint.
Address validation costs 1 credit per address, plus 1 per optional enrichment (coordinates, census boundaries, districts, tract-level ACS).
Each item in the batch is costed as a single call to the per-item endpoint. Subscription tier required.
Same pattern for every year back to 2011. Individual profiles can also be requested separately (e.g., acs_housing_2019 = +1).
Same pattern for every year back to 2011. Individual profiles can also be requested separately (e.g., acs_housing_2019 = +1).
Territory enrichments (census, cd, state_leg, school_district) are not available on /radius.
Yes, with a Stripe MPP wallet (Machine Payments Protocol). The wallet authorizes each payment (Link, for example, asks its owner to approve every one). No zip-codes.com signup or account is needed.
To start, send POST /v2/purchase naming a pack. The API answers 402 with a payment
challenge; the wallet pays it, the client sends the request again, and the credits are added only after the
payment completes. (A data request with no API key answers 401, so start with the purchase.) A key
that runs out of credits gets the same challenge, with an offer for the smallest pack that covers the request.
Sent without an API key, the purchase creates a prepaid API key that holds the credits. The response includes the key, and later purchases with it add more. Purchased credits never expire, and paying accepts our Terms of Service. Details are in the API docs.