← All fixes
429OpenAI· Rate limits

OpenAI “Rate limit reached for requests” (429)

Rate limit reached for requests
Quick answer

You’re sending more requests per minute (RPM) than your OpenAI tier allows. OpenAI returns HTTP 429 and rejects the request until the per-minute window resets. It’s a throughput cap, not a billing problem.

What causes it

How to fix it

  1. Add exponential backoff with jitter and retry on 429 — respect the Retry-After header if present.
  2. Throttle concurrency: cap how many requests you fire in parallel rather than bursting all at once.
  3. Raise your limit by moving up an OpenAI usage tier (it’s gated on cumulative spend), or request a limit increase.
  4. Batch or queue non-urgent work so it spreads across the minute instead of spiking.
Running an agent?

Agents are the classic cause: heartbeats, retries, and parallel tool calls add up fast and burn the RPM budget before you’ve sent a single message.

The permanent fix

Stop hitting this entirely

Standard Compute has no per-minute request limit. Under sustained heavy load it gracefully slows and batches instead of returning 429s, so an agent that bursts requests keeps running rather than erroring out.

Get a free API key →How it connects →

FAQ

Is “rate limit reached for requests” a billing error?

No. It’s a per-minute throughput cap (RPM), not a quota or billing problem. You can have plenty of credit and still hit it. “You exceeded your current quota” is the billing one.

How long does an OpenAI rate limit last?

The per-minute window resets continuously, so a 429 usually clears within seconds to a minute. Back off and retry rather than hammering the endpoint.

Related errors

OpenAI tokens-per-minute (TPM) rate limitOpenAI · 429429 Too Many Requests — what it means & how to fixAny provider · 429OpenAI “You exceeded your current quota” (insufficient_quota)OpenAI · 429