Skip to content
AlertPing

SLAs

Error budget: the formula, burn rate alerts, and the policy that makes it work

| SLAs | 11 min read

An error budget is the amount of downtime or errors your reliability target allows over a period. If your goal is 99.9% uptime, you are accepting 0.1% of unreliability, which works out to about 43 minutes of downtime a month. That 43 minutes is your error budget. As long as you have budget left, you can ship fast; when you burn through it, the team's job shifts to fixing reliability instead of adding features.

The idea comes from Google's site reliability engineering practice, and it exists to settle an argument that every team has: developers want to ship, operations wants stability, and the two pull against each other. An error budget replaces the argument with a number. Nobody has to win the debate over how reliable is reliable enough, because the target is agreed up front and the budget just tracks how much of it you have spent.

What is an error budget?

An error budget is the inverse of your reliability target. Set a service level objective, or SLO, of 99.9% uptime and you are explicitly saying that 0.1% downtime is acceptable. The error budget is that 0.1%, expressed as real time or a count of failed requests. It reframes reliability from a vague ideal into a quantity you can measure, spend and run out of.

The key insight is that 100% is the wrong target. A service that never fails is impossibly expensive to build and, past a point, users cannot tell the difference. The error budget makes that trade-off explicit: a small, deliberate allowance for failure that you get to spend on shipping, maintenance and the normal risk of running software.

How do you calculate an error budget?

Take your SLO, subtract it from 100%, and apply the remainder to the time window. The math is straightforward once you see the fractions of a month laid out.

Uptime SLO Error budget Downtime allowed per month
99%1%About 7 hours 18 minutes
99.9% (three nines)0.1%About 43 minutes
99.95%0.05%About 21 minutes
99.99% (four nines)0.01%About 4 minutes 20 seconds
99.999% (five nines)0.001%About 26 seconds

You can measure the budget in time, as above, or in requests: with a 99.9% success SLO on a service handling a million requests a month, your budget is a thousand failed requests. Request-based budgets fit APIs better, because a short blip during low traffic costs fewer requests than the same blip at peak. For a fuller walkthrough of the percentages, see what counts as a good uptime percentage.

What is an error budget policy?

An error budget policy is the rule that decides what happens when the budget runs low or runs out. It is the part that gives the number teeth. A typical policy has thresholds: while budget is healthy, ship freely; when it drops below a set level, slow down risky changes; when it is exhausted, freeze feature work and spend the sprint on reliability until the budget recovers.

Without a policy, an error budget is just a dashboard nobody acts on. The policy is what turns a burned budget into a real decision: a feature freeze, a rollback, a postponed launch. Agreeing it in advance, when nobody is mid-incident, is what stops it from becoming a fight later.

alertping

You cannot budget what you do not measure

An error budget is only as honest as your uptime data. AlertPing checks from three regions and records every second of downtime, so your budget reflects reality. SMS on every plan, flat from $19 a month.

Why do teams use error budgets?

Because they end the reliability-versus-velocity standoff with data instead of opinion. When the budget is healthy, the team has proof it can afford to move fast: an error budget with room to spare is permission to ship and deploy changes aggressively, because you have measured headroom for the occasional bad release. When the budget is spent, the same data makes the case for slowing down, without anyone having to play the villain.

It also aligns incentives. Developers and operations share one number, so shipping a risky change and keeping the service up stop being separate goals owned by separate teams. Everyone is spending, or saving, the same budget.

Error budget vs SLA vs SLO

These three get tangled constantly. The SLO is your internal target, the error budget is what that target leaves you to spend, and the SLA is the external promise with money attached.

Term What it is Who it is for
SLO (objective)The reliability target you aim forInternal, the engineering team
Error budgetThe downtime the SLO allows you to spendInternal, shared across teams
SLA (agreement)The promise to customers, with credits if missedExternal, customers and sales

A healthy setup keeps the SLO tighter than the SLA, so you notice you are in trouble and act while there is still budget, well before you breach the customer promise. For the full breakdown, see SLA vs SLO vs SLI and the SLA monitoring guide.

Time-based or request-based? The distinction that trips people up

There are two ways to count, and they answer different questions. A time-based budget counts minutes the service was down, which is what an external uptime monitor measures and what almost every customer contract is written against. A request-based budget counts bad events divided by total events, which is what Google's SRE material assumes and what matches user experience more closely.

They diverge badly under partial failure. If 5% of requests fail for two hours, a time-based monitor probably records zero downtime, because its own checks mostly succeeded. A request-based budget records a real and significant spend. Neither is wrong; they measure different things. Most teams end up running a time-based budget for the contractual number and a request-based one for the engineering conversation. If the thing you are budgeting is a data pipeline rather than an API, neither works well and you want freshness, volume and schema signals instead, because a pipeline that returns stale data on time is failing without ever being down.

What is error budget burn rate?

