SLA
A written promise about how reliable a service will be, and what happens if it is not.
An SLA (service level agreement) is the part of a contract where a provider commits to a level of service: usually how much of the time it will be up, sometimes also how fast it will respond or how quickly support will answer. It also says what you get if the promise is broken, which in cloud services is almost always service credits, a discount on next month's bill, not a refund for the business you lost.
The famous number is uptime, written as a percentage. It sounds tiny but each extra "nine" matters a lot. 99% allows roughly 3.65 days of downtime a year. 99.9% (three nines) allows roughly 8.8 hours a year, or about 43 minutes a month. 99.99% (four nines) allows roughly 53 minutes a year, about 4 minutes a month. Going from three to four nines usually means running in several availability zones or regions, with automatic failover.
Engineers use two related terms. An SLI (service level indicator) is what you actually measure, like the share of requests that succeed. An SLO (service level objective) is the internal target for it, usually stricter than the public SLA so there is a safety margin. Read the fine print: an SLA defines what counts as "down", often excludes planned maintenance, and covers only that one service, not the whole system you built on top of it.
Keep in mind
- A contractual promise of service level, usually uptime, with credits if missed.
- 99.9% allows roughly 8.8 hours of downtime a year; 99.99% roughly 53 minutes.
- SLI is what you measure, SLO is the internal target, SLA is the external promise.
- Check the definitions and exclusions; credits rarely cover real losses.
Go deeper
- Service-level agreement on Wikipedia
- Service level objectives (Google SRE book)
- AWS service level agreements