The Uptime Budget: How Much Downtime 99.9% Actually Buys (And How to Spend It)
Most teams promise "99.9% uptime" without ever doing the math. Nine-nine-point-nine means 43 minutes and 50 seconds of downtime per month — that's the whole budget. Every deploy that 502s for two minutes, every migration that runs long, every cable someone pulls: it all spends from the same 43 minutes. Teams that never write the number down are always surprised by it. Here's the checklist to make yours a budget you actually manage.
The downtime budget — copy this
- Pick one number and publish it. 99% = 7h 12m/month. 99.5% = 3h 36m. 99.9% = 43m 50s. 99.95% = 21m 55s. Choose the number your customers actually experience today — not the aspirational one. An SLO nobody believes is worse than an honest one.
- Measure from the customer's side. The budget is spent when a customer can't use the product, not when a host is down. An internal replica failing while users see nothing spends nothing. If you can't measure from outside, that's finding #0 — an external check is the whole measurement.
- Write the one-line ledger per incident. Date, minutes, cause, was it customer-visible (y/n). At the end of each month you sum one column. Ten lines a quarter is the entire SLO governance most small teams need.
- Plan maintenance inside the budget. Want a 20-minute database migration window? That's half the 99.9% budget, in one shot. Either schedule it deliberately and say so, or drop the promise to 99.5% and sleep better. Pretending maintenance doesn't count is how SLOs become fiction.
- Spend deploys out of the same wallet. If your deploys cause a visible blip, each one costs budget. Ten deploys a week at 30 seconds each is 25 minutes a month — more than half of 99.9%. Making deploys zero-downtime isn't a luxury; it's how you keep budget for real incidents.
- Set the burn alarm, not the perfection alarm. Alert when you've burned 50% of the monthly budget in the first week — that pace means you'll breach. Don't alert on every minute of downtime; alert on pace.
- Breach → short written review, not shame. When the budget is spent, the review is three questions: what spent it, what would have prevented it, and is the SLO still the right promise. Fix or renegotiate — never quietly ignore.
The one-line uptime ledger
| Date | Minutes | Cause | Customer-visible | Would have prevented |
|---|---|---|---|---|
| 2026-09-04 | 6 | Deploy rollback blip | yes | Pre-deploy smoke check (now added) |
| 2026-09-09 | 18 | Disk full on db-01 | yes | Disk alert at 80% — existed, was SEV3 |
| 2026-09-14 | 4 | TLS cert renewal | no | n/a |
The rules that keep the budget honest
- The budget is shared. Deploys, maintenance, and incidents all spend from it. The moment one team believes their downtime "doesn't count", the number stops meaning anything.
- Round up, in the customer's favor. 3 minutes of errors counted as 5. Cheap insurance against lying to yourself, and it makes the ledger fun to keep instead of a defense case.
- Renew the promise yearly, out loud. Your product in 12 months won't match today's. An SLO reviewed once a year is a contract you can keep; one set in stone is a breach you scheduled.
---
The Ops Starter Kit Vol. 2 ($27) includes the monitoring pack — the uptime ledger, burn-rate alerts, and the maintenance-window calendar this checklist plugs into — launch week: 30% off any paid kit with code HIVE-LAUNCH30 at checkout.