Burn rate is how fast you are consuming the budget relative to the rate that would exhaust it exactly on schedule. A burn rate of 1 means you finish the period with the budget spent to zero. A burn rate of 2 means you run out halfway. It is a normalized speed, which is what makes it useful for alerting: the same threshold works for a 99.9% and a 99.99% service without rewriting it.

Burn rate Error rate at a 99.9% SLO Budget gone in What it usually means
10.1%30 daysExactly on plan. No action.
20.2%15 daysSlow leak. Worth a ticket.
101%3 daysSomething is actually broken.
14.41.44%About 50 hoursPage someone now.
1,000100%43 minutesTotal outage.

Those exhaustion times assume a 30-day SLO window, which is the basis Google's workbook uses, so they run marginally short against the 30.44-day average month used earlier on this page. The rank order is what matters, not the last minute of precision.

Burn rate alert thresholds that do not page you at 3am for nothing

The problem with alerting on a single burn rate over a single window is that you pick between fast and noisy or calm and late. Google's published answer is the multiwindow, multi-burn-rate alert: require both a long window and a short window to breach the threshold at the same time. The long window gives significance, the short window makes the alert stop firing once the problem is over. This is their recommended starting configuration for a 99.9% SLO.

Severity Burn rate Long window Short window Budget consumed at trigger
Page14.41 hour5 minutes2%
Page66 hours30 minutes5%
Ticket13 days6 hours10%

Read the last column, because it is the design goal. The top rule wakes a human when 2% of the month's budget is gone in an hour. The bottom rule quietly files a ticket when a slow leak has taken 10% over three days, which is the class of problem that never pages anyone and eventually eats the whole allowance. Two pages and one ticket is a deliberately small number of rules.

Four mistakes that make an error budget useless

Setting the target from ambition rather than data. If you have been running at 99.5% and you write 99.99% into a policy, you have created a budget that is exhausted permanently and a freeze everyone learns to ignore. Start from what you actually delivered last quarter. Our guide to what counts as a good uptime percentage covers where the realistic numbers sit by service type.

Measuring with a sampling rate that cannot see the budget. At 99.99% your entire monthly allowance is 4 minutes 23 seconds. A monitor checking every 5 minutes can miss the whole thing, and even a 60-second check spends roughly a ninth of that budget just noticing. The interval you measure at sets the smallest outage you can prove, which is why check frequency is a budgeting decision. That constraint is what separates monitoring tools at this tier, and it is the core of our HetrixTools alternative comparison, since HetrixTools holds a one-minute floor on every plan.

Never spending it. A team that finishes every month at 5% consumption is not winning, it is over-provisioned. Unspent budget is permission to ship faster, run a chaos test, or do the migration you have been deferring. Consistently untouched budget means the target is set too low to be informative.

Confusing the budget with MTTR. They pull in the same direction but measure different things: the budget caps total downtime, while MTTR measures how quickly you recover from each incident. You can hold a good MTTR and still blow the budget through frequency alone.

How do you track an error budget?

You track it by measuring real availability against your SLO, continuously. That means monitoring that records every outage accurately, down to the second, because a budget built on rounded or missed downtime is worse than none: it tells you that you are fine when you are not. Short check intervals matter here, since a monitor that only looks every five minutes can miss a two-minute outage entirely and quietly overstate your remaining budget.

In practice, teams pull downtime from their monitoring tool, compare it against the budget for the period, and watch the burn rate: how fast the budget is being consumed. A sudden spike in burn rate is an early warning that something is degrading, often before it turns into a full outage. That is the real value of the budget: not a report you read after the fact, but a live signal you steer by.

Start simple. Pick one SLO for your most important service, work out the monthly budget from the table above, and measure against it for a quarter. The first time you watch a bad week eat half your budget, the abstraction becomes concrete, and the conversations about what to ship and what to fix get a lot easier.

For the contractual side, the budget feeds directly into what you report to customers. If your agreement carries credits, the budget is the early warning that credits are coming, and the monthly evidence is what an uptime SLA report is for. If you are choosing tooling specifically to evidence a target, SLA monitoring software compares what the options can actually document.

Questions people ask about error budgets

What does a burn rate of 1 mean?

A burn rate of 1 means you are consuming the error budget at exactly the pace that spends all of it by the end of the SLO period, and no faster. It is the break-even rate. A burn rate of 2 spends the budget in half the period, and a rate of 10 spends it in a tenth. The measure is normalized, so the same threshold applies across services with different targets.

How do you calculate error budget burn rate?

Divide the share of budget consumed in a window by the share of the period that window represents. If 2% of a monthly budget is gone in one hour, that hour is one 720th of a 30-day month, so the burn rate is 0.02 divided by 0.00139, which is roughly 14.4. In practice you configure this as a query over your error rate rather than computing it by hand.

Should error budgets reset monthly or roll?

