Is ChatGPT Down? Check in 30 Seconds + Fix Your App
Open status.openai.com and check the ChatGPT or APIs component you use. If it's green, read your error: 500 and 503 point to OpenAI, while 401, 403 and quota 429s point to your setup.

On this page
- Is ChatGPT down right now? How to check in 30 seconds
- ChatGPT status vs OpenAI API status: which page to check
- ChatGPT not working but status is green? 7 things to try
- What do OpenAI API errors 401, 429, 500 and 503 mean?
- What a 401 looks like (we tried it with a fake key)
- How do I keep my app up when ChatGPT or the OpenAI API is down?
- Worked example: what the retries looked like
- Show a calm Try again message
- Should I add a fallback model?
- Does a ChatGPT outage expose my API key? (safe error pages)
- FAQ
Is ChatGPT down? Open status.openai.com (external) and look at the component you use: ChatGPT for the app, APIs for your own code. If everything is green, read your error code. 500 and 503 point to OpenAI. 401, 403 and quota-type 429 errors point to your key, region or billing.
By Gary, Greenlight My App · Updated Oct 31, 2026 · Last checked Oct 31, 2026, 6:53–6:58 AM ET · How we checked this: we read status.openai.com, sent one request to the OpenAI API with a fake key (sk-proj-XXXX), ran a retry script against a local mock server that returned 429, 500 and 503, and built a leaky and a safe error page side by side. We also read OpenAI's error code docs. Drafted with AI tools and reviewed by a person before publishing.
This page doesn't show live status. It shows you how to answer "is ChatGPT down" in 30 seconds, how to tell an outage from a problem on your side, and how to keep your own app running, without leaking anything, the next time OpenAI has a bad hour.

Is ChatGPT down right now? How to check in 30 seconds
Open status.openai.com, look at the ChatGPT or APIs group, and expand it to see each component. If it's green and you still have trouble, read your error code (table below). That tells you, in most cases, whether the problem is OpenAI's or yours.
Three steps, in this order:
- Open status.openai.com (external). Read the top banner, then open the group you use. When we checked at 6:53 AM ET on Oct 31, 2026, the banner said "We're fully operational" and "We're not aware of any issues affecting our systems."
- Expand the group. ChatGPT has 16 components, including Conversations, Login, File uploads, Voice mode, Image Generation, Deep Research and Connectors/Apps. A single feature can fail while chat works.
- Read your error code. If you see one, the table further down tells you whether to wait or to fix something.

The uptime shown that morning for Aug 2026 to Oct 2026: APIs 99.97%, ChatGPT 99.70%, Codex 99.94% and FedRAMP 100%. OpenAI adds a caveat under the bars, which is worth reading before you quote any number: "Availability metrics are reported at an aggregate level across all tiers, models and error types. Individual customer availability may vary depending on their subscription tier as well as the specific model and API features in use." (status.openai.com, checked Oct 31, 2026.)

ChatGPT status vs OpenAI API status: which page to check
Use the ChatGPT group if you're typing into chatgpt.com or the app. Use the APIs group if your own product calls the OpenAI API with a key. They're the same status page but separate components, so one can show a problem while the other stays green.
| You're using | Check this on status.openai.com | Typical components |
|---|---|---|
| chatgpt.com, desktop or mobile app | ChatGPT | Conversations, Login, File uploads, Voice mode, GPTs |
| Your own app with an API key | APIs | Chat Completions, Responses, Embeddings, Images, Batch |
| Codex | Codex | Codex components (4 listed) |
| A government deployment | FedRAMP | 1 component |
If you build on the API, your users never see status.openai.com. They see your app. That's why the rest of this page is about what your app does when the API fails. If you don't have a key yet, our guide on how to get an OpenAI API key covers setup, and what is an API key explains why it must stay on your server.
ChatGPT not working but status is green? 7 things to try
If the status page is green but ChatGPT is not working for you, the cause is usually local: your browser, network, account or a usage limit. Work through the seven checks below before you assume an outage. Each takes under a minute.
- Hard refresh the page. Ctrl+Shift+R on Windows and Linux, Cmd+Shift+R on Mac.
- Try a private window. That rules out a stuck cookie or a browser extension.
- Sign out and back in. Login is its own component on the status page, so check it too.
- Turn off VPNs and ad blockers for a moment. Some networks block the domains ChatGPT loads from.
- Try another network or device. Phone on mobile data is the quickest test.
- Check the specific feature. If only uploads or voice fail, look at File uploads or Voice mode, not the top banner.
- Read the message itself. A usage-limit notice is not an outage. It means your plan's allowance for that model or feature is used up for now.
That last one causes a lot of "is ChatGPT down" searches. Limits change: on Oct 29, 2026, BleepingComputer reported that OpenAI doubled usage limits for the Pro 100, 200 and 500 tiers and Business Premium, quoting OpenAI's Tibo: "We are doubling all usage limits for all Pro 100/200/500 tiers and Business Premium, effective today." A limit message after a change like that is about your allowance, not about OpenAI's servers.
What do OpenAI API errors 401, 429, 500 and 503 mean?
401 means your key is wrong or missing. 429 means you hit a rate limit or ran out of quota or credit. 500 means OpenAI's server had an error. 503 means the model is temporarily overloaded. Only rate-limit 429s, 500s and 503s are worth retrying; the rest need a fix on your side.

