Error Budgets in SRE
The Core Concept
An Error Budget turns an abstract philosophical debate (“Is the service reliable enough?”) into an objective metric: $$\text{Error Budget} = 100% - \text{SLO}$$
For example, if the Service Level Terminology: SLI, SLO, & SLA SLO is 99.9% availability over a 30-day window:
- The allowable failure rate is 0.1%.
- Over 30 days (43,200 minutes), the service can be down or degraded for up to 43.2 minutes.
How Error Budgets Align Incentives
Traditionally, Product Developers want to ship features fast (driving instability), while Operations wants to freeze changes (driving stagnation).
The Error Budget bridges this conflict:
- Budget Remaining ($> 0$): The team can innovate aggressively, ship experiments, deploy canary rollouts, and accept transient risks.
- Budget Exhausted ($\le 0$): Deployments for new non-critical features are temporarily paused. Engineering focus pivots 100% to reliability: fixing bugs, technical debt, automated testing, and infrastructure hardening.
Burn Rate & Alerting
Rather than alerting on transient spikes, modern SRE alerts trigger based on Error Budget Burn Rate:
- Burn Rate 1: Consumes 100% of the budget exactly over the SLO period (e.g., 30 days).
- Burn Rate 14.4: Consumes 100% of the 30-day budget in just 2 days (requires urgent daytime page).
- Burn Rate 36: Consumes 100% of the 30-day budget in 20 hours (requires instant pager duty escalation).