Skip to main content

SLA vs SLO vs SLI

Overview

SLA: The agreement we make with our clients or users

SLO: The objectives we must hit to meet our SLA

SLI: The real numbers on performance


SLA: Service Level Agreement

An SLA is an agreement between provider and client about measurable metrics like uptime, responsiveness, and responsibilities.

They represent the promises we are making to customers—and the consequences if we fail to live up to those promises. Typically, consequences include financial penalties, service credits, or license extensions. As we do not offer our API and or microservices to external parties we should draft our SLA as if our frontend client and/or mobile client is our end customer.

SLO: Service Level Objectives

An SLO (service level objective) is an agreement within an SLA about a specific metric like uptime or response time. So, if the SLA is the formal agreement between you and your customer, SLOs are the individual promises you’re making to that customer. SLOs are what set customer expectations and tell IT and DevOps teams what goals they need to hit and measure themselves against.

SLI: Service Level Indicator

An SLI (service level indicator) measures compliance with an SLO (service level objective). So, for example, if your SLA specifies that your systems will be available 99.95% of the time, your SLO is likely 99.95% uptime and your SLI is the actual measurement of your uptime. Maybe it’s 99.96%. Maybe 99.99%. To stay in compliance with your SLA, the SLI will need to meet or exceed the promises made in that document.