When a site goes down, it feels like a unique catastrophe. It almost never is. Pull back and look across thousands of outages and the same handful of causes show up over and over — which is great news, because a known list of causes is a list you can defend against.
Here's the usual suspects, what each looks like in the wild, and the concrete way to stop it.
The usual suspects
| Cause | What it looks like | How to prevent it |
|---|---|---|
| Expired SSL certificate | Full-screen browser security warning; total block | Auto-renew and independently monitor expiry |
| Expired domain | Site (and email) vanish overnight | Auto-renew the domain; monitor its expiry date |
| DNS misconfiguration | "Server not found"; the server is fine, nobody can reach it | Monitor DNS resolution and expected records |
| Server / app errors (5xx) | 500s and 502s; deploys gone wrong | Health checks, staged rollouts, fast rollback |
| Traffic spikes | Slow then unreachable under load | Autoscaling, caching, a CDN, load testing |
| Slow / failing database | Timeouts, 504s, half-loading pages | Monitor query latency; connection limits; failover |
| Third-party dependency | A payment or API provider fails, taking you with it | Timeouts, circuit breakers, graceful degradation |
| Human error / bad deploy | "It was fine five minutes ago" | Code review, staging, feature flags, easy rollback |
If you've ever had an outage, it was almost certainly on this list. Let's look at the big ones.
The avoidable classics
Expired certificates and domains
These deserve a special mention because they're 100% preventable and 100% embarrassing. A lapsed certificate or domain takes everything down — site and email — usually on a weekend. Auto-renewal helps, but it fails silently more often than you'd think. The fix is a second, independent layer: a monitor that watches the actual expiry date and warns you weeks ahead. (We wrote a whole guide on never getting caught by an expired SSL certificate.)
DNS problems
When DNS breaks, your server is perfectly healthy — visitors just can't find it. A typo'd record, a deleted entry, or a change that hasn't finished caching can all take you offline while every server-side dashboard stays green. The only way to catch it is to monitor DNS itself.
Bad deploys and server errors
The most common self-inflicted outage: a deploy ships a bug, and suddenly everything returns 500s or 502s. The defenses are well known — review, staging, staged (canary) rollouts, and above all a fast, reliable rollback so a bad release is a five-minute blip, not an hour-long incident.
Traffic spikes
Your big moment — a launch, a feature on the news — becomes your worst moment as load overwhelms the servers. Caching, a CDN, and autoscaling absorb the surge; load testing beforehand tells you where you'll break before your customers find out.
Third-party dependencies
You're only as reliable as the services you call. A payment gateway, an auth provider, or an external API can drag you down with it. Defend with timeouts (don't wait forever), circuit breakers (stop hammering a dead dependency), and graceful degradation (lose a feature, not the whole site).
The one thing that ties it all together
Notice a pattern in that table? Nearly every cause is something you can detect early — if something is watching for it. The difference between a minor blip and a major incident is almost always how fast you found out.
You can't prevent every outage — but you can make sure you're never the last to know. Prevention reduces how often things break; monitoring reduces how long they stay broken.
Good monitoring covers the whole list: uptime and error checks for server problems, certificate and domain expiry, DNS resolution, response-time checks for overload and slow databases — all confirmed from multiple locations and alerting the right people the moment something slips.
The bottom line
| Takeaway | In one line |
|---|---|
| Outages aren't mysterious | They come from the same short list. |
| The classics are preventable | Certs, domains and DNS should never surprise you. |
| Deploys cause many outages | Stage, flag, and make rollback instant. |
| Speed beats perfection | You can't prevent everything — but you can find out first. |
Downtime is part of running anything online. But most of it is predictable, and almost all of it is catchable. Defend against the common causes, watch for the rest, and you turn "the site is down and I have no idea why" into "we caught it in three minutes and it's already fixed."
Start with Uptime Monitoring 101, or set up your first checks with the monitors guide.