LEARN

SLA vs. SLI vs. SLO: Understanding Service Levels

In our service-driven world, businesses must provide the best user experience possible. Great service helps you retain long-term customers while also growing your customer base — to  keep tabs on service performance, a few key metrics and signals come into play.

Service Level Agreements (SLAs), Service Level Objectives (SLOs), and Service Level Indicators (SLIs) are metrics all about the products and services that businesses promise and how those businesses monitor progress on meeting performance and quality objectives.

In this article, we’ll explore the differences between SLAs, SLOs, and SLIs, as well as the challenges and best practices in implementing them in your organization.



What are SLAs?

A service level agreement (SLA) is an agreement between a service provider and its customers. It is based on specific service commitments, such as resolution time for customer cases, service uptime and website responsiveness. Each SLA is a specific “promise” to the customer: not all SLAs are the same.

SLAs can greatly vary according to the industry and the service provider. The business or legal teams of the service typically prepare SLAs for paid and available services of the company. These SLAs include the following key parts:

  • Scope and outcome is the description of the service provided by the company and what customers can expect.
  • Metrics includes performance metrics like resolution time, error rates, response time, and uptime percentage. These metrics measure the performance of the service.
  • Penalties or remedies describes the consequences of failing to meet the SLAs for the service. For example, it can include customer incentives such as service percentage credits, extensions, and financial penalties. 
  • Termination and exit strategy defines how and in what terms either party can terminate the agreement and migrate to a new service provider.
  • Exclusions outlines which scenarios that the defined commitments do not apply.
  • Definitions includes any specific and technical definitions that are described in the SLA. 

SLAs are written by the business or legal team of a company, so it’s important to collaborate with tech teams to avoid any technical gaps in defining them. 


What are SLOs?

A service level objective (SLO) is what the service agrees to provide for its users regarding specific measurements. These measurements include metrics such as:

Compared to SLAs, SLOs define a specific value for each of those individual promises. An SLA is a formal agreement set by a service provider for the performance or quality of a service. On the other hand, SLOs are clear targets that you as the provider set internally to evaluate if the SLAs are being met. 

For example, the following is part of an SLO provided by AWS for its individual EC2 instance.

  • Uptime Percentage - Less than 99.5% but equal to or greater than 99.0% 
  • Service Credit Percentage - 10%
  • Additionally, there will be no charge if the EC2 is unavailable for more than 6 hours without customers having to request credits.


What are SLIs?

Service level indicators (SLIs) are the key indicators that measure the performance of the service. They help assess if the company achieved the defined SLOs. 

Compared to defined SLAs, SLIs are the actual or historical values . If the values are below the defined SLOs, there is a problem with the service. So, you can optimize the service to meet the SLO or adjust the SLO for more value.  

For example, in the previous AWS EC2 example, SLO is less than 99.5% but equal to or greater than 99.0%; the SLI would be the actual measurement of the service uptime, perhaps 99.26%.


SLA vs. SLI vs. SLO: Key differences

The following table summarizes the key differences between SLAs, SLOs, and SLIs.

 

SLA

SLO

SLI

Purpose

Agreements made with the clients for service commitments 

Internally focused objectives the service aims to provide to the clients. Serves as benchmarks to measure performance.

Actual values of SLOs to measure the performance of the service

When to use

Suitable for paid services 

Both free and paid services

Required if SLOs are defined to measure the performance

Focus

Scope, metrics, legal and financial consequences

Specific target to meet the SLAs

Actual data to assess the performance

Examples

Uptime Percentage, Availability, Resolution Time

Response time less than or equal to 300ms, error rate is less than 2%

Average Response time = 250.1ms

Uptime Percentage = 98.9%

Flexibility

Less flexible to change as changes require agreement between service providers, legal teams, and clients

Flexible than SLAs. It can be updated according to technological and service requirements. 

More flexible than SLOs. It can be adjusted according to changes in performance requirements.

While each of these “metrics” can apply across different types of businesses and services, one of the more common places you might find them is in a site reliability engineering (SRE) context. Because there is no SRE success without availability, SLIs, SLOs and SLAs are critical tools for SREs looking to quantify just how reliable a system is performing over time. 

 

Whatever the case, there are some challenges with effectively measuring and applying these metrics in any organization.


SLA vs. SLI vs. SLO challenges

