Services

Resources

Company

SLO (service level objective)

A service level objective (SLO) is a target for how well a service should perform, measured over a time window. It is set on a service level indicator (SLI), which is a measured ratio of good events to valid events. A service level agreement (SLA) is a contract with customers that carries a penalty when it is missed.

How to calculate it

An SLI is good events divided by valid events. Suppose a service handles 1,000,000 requests in 30 days and 999,500 succeed. The availability SLI is 99.95%. If the SLO is 99.9%, the service met its target with room to spare. Latency SLOs work the same way, for example 99% of requests complete in under 400 ms. SLAs are usually set looser than the internal SLO, so the team gets warned before a contract is at risk.

Why it matters in production

An SLO turns "is the service reliable enough?" into a number everyone can check. It sets how much failure is acceptable, which is the basis for error budgets and for alerts that page only when users are affected.

See also

On the One2N blog

References

  1. Service level objectives (Google SRE book)

  2. Implementing SLOs (Google SRE workbook)

Four-panel comic explaining Service level objective. A service level objective is a target value for a measured service level indicator, such as 99.9% of requests succeeding over 30 days.