---
title: Did the vendor breach its SLA? Check the downtime with the SLA Calculator
description: A provider was down for 52 minutes last month and its SLA promises 99.95% monthly availability. Did it breach? Calculate the SLA downtime allowance (21 minutes 36 seconds in a 30-day month), compare it with the outage, and work out the availability you actually got. Here's how with the free SLA Calculator, how service credits usually work, and the formula to check it yourself.
canonical: https://watchfor.io/blog/how-to-calculate-sla-downtime
---

# Did the vendor breach its SLA? Check the downtime with the SLA Calculator

2026-10-04 · WatchFor Team · Guides · guides, sla, uptime

A provider was down for 52 minutes last month and its SLA promises 99.95% monthly availability. Did it breach? Calculate the SLA downtime allowance (21 minutes 36 seconds in a 30-day month), compare it with the outage, and work out the availability you actually got. Here's how with the free SLA Calculator, how service credits usually work, and the formula to check it yourself.

To check whether an outage breached an SLA, calculate the downtime the SLA
allows for the measurement period and compare it with the outage:
allowed = minutes in the period × (100 − SLA%) ÷ 100. A 99.95% monthly SLA
allows 21 minutes 36 seconds in a 30-day month, so a 52-minute outage is a
breach, and the month's availability was (43,200 − 52) ÷ 43,200 = 99.88%.

The free [SLA Calculator](/sla-calculator) shows what any SLA percentage
allows per day, week, month and year, so you can compare tiers before you
sign and check outages against them afterwards.

## What this tool answers

*How much downtime does this SLA actually permit, and was it exceeded?*
Reach for it after a vendor outage (cloud, payments, email delivery, CDN),
before signing a contract with an availability clause, or when choosing
between a vendor's 99.9% and 99.95% tiers and wondering what the difference
is in minutes.

## A real example

### Calculating SLA downtime after a vendor outage

The scenario: your payment provider's API failed for 52 minutes on an
afternoon in September, and checkout failed with it. The contract promises
**99.95% monthly availability**. Finance asks whether you're owed a credit.
September has 30 days, which is the month length the calculator uses, so
we entered **99.95** in the [SLA Calculator](/sla-calculator):

![The SLA Calculator at 99.95% with Downtime selected: daily downtime 43s, weekly 5m 2s, monthly 21m 36s, yearly 4h 22m 48s](/blog/how-to-calculate-sla-downtime-result.webp)

| Period | Allowed at 99.95% |
| --- | --- |
| Day | 43s |
| Week | 5m 2s |
| Month (30 days) | **21m 36s** |
| Year | 4h 22m 48s |

The maths behind the month: 30 × 24 × 60 = 43,200 minutes, and 0.05% of
that is 21.6 minutes, 21m 36s.

**The answer:** 52 minutes is 30m 24s over the allowance, so yes, the SLA
was breached. The month's availability was (43,200 − 52) ÷ 43,200 ×
100 = **99.88%**. Whether that earns a credit, and how much, depends on the
credit table in the contract: credits are almost always tiered by how far
below the promise the month landed. For comparison, Amazon EC2's
region-level SLA promises 99.99% and credits 10% of the monthly bill for a
month between 99.0% and 99.99%, 30% between 95.0% and 99.0%, and 100%
below 95.0%. And credits aren't automatic: AWS, like most vendors, requires
a claim, which for EC2 must arrive by the end of the second billing cycle
after the incident.

Before filing, check the outage against the contract's definition of
"unavailable". Some SLAs count only full outages, others count error rates
above a threshold; the 52 minutes you saw may not all qualify.

## How to read the results

| What you see | What it means |
| --- | --- |
| **Uptime percentage** | The SLA level to evaluate, decimals allowed (99.95, 99.99). |
| **Display: Downtime / Uptime** | Downtime is what the SLA lets the vendor be down per period; Uptime is the time it must be up. |
| **Daily, Weekly, Monthly, Yearly** | The allowance per period. Month = 30 days, year = 365 days. Use the row that matches the contract's measurement period; most SLAs measure per month. |
| **Revenue (optional)** | Your revenue and its interval. With a value, a cost panel estimates what downtime at this level costs per hour, day, month or year. |

