Rate limits & quotas
Per-plan request quotas, per-minute limits, and the headers that report them.
API-key traffic is limited two ways: a sliding per-minute rate and a monthly request quota, both set by your plan.
| Plan | Monthly requests | Requests/min | Webhook events/mo |
|---|---|---|---|
| Free | 30,000 | 60 | 0 |
| Pro ($39/mo) | 50,000 | 120 | 10,000 |
| Quant ($149/mo) | 500,000 | 300 | 100,000 |
| Desk ($799/mo) | 5,000,000 | 1,000 | 1,000,000 |
| Enterprise | custom | custom | custom |
See Billing & plans for what else each tier includes.
Response headers
Every API-key response self-describes your remaining headroom:
| Header | Meaning |
|---|---|
X-RateLimit-Limit | Your per-minute ceiling |
X-RateLimit-Remaining | Requests left in the current minute |
X-Plan-Quota-Monthly | Monthly quota for your plan |
X-Plan-Quota-Used | Requests consumed this month |
Retry-After | Present on 429 — seconds to back off |
429 semantics
Exceeding either limit returns 429 with Retry-After. Back off and retry;
hammering through a 429 can escalate to a temporary block at the edge.
{
"error": "rate_limited",
"message": "Rate limit exceeded",
"trace_id": "01J…"
}Anonymous traffic
The /v1/public/* namespace has its own per-IP limits and aggressive edge
caching; it is designed for human-scale and light-bot consumption. For
sustained programmatic volume, use an API key — or the
x402 agent tier, which has no rate-limit tiers at all (every call
is paid).