CLOUD CONCEPT

Service Level Objectives

Service level objectives are measurable targets for the reliability and performance of a service over a defined evaluation period.

Cloud Concepts Hub →

What is Service Level Objectives

A service level objective (SLO) translates business expectations into a measurable target, such as successful request percentage or response time. SLOs guide architecture, monitoring, incident response, and spending by defining how much reliability a workload actually needs.

A service level objective (SLO) defines an acceptable level of service using a measurement, a target, and an evaluation window. For example, a checkout API might require at least 99.9% of eligible requests to succeed over a rolling 30-day period. A separate latency objective might require 99% of eligible requests to complete within 500 milliseconds. These targets express customer expectations more directly than infrastructure measurements such as CPU utilization.

Distinguish an SLO from a service level indicator (SLI) and a service level agreement (SLA). The SLI is the measured behavior, such as the proportion of successful checkout requests. The SLO is the target for that indicator. An SLA is an agreement that establishes service commitments and commonly specifies consequences, such as service credits, when those commitments are missed. An internal SLO is often stricter than the corresponding SLA to provide an operational safety margin, but this is a design choice rather than a requirement.

Start with business outcomes and define exactly what counts as good service. Specify the user journey, eligible requests, success criteria, measurement location, evaluation window, and treatment of maintenance and missing data. An HTTP success response does not necessarily prove that an order was recorded correctly. Similarly, a server-side latency metric may omit network delays that customers experience. Use application instrumentation and external synthetic transactions where appropriate, and document any exclusions rather than silently removing failures.

The error budget is the allowed amount of failure implied by the objective. For a request-based 99.9% success SLO, one million eligible requests permit 1,000 unsuccessful requests within the evaluation window. For a time-based availability SLO measured continuously across 30 days, 99.9% allows 43.2 minutes of unavailability, while 99.99% allows 4.32 minutes. Request-based and time-based budgets are not interchangeable because traffic varies and partial failures affect different users.

Use the target to select a proportionate cloud architecture. A revenue-generating production service may justify multiple Availability Zones, redundant application instances, load balancing, database failover, and spare capacity. A development environment may tolerate a single instance and scheduled shutdowns if its agreed service hours and recovery expectations allow them. Non-production systems that support critical releases or shared testing can still require high availability. Workload classification should reflect business impact, not labels alone.

Higher objectives usually increase infrastructure cost and operational complexity. Multi-Region deployment can address regional failures, but adds replication, routing, consistency, and failover challenges. It is not automatically necessary for every production workload. Recovery time objectives and recovery point objectives complement SLOs by specifying restoration time and acceptable data loss; they do not replace measurements of ongoing service quality.

Provider SLAs do not automatically become the application's SLA or SLO. Review each dependency's coverage, deployment prerequisites, exclusions, and failure behavior. Dependencies in a serial request path can reduce end-to-end availability, while redundancy only helps when failures are sufficiently independent and failover actually works. Multiple instances in one Availability Zone do not protect against that zone becoming unavailable.

Operationalize SLOs through dashboards, error-budget consumption alerts, and tested response procedures. Burn rate measures how quickly the service consumes its allowed failure budget relative to the expected rate; sustained rapid consumption should trigger investigation before the entire budget is exhausted. Teams can use explicit policies to prioritize reliability work or pause risky changes when the budget is depleted. Review targets with business owners as usage and consequences change, rather than treating 100% availability as a practical default.

Key aspects of Service Level Objectives

Effective SLOs combine business-aligned targets, precise measurements, error budgets, and tested resilience choices to manage service quality at an appropriate cost.

Business-driven service targets

Choose availability, latency, correctness, or freshness targets according to the impact of degraded service. Define different objectives for critical production journeys, internal tools, and non-production workloads when their business requirements differ.

Precisely defined indicators

Specify the SLI, eligible population, success threshold, and evaluation window so different teams calculate the same result. Prefer measurements that represent user outcomes rather than relying solely on infrastructure health.

Clear separation of SLI, SLO, and SLA

An SLI measures service behavior, an SLO sets its target, and an SLA establishes agreed commitments and consequences. A cloud provider's SLA does not guarantee that an application built on that provider meets its own objective.

Error budgets and burn rates

Convert the objective into an allowed amount of failure and track how quickly it is consumed. Use burn-rate alerts and an agreed error-budget policy to balance delivery speed with reliability work.

Cost-proportionate resilience

Select redundancy, capacity, and failover mechanisms that meet the required target without unnecessary complexity. Higher targets can justify multi-zone or multi-Region designs, but only when the business benefit outweighs their costs and operational risks.

End-to-end validation

Include dependencies, partial failures, and failover behavior when evaluating whether the service can meet its objective. Test recovery procedures and measure customer-visible behavior rather than assuming redundant resources guarantee availability.

Cloud services for Service Level Objectives

Amazon CloudWatch measures service behavior and tracks objectives, while Elastic Load Balancing and Amazon EC2 Auto Scaling help maintain healthy application capacity across Availability Zones. Amazon RDS Multi-AZ deployments address database availability, and Amazon Route 53 can support endpoint failover where the architecture requires it. These mechanisms must be configured and tested together: database reconnection, scaling delays, health-check thresholds, and DNS caching all affect customer-visible outcomes. Use end-to-end measurements to confirm that the combined design meets its SLO, and add resilience only where the required service level justifies the cost and operational complexity.

Amazon CloudWatch image Amazon CloudWatch

Collect application metrics, logs, and synthetic transaction results to measure service behavior. CloudWatch Application Signals supports defining and monitoring SLOs, while alarms help teams detect failures and respond to error-budget consumption.

Open Amazon CloudWatch →
Amazon EC2 Auto Scaling image Amazon EC2 Auto Scaling

Maintain desired instance capacity, replace unhealthy instances, and scale capacity with demand. Appropriate health checks, scaling policies, and multi-zone placement help protect availability and latency objectives during failures or traffic increases.

Open Amazon EC2 Auto Scaling →
Amazon RDS image Amazon RDS

Multi-AZ database deployments provide standby or replica capacity and managed failover, depending on the deployment type. Evaluate failover interruption, connection recovery, and database capacity against application SLOs rather than assuming managed failover eliminates downtime.

Open Amazon RDS →
Amazon Route 53 image Amazon Route 53

Health checks and DNS failover routing can direct clients toward healthy application endpoints. Account for health-check detection time, DNS caching, and application readiness when estimating whether failover can meet the service objective.

Open Amazon Route 53 →