What is an SLO?
A Service Level Objective (SLO) is an internal reliability target expressed as a percentage of successful requests or uptime over a time window. Unlike SLAs (which are contractual agreements with customers), SLOs are internal engineering targets that define what "good enough" means for a service.
What is an error budget?
An error budget is the maximum amount of unreliability permitted by your SLO. If your SLO is 99.9%, your error budget is 0.1% — meaning 0.1% of requests can fail, or 0.1% of time can be unavailable, within your measurement window.
Error budgets serve two purposes: they give product and engineering teams a shared, quantitative way to balance reliability work against feature development, and they signal when a service needs reliability investment before new features are deployed.
Choosing an SLO target
SLO targets should reflect what users actually need, not the maximum reliability you can achieve. Setting an SLO too high wastes engineering resources on reliability work users won't notice. Setting it too low trains users to expect poor service. The right SLO is the lowest target users find acceptable.