Sources and method
Where incidents come from
Each vendor’s public status page, read every day at 03:30 UTC: Atlassian Statuspage and incident.io pages through their JSON endpoints (the last 25 to 50 incidents, plus up to a year of history), Google Cloud’s incidents feed, AWS Health’s public event history and Slack’s status API. Nothing is scraped from third-party outage trackers or user reports.
Severity and duration
Severity is the vendor’s own rating. Duration runs from the start the vendor gives to the time it marked the incident resolved. Some vendors post every blip, others only large outages, so compare a vendor with itself over time.
Weighted downtime and implied uptime
Raw minutes overstate outages: a vendor with 300 carrier or region components posts one incident per carrier, and each can run for days. So each incident’s minutes are weighted by the share of the vendor it touched: affected product components out of all product components on the status page; an incident that names only regions, POPs, countries or carriers counts at most 25% (Google Cloud: regions out of 40, AWS: regions out of 33); one integration counts at most 25%, and a subset of users, one platform, delays or the control plane at most 10%. With no scope data, the vendor’s median scope is used. Severity multiplies it: major and critical in full, minor (a partial outage) at 30%. When incidents overlap, only the heaviest counts at each moment, and each incident is capped at 7 days. Implied uptime is 1 minus weighted downtime over the minutes in the range. The raw number, minutes with any incident open, is shown next to it.
Root causes
A cause is assigned only when the vendor explains one: rules read the sentences that say why ("caused by", "due to", "root cause"), never the symptoms. Landmark postmortems are categorized by hand from the vendor’s write-up; a model writes a one-line lesson for other postmortems, and search finds missing postmortems, which stay marked Unverified until checked.
Breaches
SEC Form 8-K Item 1.05 filings found through EDGAR full-text search. The summary quotes the filing; records and data types are shown only when the filing states them.
Status pages read
- 1Password statuspage
- Airtable statuspage
- Anthropic statuspage
- Asana statuspage
- Atlassian statuspage
- AWS aws
- Box statuspage
- CircleCI statuspage
- ClickHouse statuspage
- Cloudflare statuspage
- Cloudinary statuspage
- Cohere statuspage
- Confluent statuspage
- CrowdStrike postmortems only
- Cursor statuspage
- Databricks postmortems only
- Datadog statuspage
- dbt Labs statuspage
- DigitalOcean statuspage
- Discord statuspage
- Dropbox statuspage
- Elastic statuspage
- ElevenLabs statuspage
- Expo statuspage
- Fastly postmortems only
- Figma statuspage
- Fly.io statuspage
- GitHub statuspage
- GitLab postmortems only
- Google Cloud gcp
- Grafana Labs statuspage
- HashiCorp statuspage
- Heroku postmortems only
- HubSpot statuspage
- LaunchDarkly statuspage
- Mailgun statuspage
- Meta postmortems only
- Microsoft Azure postmortems only
- Miro statuspage
- MongoDB statuspage
- Netlify statuspage
- New Relic statuspage
- npm statuspage
- Okta postmortems only
- OpenAI statuspage
- Pinecone statuspage
- PlanetScale statuspage
- Reddit statuspage
- Render statuspage
- Segment statuspage
- Sentry statuspage
- Shopify statuspage
- Slack slack
- Snowflake statuspage
- Snyk statuspage
- Stripe postmortems only
- Supabase statuspage
- Tailscale statuspage
- Twilio statuspage
- Upstash statuspage
- Vercel statuspage
- Zoom statuspage
From vendors' own status pages and disclosures. Times as reported. Logos via logo.dev; trademarks belong to their owners.