99.99% uptime SLA
99.99% uptime allows 4 minutes 22 seconds of downtime a month, 8.6 seconds a day and 52 minutes 35 seconds a year, using a 365.2425-day year. Detecting an outage with 1-minute checks and one confirming retry takes up to 2 minutes, 46% of that monthly budget, before anyone starts fixing it.
How much downtime 99.99% allows, and what it takes to actually meet it.
Allowed downtime
| Period | Allowed downtime | Required uptime |
|---|---|---|
| Daily | 8.6s | 23h 59m 51s |
| Weekly | 1m | 6d 23h 58m 59s |
| Monthly | 4m 22s | 30d 10h 24m 43s |
| Quarterly | 13m 8s | 91d 7h 14m 9s |
| Yearly | 52m 35s | 365d 4h 56m 36s |
Year = 365.2425 days; month = year ÷ 12 (30.44 days); quarter = year ÷ 4. Rounded down to the second.
What 99.99% takes in practice
Detection eats into the budget
Monitoring can't alert before it has seen the failure. Worst-case detection is roughly the check interval times the number of failed checks it takes to confirm (confirmation avoids paging on a single network blip).
| Check interval | Failed checks to alert | Worst-case detection | Share of the monthly budget |
|---|---|---|---|
| 5 minutes | 1 | 5m | 114.1% |
| 5 minutes | 2 | 10m | 228.2% |
| 1 minute | 1 | 1m | 22.8% |
| 1 minute | 2 | 2m | 45.6% |
| 30 seconds | 1 | 30s | 11.4% |
| 30 seconds | 2 | 1m | 22.8% |
Dependencies multiply
If your service needs two components that are each 99.99% available (say, the app and its database), the best you can expect is 99.99% × 99.99% ≈ 99.98%, which is 8m 45s of downtime a month. Every hard dependency on the request path lowers the ceiling.
Other SLA levels
| SLA | Per month |
|---|---|
| 99% | 7h 18m 17s |
| 99.5% | 3h 39m 8s |
| 99.9% | 43m 49s |
| 99.95% | 21m 54s |
| 99.99% | 4m 22s |
| 99.999% | 26s |
Know your real uptime, not just the promised one
Vigil checks every minute from several locations and confirms a failure before alerting, so detection stays a small slice of your budget. Monthly SLA reports and a public status page come included.