Docs
Rate limits
GeoQ uses fixed lookup allowances, not per-query metering. When you reach your allowance you're rate-limited with a 429 — you are never billed an overage.
Quotas by plan
| Plan | Quota |
|---|---|
| Free | 5,000 lookups / day |
| Starter | 1,000,000 lookups / month |
| Growth | 3,500,000 lookups / month |
| Scale | 13,000,000 lookups / month |
| Pro | 36,000,000 lookups / month |
The free allowance resets daily at 00:00 UTC; paid allowances reset at the start of each calendar month (UTC). Each plan also carries a per-second request throttle that scales with the plan, to keep the service fast for everyone.
The 429 response
Quota and throttle limits return HTTP 429:
{
"error": {
"type": "rate_limited",
"message": "Lookup quota exceeded - upgrade at https://geoq.io/pricing/ or wait for the reset."
}
} Per-request usage headers (remaining quota / reset time) are on the roadmap — today, track your usage client-side or watch for 429s and back off with exponential delay. The official SDKs retry 429s with backoff automatically.
Handling limits
- Cache repeated lookups of the same IP in your app — you control that.
- On a
429, back off exponentially (the SDKs do this for you). - Need more headroom? Upgrade your plan — still flat, still no overage.