Service Level Terminology: SLI, SLO, & SLA
The Three Concepts Defined
┌────────────────────────────────────────────────────────┐
│ SLI (Service Level Indicator) │
│ "A carefully defined quantitative measure of service" │
│ Example: Successful HTTP requests / Total HTTP requests │
└───────────────────────────┬────────────────────────────┘
│
▼ Target Threshold
┌────────────────────────────────────────────────────────┐
│ SLO (Service Level Objective) │
│ "A target value or range for an SLI agreed internally" │
│ Example: 99.9% of requests must succeed over 30 days │
└───────────────────────────┬────────────────────────────┘
│
▼ Business / Contractual
┌────────────────────────────────────────────────────────┐
│ SLA (Service Level Agreement) │
│ "An explicit contract with users outlining consequences│
│ Example: If availability drops below 99.5%, refund 10% │
└────────────────────────────────────────────────────────┘
1. SLI (Service Level Indicator)
A factual, real-time metric measured over a window of time: $$\text{SLI} = \frac{\text{Good Events}}{\text{Total Events}} \times 100%$$
- Request-driven services: Availability (HTTP 2xx vs 5xx), Latency (95th/99th percentile < 200ms).
- Data-processing pipelines: Freshness, correctness, throughput.
- Storage: Durability, availability, latency.
2. SLO (Service Level Objective)
The target reliability level set by product management and SRE teams jointly:
- E.g., “99.9% of
/checkoutHTTP requests respond in < 300ms over a rolling 30-day window.” - Crucial rule: SLO should always be tighter than SLA ($\text{SLO} > \text{SLA}$) to provide an operational buffer before financial penalties occur.
3. SLA (Service Level Agreement)
The external business or legal contract signed with paying customers:
- Contains financial penalties, subscription credits, or termination clauses if breach occurs.
- SREs rarely interact with SLAs directly; their daily work centers on maintaining SLOs and managing Error Budgets in SRE.