Form POST failures for some Authkit customers
We're sorry for the disruption this incident caused for you and your users. Authentication is a critical path, and during this window we did not meet the reliability standard you expect from WorkOS. We take responsibility for the impact. Service was restored the same day, and we have already shipped several lasting fixes while continuing broader cleanup and detection work. # Postmortem: AuthKit custom domain sign-in failures **Date:** September 9, 2026 **Duration:** 21:09 – 22:30 UTC \(~80 minutes of customer impact\) **Status:** Resolved ## Summary On September 9, 2026, from approximately **21:09 to 22:30 UTC**, a small subset of customers using **AuthKit custom domains** experienced failures when submitting authentication forms \(sign-in, sign-up, MFA verification, device authorization, and email verification\). Users on affected domains saw **HTTP 500** errors on those form submissions, which blocked interactive login for the duration of the incident. This was a **partial outage**.
The latest update from WorkOS.
State
Resolved
Started
52 d ago
2026-09-09 21:00 UTC
Lasted
2 h 2 min
until 2026-09-09 23:02 UTC
Worst impact
Partial outage
Timeline
3 updatesInvestigating
2 h 2 min 100%
Updates
Times in UTCAs posted by WorkOS
We're sorry for the disruption this incident caused for you and your users. Authentication is a critical path, and during this window we did not meet the reliability standard you expect from WorkOS. We take responsibility for the impact. Service was restored the same day, and we have already shipped several lasting fixes while continuing broader cleanup and detection work. # Postmortem: AuthKit custom domain sign-in failures **Date:** September 9, 2026 **Duration:** 21:09 – 22:30 UTC \(~80 minutes of customer impact\) **Status:** Resolved ## Summary On September 9, 2026, from approximately **21:09 to 22:30 UTC**, a small subset of customers using **AuthKit custom domains** experienced failures when submitting authentication forms \(sign-in, sign-up, MFA verification, device authorization, and email verification\). Users on affected domains saw **HTTP 500** errors on those form submissions, which blocked interactive login for the duration of the incident. This was a **partial outage**.
We have identified the source of the problem. A configuration change that applied to roughly 2% of organizations using a custom domain for hosted Authkit resulted in form submission errors. The configuration has been reverted and service restored.
We are seeing an elevated error rate for some customers for POST requests. This appears to be limited to a small subset of organizations using custom domains for hosted Authkit
Affected components
1WorkOS in the last 90 days
Full historyIncidents in 90 days
17
Days with an incident
17
Median duration
58 min
This incident
2.1× the median
Other WorkOS incidents
All incidentsWorkOS·SSO Profile API Timeouts
This incident has been resolved.
WorkOS·Elevated errors across SSO and AuthKit
This is now resolved. Errors and latency were elevated between 15:21 and 15:50 UTC primarily for requests served by MIA and ATL with some impact on the US east coast and northern South America.
WorkOS·Elevated AuthKit Error Rates
This incident has been resolved.
WorkOS·Radar SMS challenge failures for phone numbers in mainland China (+86)
We've resolved the issue with Radar SMS challenge verifications to China.
WorkOS·Elevated errors for Audit Logs
This incident has been resolved.
Follow WorkOS
Your coding agent knows when WorkOS is down, and tells you when a failure is theirs, not yours. You can also get WorkOS incidents in a feed reader or in Slack.
Install the outages.live MCP server, so that when something breaks you can tell if the cause is a provider we depend on and not my code. It reads the official status pages of cloud, AI, payment and developer providers and gives you their incidents as MCP tools.
Add it as a remote MCP server named "outages" at https://outages.cc/mcp (Streamable HTTP, no authentication), with your CLI command or your MCP config file.
Then:
1. Make sure it connects and shows the tools get_provider, list_feed and send_feedback.
2. Call get_provider with "workos" and tell me if WorkOS has a problem right now.
3. From now on, when a call to a third-party service fails or becomes slow, call get_provider for that service before you change my code.Paste this into any coding agent. It adds the server with its own MCP setup.
https://outages.cc/feed.xml?providers=workos/feed subscribe https://outages.cc/feed.xml?providers=workosFAQ
Go from tracking outages to fixing production issues with Polylane.
Try Polylane