Let’s dive into some of the challenges you might encounter when dealing with each of these metrics:

Challenges for SLAs

Less collaboration between legal and tech teams can lead to unrealistic SLAs
SLAs are created and defined by a company’s legal or business teams, who typically lack the technical background of the service. It can lead to unrealistic SLOs, which are difficult to achieve.

Suppose a legal team defines the availability as 99.999% of the time. This value can be solely the legal team's perception of high availability, overlooking the potential challenges that you might face to achieve it, like software, hardware, network failures and dependencies with third-party services. 

Keeping the SLAs up-to-date with changing customer needs and technological evolutions
As technology is rapidly changing, keeping up with such drastic changes can be challenging with the available resources of the service provider and budget constraints. This is the same for changing customer needs, which require constant adjustment and renegotiation.

Costs
Companies must invest in human resources and new technologies to meet SLAs as planned. It could incur additional costs. 

Challenges for SLOs

Striking the right balance between complexity and simplicity
SLOs can sometimes be too complicated to measure. If they are not well-defined initially, teams will have to waste time comprehending how to achieve them. Besides, SLOs that are easy to meet will not help achieve the desired customer expectations. Thus, defining a balanced SLO can be challenging.

Selecting the right set of metrics
Suppose you do not choose the metrics that align with the business goal and customer expectations of the company. Then, those SLOs will not reflect what the company promises to its customers. 

Keeping up with external dependencies can be challenging
Services often depend on third-party components or services. If these external dependencies fail, the SLO compliance of the service might be impacted, even if the internal components work perfectly.

Challenges for SLIs

Too many metrics
While too many metrics can complicate things, they will make little difference to the user.

Some metrics can be difficult to measure
Some performance metrics can be challenging to measure accurately. For example, measuring user engagement, latency in real-time applications, and overall user satisfaction can be difficult.

Accurately measuring the values can be challenging
It is important to measure the performance of each SLO metric correctly. Accurate and reliable testing and monitoring strategies will be required. 



SLA vs. SLI vs. SLO best practices

While challenges may arise, SLAs, SLIs and SLOs alike are incredibly valuable when providing any service or product. Following these best practices can help you get the most out of these metrics:

SLA best practices

  • Foster better collaboration between the legal and tech teams. During the SLA creation process, legal teams must consult the tech teams, taking their input on achievable uptime targets, potential challenges, and realistic mitigation strategies.
  • Consider the capabilities of the service. Ensure your service has the necessary resources to meet the SLAs. 
  • Consider external factors. For example, consider the client response time and slowness that are not within the control of the service when defining SLAs for incident resolution time. 

SLO best practices

  • Improve the SLOs continuously. Monitor, analyze, and adjust the SLOs according to client feedback. Analyzing real-time data will help improve your system performance.
  • Choose few, choose valuable SLOs. Every SLO is not required to achieve customer expectations. Instead, be strategic! Choose only the highest-priority SLOs that directly affect the customer. 
  • Clearly define SLOs. SLOs must be clearly defined and measurable. They should also align with the business goals. 

SLI best practices

  • Track SLIs in real time. Real-time values yielded by monitoring and alerting systems for SLAs provide a faster way to identify and resolve issues quickly. 
  • Visualize & report. Present SLI data through clear visualizations and regular reports. This helps stakeholders understand performance trends and make informed decisions.
  • Maintain the accuracy and consistency of values. Inaccurate or inconsistent data can lead to misinformed decisions. Robust monitoring systems help collect accurate data consistently. 

Summing up 

To recap, SLAs are the overall agreements between providers, while SLOs are the actual promises the services make to clients and SLIs are the actual values that help measure performance. 

As with most business or IT concepts, following best practices can help you navigate common challenges in SLAs, SLOs and SLIs. By putting these metrics to use effectively, you can help ensure your organization is offering the most reliable and useful service possible.

What is Splunk?

This posting does not necessarily represent Splunk's position, strategies or opinion.

Shanika Wickramasinghe is a software engineer by profession and a graduate in Information Technology. Her specialties are Web and Mobile Development. Shanika considers writing the best medium to learn and share her knowledge. She is passionate about everything she does, loves to travel and enjoys nature whenever she takes a break from her busy work schedule. She also writes for her Medium blog sometimes. You can connect with her on LinkedIn.