SLO (Service Level Objective)

Performanceintermediateaka Service Level Objective

// Definition

An internal target for service performance — usually stricter than the SLA, giving an early-warning buffer before the contractual line is crossed. If the SLA promises 99.9% uptime, the SLO might be 99.95%, so the team reacts before customers are affected. SLOs are paired with "error budgets" — how much you're allowed to miss.

// Why it matters

The SLO is the internal line QA and SRE actually steer by — it's deliberately tighter than the SLA so breaches get caught before they become customer-facing SLA violations. QA cares because testing and alerting against the SLO (not the looser SLA) is what gives the team time to fix degradation before it costs money.

// How to test

SLO-based testing/monitoring (load tools + observability):
  • set the SLO threshold stricter than the SLA (the buffer)
  • track the error budget — how much of the allowed miss is consumed
  • alert/fail when burn rate threatens the SLO, before the SLA is at risk
  • the gap between SLO and SLA is your reaction time — test that it's enough

// Common mistakes

  • Setting the SLO equal to the SLA (no early-warning buffer left)
  • No error budget, so there's no objective "are we spending reliability too fast?"
  • Measuring the SLO only in production, never in pre-release load tests

// Related terms