Here's what OpenAI's error code docs (external) say, word for word where quoted (checked Oct 31, 2026):
| Code | OpenAI's description | Usually whose problem | Retry? |
|---|---|---|---|
| 401 | "Invalid Authentication" or "Incorrect API key provided" | Yours: key, org or project | No. "Ensure the API key used is correct, clear your browser cache, or generate a new one." |
| 401 | "IP not authorized" | Yours: IP allow list | No |
| 403 | "Country, region, or territory not supported" | Your location | No |
| 429 | "Rate limit reached for requests" | Yours: pace | Yes. "Pace your requests and follow the Retry-After header when it's present." |
| 429 | credit_balance_exhausted, spend limit or usage limit exceeded | Yours: billing | No. "Retrying billing, spend, or quota errors won't restore API access." |
| 500 | "The server had an error while processing your request" | OpenAI | Yes. "Retry your request after a brief wait and contact us if the issue persists. Check the status page." |
| 503 | "Model temporarily overloaded" (server_is_overloaded) | OpenAI | Yes, with backoff |
One more line from the same page matters for teams: limits "are applied per organization and not per user". If one script on your team burns the rate limit, everyone's requests slow down.
What a 401 looks like (we tried it with a fake key)
Tested: On Oct 31, 2026 at 6:58 AM ET we sent one request to api.openai.com with the fake key sk-proj-XXXX. It came back with HTTP 401 and this body (trimmed):
{
"error": {
"message": "Incorrect API key provided: sk-proj-XXXX. You can find your API key at https://platform.openai.com/account/api-keys.",
"type": "invalid_request_error",
"code": "invalid_api_key"
}
}
A 401 during an outage is almost never the outage. If your app suddenly gets 401s, check whether a key was rotated, revoked or pasted wrong before you blame OpenAI. If you think a key leaked, follow what to do if your AI API key was stolen.
How do I keep my app up when ChatGPT or the OpenAI API is down?
Retry only the errors that can recover (rate-limit 429s, 500, 502, 503, 504), wait a little longer each time with some randomness, stop after a few tries, and then show a calm message with a Try again button. Don't retry 401, 403 or quota errors; they won't fix themselves.
This is the retry helper we ran. It honors the Retry-After header when the server sends one, and otherwise uses exponential backoff with jitter, which is what OpenAI's docs recommend for 429s without that header ("use exponential backoff with jitter and limit the number of retries").
// retry.ts: exponential backoff with jitter for 429/500/502/503/504
const RETRYABLE = new Set([429, 500, 502, 503, 504]);
export async function fetchWithRetry(
url: string,
init: RequestInit = {},
maxRetries = 4,
baseMs = 250,
): Promise<Response> {
for (let attempt = 0; ; attempt++) {
const res = await fetch(url, init);
if (!RETRYABLE.has(res.status) || attempt >= maxRetries) return res;
const ra = Number(res.headers.get("retry-after"));
const wait = ra > 0 ? ra * 1000 : baseMs * 2 ** attempt + Math.random() * 100;
await new Promise((r) => setTimeout(r, wait));
}
}Two cautions. First, a 429 can be a quota error, not a rate limit. Check the error code in the body and skip retries for credit_balance_exhausted and the spend or usage limit codes. Second, keep the retry on your server, next to your key. Your browser code should call your own backend, never OpenAI directly.
Worked example: what the retries looked like
Tested: On Oct 31, 2026 we pointed the helper at a local mock server that fails on purpose. Results:
| Mock route | What it did | What our helper did |
|---|---|---|
| /fail/429/2 | Two 429s with retry-after: 1 | Waited 1,000 ms twice, then got 200 OK |
| /fail/500/1 | One 500 | One short retry, then 200 OK |
| /fail/503/3 | Three 503s | Retried after about 317, 559 and 1,058 ms, then 200 OK |
| /always/503 | Never recovers | Four retries (about 255, 522, 1,075 and 2,005 ms), then gave up and showed the Try again message |

