Skip to content

OpenAI API errors

OpenAI error 429: You exceeded your current quota

This one is on your account, not on OpenAI: the API answered and refused the request because the organization has no credit left or has hit its spend limit.

What the error says

HTTP status 429, type insufficient_quota, with the message:

You exceeded your current quota, please check your plan and billing details.

Is the OpenAI API down right now?

OpenAI's own status page

OpenAI reports an incident on its status page: ChatGPT Work and Dots Errors.

Impact: minor. Since 2026-11-05 15:25 UTC.

Latest update, 2026-11-05 17:05 UTC: We’ve applied a mitigation and are monitoring the affected services to confirm recovery.

OpenAI's status page

Checks passingOur checks of the OpenAI API

As of Nov 5, 2026, 5:07 PM UTC, RealUptime's checks of OpenAI passed in all 10 regions that returned a reading.

Our checks of the OpenAI API pass right now. That fits a 429 that comes from your account's limits, which our checks cannot see.

Every region, response time and incident history for OpenAI

What it means

OpenAI returns 429 with the type insufficient_quota when the organization or project the key belongs to has run out of prepaid credit, has no payment method, or has reached a monthly budget set in its billing settings. The same status code is used for rate limits, so read the type: insufficient_quota does not clear by waiting.

Is it you or them? Usually yours: OpenAI uses this code for limits and billing on your account, which no outage checker can see.

Common causes

  • The prepaid credit balance is used up, or was never added (a new account with only a ChatGPT subscription has no API credit; the two are billed separately).
  • The organization or project reached the monthly budget set in its limits.
  • The key belongs to a different organization or project than the one you added credit to.

How to fix it

  1. Open the billing page of the organization the key belongs to and check the credit balance; add credit or a payment method.
  2. Check the project's budget under its limits and raise it if you set one.
  3. Confirm the key's organization and project match the ones you paid for; create a new key there if not.
  4. New credit can take a few minutes to apply. Do not retry in a loop: the request fails the same way until the balance changes.

Do not retry this one

Retrying sends the same request against the same empty balance, and it fails the same way. Fix the billing first; the snippet on the rate limit page is for the 429 that does clear.

See these errors grouped, and know when the API is down

RealUptime Errors takes errors from any Sentry SDK. Tag each failed call with the provider, status and model, and errors from the same code group into one issue with its count and first and last time seen, so a run of 429s shows up as one rising issue instead of a flood:

import * as Sentry from "@sentry/node";

// The DSN from your RealUptime Errors project settings.
Sentry.init({ dsn: process.env.REALUPTIME_ERRORS_DSN });

if (!response.ok) {
  Sentry.captureException(new Error(`OpenAI ${response.status}`), {
    tags: { ai_provider: "openai", ai_status: response.status, ai_model: model },
    fingerprint: ["openai", String(response.status)],
  });
}

RealUptime Monitor can check an API endpoint from several regions every minute and alert you when it fails, and the OpenAI outage page can alert you when OpenAI reports an incident. Both are free to start.

Start Errors free

Related errors

OpenAI's own reference: platform.openai.com/docs/guides/error-codes. How our checks work: methodology.