Docs / Rate limits
Rate limits
Every key has four budgets: a one-second burst, then per-minute, per-hour and per-day. Exceeding any one returns 429 with aRetry-After header — so a client pacing only to the per-minute figure can still be refused by burst.
Default limits
| Window | Free | Starter | Growth | Business |
|---|---|---|---|---|
| Burst (1s) | 60 | — | — | — |
| Per minute | 30 | 120 | 600 | 3 000 |
| Per hour | 1 000 | 5 000 | 30 000 | 200 000 |
| Per day | 5 000 | 30 000 | 300 000 | 2 000 000 |
Response headers
Every response carries one triple per window, suffixed with the window name. There is no unsuffixed X-RateLimit-Limit; a client reading that name gets nothing.
X-RateLimit-Limit-Burst: 60 X-RateLimit-Remaining-Burst: 59 X-RateLimit-Reset-Burst: 1700000001 X-RateLimit-Limit-Minute: 30 X-RateLimit-Remaining-Minute: 24 X-RateLimit-Reset-Minute: 1700000060 X-RateLimit-Limit-Hour: 1000 X-RateLimit-Remaining-Hour: 913 X-RateLimit-Reset-Hour: 1700003600 X-RateLimit-Limit-Day: 5000 X-RateLimit-Remaining-Day: 4712 X-RateLimit-Reset-Day: 1700086400
Pace against the tightest remaining count, not any single window. Reset values are unix seconds.
Backoff
On 429, back off for the value of the Retry-After header (seconds). Use exponential backoff with jitter for repeated 429s; cap at 60 seconds. See best practices for the reference client.
Quota
Beyond rate limits, the per-month credit budget is enforced. Hitting 0 credits returns 402 FETCH_QUOTA_EXCEEDED. Buy more credits or upgrade your plan in the billing dashboard.