How whatisdown works
One tab that tells you whether 40 services your stack depends on are operational. No accounts, no cookies, no ads. Built independently.
What this is
whatisdown reads the official status feed published by each vendor — Atlassian Statuspage v2 endpoints for most, the Google Cloud incidents API for GCP and Vertex, AWS Health's public events JSON, Azure's RSS feed, and a small number of HTML scrapes for vendors that don't publish a clean feed. Each feed is polled every 60 seconds and the dashboard repaints live.
When something breaks, the homepage flips into an incident hero that names the affected service ("Snowflake is reporting a major outage"), shows the incident text and how long it has been ongoing, and offers a one-click jump to the source incident page. Healthy services dim and shift below.
What this is not
- Not a Downdetector clone. We don't aggregate user reports — there is no "I'm having issues" submit flow. The red/green answer on every card comes from the vendor's own status feed. When a service has a public Downdetector page, we link to it and surface a small spike indicator if the scraped page shows one. That's the entirety of our crowd-source integration.
- Not affiliated with any vendor we track. Trademarks belong to their owners. We just point at the feeds those vendors publish for exactly this purpose.
- Not a paid product. There are no ads, no analytics scripts, no accounts. Preferences (pinned services, hidden services, custom order) are saved in your browser's localStorage and never sent anywhere.
Polling, caching, accuracy
- The dashboard fetches each service's status feed every 60 seconds directly from the browser when the feed is CORS-open (most Statuspage v2 endpoints).
- For vendors that don't expose a CORS-open feed (AWS, Azure, Auth0, PostHog, PagerDuty, a handful of Statuspage v1 holdouts), the browser hits a small proxy on this server which normalises the payload.
- Historical incident data is polled on a 15-minute cadence and stored as JSON in the repo so it survives restarts and is auditable.
- Downdetector spike detection scrapes a single
PogoConfig.outageboolean off the public status page; results are cached for 10 min to be a good citizen. - If a source goes silent, the source attribution line on each card turns amber after 2 min, red after 5 min — so silent-but-broken polls are visible at a glance instead of looking identical to fresh ones.
Costs & sustainability
whatisdown runs on a single small Fly.io machine plus modest egress. It costs roughly the price of a coffee per month to keep online. No salary, no funding, no team — it exists because checking 40+ status pages individually every time an LLM call mysteriously fails was no longer tolerable.
The fastest way to support it for free is to embed a service badge in a README somewhere — every embed is a fresh impression and a little SEO weight.