The Nines Table (memorize this)
availability downtime/year downtime/month
99% 3.65 days 7.31 hours
99.9% 8.77 hours 43.8 minutes
99.99% 52.6 minutes 4.38 minutes
99.999% 5.26 minutes 26 seconds
each extra nine ≈ 10× harder. the table reframes every
requirement conversation: "we need five nines" becomes
"we can be down 26 seconds per MONTH" — suddenly negotiable.
Composite Availability: The Multiplication Trap
chained dependencies multiply their UNAVAILABILITY... no —
their availability multiplies, so unavailability compounds:
request path: LB → api → auth svc → db
.999 × .999 × .995 × .999 = .992 ← THREE nines lost!
serial chains are availability quicksand:
every dependency you ADD taxes the whole path.
parallel redundancy adds instead:
two independent instances either-up:
1 − (1−a)² : .9 → .99, .99 → .9999
redundancy is the only thing fighting multiplication.
Designing to a Budget
work BACKWARD from the target:
target: 99.95% for checkout flow (= 4.4 min/month)
budget allocation across the path:
LB/network: 0.01% budget (managed, strong)
api tier: 0.02% (redundant, stateless)
payment gateway: 0.05% ← EXTERNAL! biggest risk
database: 0.02% (multi-AZ)
external dependency eating half your budget?
→ graceful degradation paths become mandatory features,
not nice-to-haves (queue-and-retry payment capture).
error budgets (SRE formalization) then SPEND these numbers:
move fast while budget remains; freeze when spent.
Where Availability Dies in Practice
| Culprit | Share of real outages |
|---|---|
| Config/deploy errors | huge (human change is #1) |
| Cascading overload | retry storms, missing timeouts |
| Single points of “hidden” failure | shared cache, single region DNS |
| Dependency failures | third parties, networks |
note what's ABSENT: hardware failure barely registers —
redundancy solved it decades ago.
modern availability engineering is mostly
CHANGE SAFETY + LOAD SHEDDING discipline.
Interview Framing
“How available does your design need to be?” scored moves: translate nines into downtime via the table, composite-multiply the request path and SHOW the number, allocate budget with the largest slice to the weakest link (usually external), name degradation paths for budget overruns. Doing this arithmetic unprompted separates designers from diagram artists.
Premium Content
Unlock Availability Budgets and all premium lessons with a subscription.
All premium lessons
Ad-free experience
Priority support
From ₹199.99/year — See plans