A rolling window, usually 28 or 30 days, is the better default. Calendar resets create a cliff where an incident on the 31st is forgiven the next morning, which encourages exactly the wrong behavior at month end. Calendar months are easier to explain to non-engineers and match billing periods, so if your budget is customer-facing, that convenience may be worth the cliff.

keep reading

More from the blog

· Comparisons

Checkly pricing 2026: how much does Checkly cost per check run, module by module

9 min read

· Comparisons

Grafana Cloud pricing 2026: how much does Grafana Cloud cost, meter by meter

10 min read

· Comparisons

Atlassian Statuspage pricing 2026: how much does Statuspage cost per subscriber, public and private

9 min read

· Comparisons

Opsgenie pricing 2026: how much does Opsgenie cost, and what you pay to replace it

8 min read

· Comparisons

PagerDuty pricing 2026: how much does PagerDuty cost per user, per plan and per year

8 min read

· Comparisons

Pingdom pricing 2026: how much does Pingdom cost per check, per plan and per year

8 min read

· Comparisons

Uptime monitoring software to pair with Datadog, New Relic or Dynatrace

8 min read

· Comparisons

How much does Splunk Observability Cloud cost? Hosts, editions and synthetic monitoring

8 min read

· Comparisons

How much does AppDynamics cost? Editions, cores and synthetic monitoring

8 min read

· Comparisons

How much does Dynatrace cost? Hosts, synthetic monitoring and log ingest

8 min read

· Comparisons

How much does New Relic cost? Users, data ingest and synthetic checks

9 min read

· Comparisons

Datadog synthetic monitoring pricing: what synthetics really cost per test run

9 min read

· Guides

Uptime guarantee vs uptime monitoring: why your host reports 99.9% when your site was down

9 min read

· Guides

Cloudflare uptime monitoring: health checks, origin monitoring, and the blind spots behind the proxy

11 min read

· Comparisons

Status page pricing: what a hosted status page actually costs in 2026

8 min read

· Guides

API monitoring best practices: what to check, how often, and how to keep alerts worth answering

10 min read

· Guides

SSL certificate 200 days: the new validity limit, and the 47-day lifetime coming next

9 min read

· Guides

SSL certificate expired: what happens and how to fix it

8 min read

· Guides

How often should you check website uptime?

7 min read

· Playbooks

Runbook template for incident response that gets used

8 min read

· Guides

What causes website downtime, and how to catch each cause

8 min read

· Playbooks

Incident postmortem template that teams actually use

8 min read

· Playbooks

On-call rotation best practices that keep engineers sane

8 min read

· SLAs

MTTR (mean time to recovery): what it is and how to cut it

7 min read

· Guides

Heartbeat monitoring: what it is and how it works

7 min read

· Guides

Status page examples and what the good ones get right

7 min read

· Guides

API uptime SLA: service credit tiers, downtime limits and what a good one costs

8 min read

· Guides

How to create a status page in 6 steps

7 min read

· Guides

Uptime SLA report: what to include, with a worked example

9 min read

· Guides

SLA service credits: what you get back and how to claim it

8 min read

· Guides

Synthetic monitoring vs uptime monitoring: what each one costs and when you need it

8 min read

· Guides

What is a status page?

6 min read

· Guides

Status page vs uptime monitoring: what is the difference?

6 min read

· Guides

What does 99.9% uptime mean?

6 min read

· Guides

What is five nines (99.999%) uptime?

8 min read

· Guides

How to calculate uptime percentage

7 min read

· Guides

SLA vs SLO vs SLI: what is the difference?

7 min read

· Guides

Downtime alerts: how to get notified by email, SMS or phone when your website goes down

7 min read

· Guides

How to monitor an online store for downtime

9 min read

· Guides

Why is my Shopify store unavailable?

8 min read

· Comparisons

Better Stack pricing: how much does Better Stack cost?

8 min read

· Comparisons

UptimeRobot pricing: how much does UptimeRobot cost?

7 min read

· Comparisons

Site24x7 pricing: how much does Site24x7 cost?

8 min read

· Guides

What is a dead man's switch in monitoring?

9 min read

· Guides

Why is my WordPress site down?

9 min read

· Guides

How to monitor WooCommerce uptime and checkout

8 min read

· Guides

How to monitor an API for errors, not just uptime

8 min read

· Economics

How much does website downtime cost?

8 min read

· Guides

How to monitor a cron job

9 min read

· Comparisons

Synthetic monitoring vs real user monitoring

8 min read

· Benchmarks

What is a good uptime percentage?

7 min read

· SLAs

99.99 uptime meaning: SLAs and the real cost of each nine

8 min read

· Guides

How to monitor website uptime

8 min read

· Playbooks

Incident communication examples, templates and outage communication best practices

9 min read

Know the second your site goes down

Checks every 30 seconds, confirmed from 3 regions, alerts on every channel. Running in under a minute.

See pricing