Error · openai-api

OpenAI API 429: separate rate limits from quota issues

Use official error codes and response headers to diagnose an OpenAI API 429 without confusing it with a Codex plan limit.

Last verified: September 15, 2026

Direct answer

HTTP 429 alone does not prove that your ChatGPT or Codex plan allowance is exhausted. For OpenAI API calls, inspect error.code and the response headers. slow_down means traffic increased too quickly; follow Retry-After and reduce the request rate.

Applies to

For applications calling the OpenAI API with an API key, not Codex usage included in a ChatGPT plan.

What to do

  1. 1Confirm that the request uses an API key rather than a ChatGPT plan allowance.
  2. 2Record the HTTP status, error.code, and x-request-id, but never log the API key.
  3. 3For slow_down, wait at least as long as Retry-After and add randomized backoff.
  4. 4Inspect x-ratelimit-remaining-* and x-ratelimit-reset-* for request and token limits.
  5. 5Do not endlessly retry billing, quota, or other errors that require action.

Common misconceptions

  • Every 429 recovers at one universal reset time.
  • Immediate repeated retries recover faster; unsuccessful requests can still count toward limits.

Next action

Keep a sanitized error code and header snapshot, then choose backoff, lower traffic, or billing review based on the actual error.

Check the latest sourced signals