A service level objective (SLO) is a target for how reliably a service should perform over a period, such as “99.9% of card authorisations succeed over 30 days”. It is measured with a service level indicator (SLI) and leaves a small allowance for failure, called the error budget.
Parts of an SLO
- The SLI: what you measure, such as the share of requests that succeed in under 300 ms.
- The target: 99.9%.
- The window: rolling 30 days.
Allowed downtime by target
| SLO target | Error budget | Allowed downtime per 30 days |
|---|---|---|
| 99% | 1% | 7 h 12 min |
| 99.5% | 0.5% | 3 h 36 min |
| 99.9% | 0.1% | 43 min 12 s |
| 99.95% | 0.05% | 21 min 36 s |
| 99.99% | 0.01% | 4 min 19 s |
| 99.999% | 0.001% | 26 s |
- 99%7 h 12 min
- 99.5%3 h 36 min
- 99.9%43 min 12 s
- 99.95%21 min 36 s
- 99.99%4 min 19 s
- 99.999%26 s
Each extra nine allows ten times less downtime.
Good SLOs
Good SLOs are set from what users notice, start a little below current performance, and have a named owning team.
How SteadyNines keeps SLOs met