SLA, SLO, and SLI
The three acronyms differ by one letter and get used interchangeably, which is a pity, because they name three genuinely different tools. Keeping them straight makes commitments safer and operations calmer.
The three terms
| Term | Stands for | The question it answers | Example |
|---|---|---|---|
| SLI | Service Level Indicator | What do we measure? | The percentage of one-minute checks that succeeded; p95 latency |
| SLO | Service Level Objective | What do we aim for, internally? | 99.8% monthly uptime |
| SLA | Service Level Agreement | What did we promise the client, with consequences? | 99.5% monthly uptime, in the contract |
- An SLI is a measurement, nothing more: a defined metric with a defined way of collecting it.
- An SLO is your own bar: a target set on an SLI that you hold yourself to. No contract, no penalties — just the standard you run to.
- An SLA is the external, contractual version, with remedies attached (what is an SLA).
How they relate
The chain runs measure → aim → promise. SLIs are the raw material; the SLO is an internal threshold set on an SLI; the SLA is the looser promise made outward. The crucial design rule: the SLO should be stricter than the SLA. If you promise 99.5% and aim for 99.8%, dropping to 99.7% breaches your objective — triggering an investigation — while the contract is still safe.
That gap is your early-warning margin, and it's measured in real time: 99.5% monthly allows about 3.6 hours of downtime, 99.8% about 86 minutes. The difference is hours you get to act in. Set SLO equal to SLA, and the first time you learn you're in trouble is when the client's credit is already due.
Practical MSP usage
- Pick SLIs you can actually collect. For most MSP work that means availability (the share of successful checks) and latency (p95). UpAll's per-minute checks are exactly this — every monitor is an SLI stream, with latency summarized as p95.
- Set the SLA by the architecture, and the SLO above it. Choose a contractual nine the infrastructure can honestly deliver (the nines of availability), then aim one notch tighter internally.
- Watch the SLO live. The console's status wall ranks monitors worst-first, so an eroding objective is visible day by day (the live status wall) instead of being discovered at month-end.
- Report the SLA. The contractual number goes into the client's SLA target in UpAll; the monthly report then shows measured uptime against it, with the incident log as supporting evidence.
Clients only ever hear about one of the three — the SLA. The other two are what let you sign it without gambling.