# Rate limit

A **rate limit** caps throughput. It is separate from credits: credits limit how much you
may spend, rate limits how fast you may spend it.

```
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 41
X-RateLimit-Reset: 1754827200
```

| Plan | Requests/minute | Concurrent async jobs |
|---|---|---|
| Developer | 60 | 2 |
| Scale | 300 | 10 |
| Enterprise | custom | custom |
| Test keys | 20 | 2 |

Limits are per **key**; credits pool per **organization**. A token bucket allows a 2× burst for up to
10 seconds. Uploads are separately capped at 20 files per minute.

Exceeding a limit returns `429 rate_limit_error` with `Retry-After` in seconds.

## Concurrency, not just rate

Async jobs count against a separate concurrency budget for as long as they run. Two in-flight
`deep_review` searches on Developer will block a third until one finishes — that is a `429`, not a
queue.

## Related

rate-limits · errors-and-retries · credit · jobs
