Every API plan includes a predictable monthly lookup quota with generous burst capacity. When your monthly quota is exhausted, you choose whether requests stop cleanly (429 quota_exceeded) or continue seamlessly via your Prepaid Micro-USD Wallet ($0.10 / 1,000 lookups).
# Monthly quotas by plan
| Plan | Monthly quota | Sustained / Burst RPS | Price | Included field families |
|---|---|---|---|---|
| Free | 30,000 / month | 5 / 20 req/s | $0 | geo_country, network |
| Starter | 250,000 / month | 10 / 50 req/s | $12 / mo | geo_country, geo_city, network, connection |
| Pro | 2,000,000 / month | 30 / 150 req/s | $39 / mo | geo_country, geo_city, network, connection, anonymity, security_extensions |
| Business | 10,000,000 / month | 100 / 500 req/s | $99 / mo | geo_country, geo_city, network, connection, anonymity, security_extensions |
| Enterprise | 50,000,000 / month | 500 / 2500 req/s | $299 / mo | geo_country, geo_city, network, connection, anonymity, security_extensions |
# Prepaid Micro-USD Wallet (`$0.10 / 1,000 lookups`)
If you experience a traffic spike or DDoS event and want zero 429 interruptions, fund your Prepaid Micro-USD Wallet in the dashboard. Overflow lookups beyond your monthly plan quota are metered at a flat $0.10 per 1,000 requests (1,000 micro-USD per lookup) with sub-cent precision. If your wallet balance is $0, the API simply returns 429 quota_exceeded, so you are never billed surprise post-paid overage invoices.
# How lookups are counted
- A
200 OKresponse from/v1/ip/{ip}or/v1/ip/mecounts as 1 lookup. - A
POST /v1/ip/batchcall counts 1 lookup per unique resolved IP in the batch (up to 100 per call). All official SDKs deduplicate and check their local LRU cache before sending a batch. 4xxclient errors,429responses, andGET /v1/statushealth checks never count against your quota.- Filtering with
?field_families=reduces payload size but still counts as 1 lookup.