The calculator answers "what's allowed". To turn an outage into an
availability figure, divide: (minutes in period − outage minutes) ÷ minutes
in period.

## More ways to use it

- **Choosing a tier before you sign.** 99.9% is 43m 12s a month, 99.95% is
  21m 36s, 99.99% is 4m 19s. Price the gap against what an hour of your own
  downtime costs.
- **Checking the vendor's own report.** If their status page says
  "99.97% this month", the calculator tells you that's about 13 minutes of
  downtime, and you can compare it with what your own monitoring saw.
- **Promising an SLA downstream.** Your SLA to customers can't be stricter
  than the providers you depend on without redundancy. Check your vendors'
  allowances first.
- **Answering "is this incident a breach yet?"** During a long outage, on
  call can compare elapsed minutes with the month's remaining allowance.

## Tips and gotchas

- **Use the contract's month.** The calculator assumes 30 days. A 99.95%
  SLA allows 22m 19s in a 31-day month and 20m 10s in a 28-day February.
  EC2's SLA, for example, counts "the percentage of minutes during the
  month", so the real length applies.
- **Credits are small on purpose.** A credit is a percentage of what you
  paid that vendor that month, not of the revenue you lost. The cost panel
  shows your side of the bill; the credit rarely covers it.
- **Exclusions are where claims fail.** Scheduled maintenance, problems
  caused by your own code or network, beta features and force majeure are
  typically excluded. Read the exclusions before the incident.
- **Partial outages are the grey zone.** One region down, 30% of requests
  failing, an API slow but answering: whether those count depends entirely
  on the SLA's definition of unavailability.
- **Your evidence beats theirs.** Vendors compute availability from their
  own metrics. Timestamps from external checks against their endpoint
  (start, end, which locations failed) make a claim much easier to argue.

## Check it from the command line too

The whole check in one `awk` line: the allowance for a 30-day month at
99.95%, and the availability after a 52-minute outage:

```bash
awk 'BEGIN{m=30*24*60; d=52; printf "allowed %.1f min, used %d min, achieved %.3f%%\n", m*(100-99.95)/100, d, (m-d)/m*100}'
```

```text
allowed 21.6 min, used 52 min, achieved 99.880%
```

And how the allowance changes with the length of the month:

```bash
awk 'BEGIN{for(d=28;d<=31;d++) printf "%d days: %.2f min\n", d, d*1440*0.0005}'
```

```text
28 days: 20.16 min
29 days: 20.88 min
30 days: 21.60 min
31 days: 22.32 min
```

For the general uptime arithmetic and what each nine costs, see
[how to calculate uptime and downtime](/blog/how-to-calculate-uptime-and-downtime);
for the difference between the SLA you sign and the SLO you run on,
[SLA, SLO and SLI](/blog/sla-slo-sli).

## Keep watching it

The strongest SLA claim comes with your own timeline. A WatchFor
[HTTP monitor](/http-monitoring) pointed at the vendor's API or health
endpoint checks it from several locations on a schedule, re-checks a
failure from its other locations before opening an incident, and records
when the incident started and ended. Each monitor's **Uptime SLA** tab breaks
uptime down by day, week or month and prints as a report, counting only
confirmed critical incidents, which is the record to attach to a credit
request. [Honest SLA reports](/blog/honest-sla-reports) explains how to
read the vendor's numbers next to yours.

## FAQ

**How do I calculate SLA downtime?**
Multiply the minutes in the measurement period by (100 − SLA%) ÷ 100. For
99.95% over 30 days: 43,200 × 0.0005 = 21.6 minutes, or 21 minutes 36
seconds.

**How do I calculate SLA availability after an outage?**
(Minutes in the period − outage minutes) ÷ minutes in the period × 100. A
52-minute outage in a 30-day month gives 99.88%.

**Do SLA credits get paid automatically?**
Usually not. Most providers require you to file a claim within a deadline,
often one or two billing cycles, with the dates and times of the outage.
Check the contract's claims section.

---

Canonical page: https://watchfor.io/blog/how-to-calculate-sla-downtime · All articles: https://watchfor.io/blog/all.md · Site guide: https://watchfor.io/llms.txt
