On September 3, 2026, several AI services degraded in the same window. It's worth writing up not mainly for the blast radius, but because it is another clean demonstration of the gap between third-party observation and vendor confirmation — and that distinction determines where you spend money and engineering time afterwards.
What Was Confirmed
- OpenAI's status page flagged elevated errors across ChatGPT and Codex. That's a first-party source.
- Downdetector reports climbed from over 5,000 to more than 74,000, one of the larger report peaks the platform tracked for an AI service that year.
- The disruption window ran roughly from 10:58 to 14:56 US Eastern time — close to four hours.
- By the morning of September 4, external trackers showed ChatGPT and Codex operating normally again.
What Was Only Attributed
Multiple outlets attributed the simultaneous degradation across several AI services to an Azure East US regional failure, reporting that Claude and Grok were affected in the same window while Gemini — running on Google Cloud — peaked at only around 500 reports.
At the time of writing, however, Microsoft's public Azure status history did not list a matching East US incident for September 2026. The most recent post-incident review visible there was dated July 23, 2026 and covered a West US networking issue, tracking ID ZJV6-SGG.
That doesn't make the reporting wrong — vendor post-incident reviews routinely take days or weeks to appear. What it means is narrower and more useful: until you have first-party confirmation, that causal chain is "as reported", and it does not belong in your architecture decisions as fact. It's the same discipline we applied in "Rankings Shook August 1 to 3 and Google Confirmed Nothing": several monitors lighting up together establishes correlation, never causation.
Whatever the Root Cause, the Engineering Conclusion Is Identical
If your product calls a hosted model API, that is a hard dependency: when it breaks, your feature breaks, and you have neither the ability to fix it nor a right to be told what happened. None of that changes based on whether the cause was Azure, the vendor itself, or something else. Things you can implement immediately:
- Set hard timeouts. Don't inherit SDK defaults, which are often unbounded or extremely long. A call that exceeds what you can tolerate should fail into a fallback path rather than pinning a user's request thread.
- Retry with exponential backoff and jitter, and distinguish rate limiting from a regional failure — retrying harder against the latter only amplifies the pile-up.
- Have a degraded mode. A cached answer, an asynchronous queue, or an honest message all beat leaving a spinner on screen for four hours.
- Queue the work so user requests are decoupled from model calls. Failure then means "slower" rather than "lost", which is the highest-value architectural change on this list.
- Keep the provider swappable. At minimum, abstract model calls behind configuration so you can switch vendors without a code change. If your fallback plan is a self-hosted model, read the second article in this batch first — self-hosted components come with their own exposure problem.
- Run your own status page and alerting. You should learn about this before your users do, not from a support ticket.
Write the Dependency List Down
In our review of the first half of 2026's outage patterns we suggested drawing a dependency map: DNS, CDN, certificate issuance, object storage, account and billing, out-of-band access — each with a note on what happens when it fails. Hosted model APIs now deserve their own line on that map.
One instance you fully control can play several roles on it that nothing else can: hosting the status page and the degraded landing page (which must not share fate with the main service), acting as a temporary origin after a DNS cutover, and holding a backup copy that doesn't live with the same vendor. VPS backup strategies covers what makes that copy genuinely restorable, and what a CDN is and when you need one covers where origin responsibility ends. SharkCloud has nodes in Japan, Singapore, Hong Kong and the US — and putting that fallback box with a different provider in a different region is the easiest square on the map to fill.