The total wait before giving up was under four seconds. That's long enough to ride out a short blip and short enough that your user isn't staring at a spinner.
Show a calm Try again message
When retries run out, tell people what happened in plain words, keep what they typed, and give them a button.

Should I add a fallback model?
If AI is core to your product, a fallback can help: a second model or provider that takes over for a while. Keep it simple: one switch on your server, logged so you can see when it fires. Our is Claude down guide covers the same pattern from the Anthropic side, so you can use each as the other's backup.
Does a ChatGPT outage expose my API key? (safe error pages)
No. An outage on OpenAI's side doesn't, by itself, expose your key. The risk is your own error page. If your app dumps the raw error, request headers or environment when the API fails, a busy outage day can show that to every visitor. Show a short message and a reference ID instead.
Tested: We built two demo error pages using only the fake key sk-proj-XXXX. The leaky one printed a stack trace, the Authorization header with the key, a cookie and environment settings. The safe one said: "ChatGPT is having trouble right now. We retried a few times automatically. Your message wasn't lost." It added a Try again button and a reference code (err_7f3a) that support can look up in the logs.

Rules of thumb for a safe error page:
- Log the full error on the server. Show the user a short message and an ID.
- Never echo request headers, tokens or settings into HTML or JSON responses.
- Keep keys in server-side environment variables. Our guide to what an .env file is explains why it must never be public.
- Turn off debug mode in production.
A Greenlight My App scan checks your live site's public code for secret key patterns, such as OpenAI keys, and for exposed files like /.env and /.git. It also checks security headers. It doesn't read your error pages or monitor outages, so use the rules above for those.
FAQ
Is OpenAI experiencing an outage? Check status.openai.com. It shows the APIs, ChatGPT and Codex groups and each component. On Oct 31, 2026 at 6:53 AM ET it said "We're fully operational." This page doesn't show live status.
Why is the website not working today? If status.openai.com is green, try a hard refresh, a private window, signing out and in, and another network. A usage-limit message means your allowance ran out, not an outage.
Why is every AI not working? If several AI tools fail at once, check your own network, VPN or firewall first, then each vendor's status page. Shared infrastructure problems happen, but local issues are more common.
Is OpenAI down or is it my API key? Read the error. 401 "Incorrect API key provided" is your key. 500 and 503 point to OpenAI. 429 can be either: check the code for rate limit versus quota or credit.
Should I retry a 429 error? Only rate-limit 429s. Follow Retry-After if present, otherwise back off with jitter and cap retries. OpenAI says retrying billing, spend or quota errors won't restore access.
Does the ChatGPT app being down mean the API is down? Not always. ChatGPT and APIs are separate groups on status.openai.com. Check the group your product actually uses before telling users there's an outage.
Want to know what your users' browsers can see? Scan your app free with Greenlight My App to check your public code for exposed keys, your site for exposed .env and .git files, and your security headers.
Sources
On this site
Related posts

ChatGPT Pricing: Free, Go, Plus, Pro and Business
ChatGPT pricing as of Oct 31, 2026: Free $0, Go $8, Plus $20, Pro $100 to $500 a month, Business seats, and what the OpenAI API costs builders.

Is Claude Down? How to Check in 30 Seconds (and Keep Your App Up)
Is Claude down or is it you? Check status.claude.com, read the API error code, and keep your app up with retries, fallbacks and a safe error page.

API Key Leaked? What to Do in the Next Hour
API key leaked? What to do in the next hour: revoke and replace it, update your apps, check usage, ask about refunds and set spend limits.
Get the next change before it bites
Greenlight tips and new blog posts: short, practical notes when Supabase, Lovable, Bolt, Cursor or another tool you build with changes something that affects your app, plus what to check. About twice a month.
We'll send a confirmation email first. Unsubscribe anytime. Privacy. Greenlight My App is independent and not affiliated with or endorsed by Supabase, Lovable, Bolt, Cursor or any other tool we mention.
ChatGPT and OpenAI are trademarks of their owner; not affiliated with Greenlight My App. This page doesn't show live status; it was checked on Oct 31, 2026. This page is general information, not professional security advice, legal advice, a security audit or a guarantee. Check your own setup against the vendor's current docs.