waynetools

Uptime / SLA Calculator — Downtime per 99.9%, 99.99% & Composite SLA

Turn an SLA percentage into the exact downtime it allows per day, week, month or year — or go the other way and turn an actual outage into the uptime percentage it cost you. Combine multiple services in series or parallel, and track a remaining monthly error budget.

Quick answer: downtime = period length × (1 − uptime%/100). At 99.9% uptime that's 8h 45m 36s of downtime per year, 43m 48s per month, 10m 5s per week, and 1m 26s per day. Every extra "nine" cuts allowed downtime roughly tenfold.

Updated 2026-07-11 · Built by Wayne

Client-side only Uptime → downtime Downtime → uptime Composite SLA (series / parallel) Monthly error budget

1. SLA % → allowed downtime

Enter an uptime percentage to see the downtime it allows across every period.

Per day
Per week
Per month
Per year

Month = year ÷ 12 (≈30.44 days), year = 365 days. Matches the figures published by most SLA reference sites.

2. Outage duration → uptime %

Had an outage? Enter how long it lasted and over what period to see the resulting uptime percentage.

Resulting uptime
Nearest common SLA

3. Reference table — common "nines"

Allowed downtime for every SLA tier hosting providers and enterprise contracts typically publish.

UptimeDowntime / dayDowntime / weekDowntime / monthDowntime / year

4. Composite SLA — series or parallel

Combine several services into one effective SLA. Use series for a dependency chain (every service must be up), or parallel for redundant failover (only one needs to be up).

Combined uptime
Combined downtime / year
Combined downtime / month

5. Monthly error-budget tracker

See how much downtime you have left this month before you breach your SLA target.

Total budget
Remaining budget
Budget consumed

What "uptime" and "SLA" actually mean

Uptime is the fraction of a period a system is available, expressed as a percentage such as 99.9%. A Service Level Agreement (SLA) is a contractual promise pinned to that percentage — cloud providers, hosting companies, and internal platform teams publish an uptime target and, in many contracts, pay a service credit if they miss it. The relationship between uptime and downtime is simple arithmetic: for any period, downtime = period_length × (1 − uptime/100). A "nine" refers to how many 9s appear in the percentage: 99% is "two nines," 99.9% is "three nines," 99.99% is "four nines," and so on. Each additional nine cuts the allowed downtime by roughly a factor of ten, which is why the jump from 99.9% to 99.99% is a much bigger engineering lift than the jump from 99% to 99.9%.

Why the numbers differ from other calculators

The most common source of disagreement between SLA calculators is the definition of a month and a year. This tool uses a 365-day year and derives the "average month" as 365 ÷ 12 ≈ 30.44 days, which is the convention used by most independent SLA reference tools and reproduces the widely cited figures for 99.9% (8h 45m/year, 43m 48s/month). If you need downtime for an exact calendar month — say, credits under a specific billing cycle — use the reverse calculator and enter the exact number of days for that month via the day/week period options, or scale the yearly figure by (days_in_month ÷ 365).

Worked examples

Example 1 — Forward: what does 99.95% allow?

Uptime target: 99.95%. Downtime fraction = 1 − 0.9995 = 0.0005.

Per day:   86,400 s × 0.0005 = 43.2 s               → 43.2 seconds
Per week:  604,800 s × 0.0005 = 302.4 s              → 5m 2.4s
Per month: 2,628,000 s × 0.0005 = 1,314 s            → 21m 54s
Per year:  31,536,000 s × 0.0005 = 15,768 s           → 4h 22m 48s

So a 99.95% SLA gives you 21 minutes 54 seconds of downtime per month to work with — that's your error budget for the tool below.

Example 2 — Reverse: a 22-minute outage this month

Downtime: 22 minutes in a 30.44-day month. Month length = 2,628,000 seconds. 22 minutes = 1,320 seconds.

Downtime fraction = 1,320 / 2,628,000 = 0.00050228...
Uptime = (1 − 0.00050228) × 100 = 99.949771...%
Rounded: 99.9498% uptime for the month

A single 22-minute incident in an otherwise perfect month lands you at roughly 99.95% — right at the edge of a three-and-a-half-nines SLA, and already over budget against a 99.95% target since the 21m54s allowance is exceeded by 6 seconds.

Composite SLA: series vs. parallel

Real systems are rarely a single service — they're a chain of dependencies, sometimes with redundancy layered on top. Composite SLA math tells you the actual effective uptime of the whole system, which is very different from any single component's published number.

  • Series (dependency chain): if your API depends on a database and a queue, and any one of them being down takes the whole request down, multiply the uptime fractions: combined = u1 × u2 × u3. Three services each rated at 99.9% combine to only 99.7% — worse than any individual component, because all three must be up at once.
  • Parallel (redundant failover): if two regions run active-active and only one needs to be up, multiply the downtime fractions instead: combined = 1 − (d1 × d2) where di = 1 − ui. Two independent 99.9% regions combine to 99.9999% — far better than either region alone, because both would have to fail at the same time.

Example 3 — Two-service composite

Service A = 99.95%, Service B = 99.9%.

Series:   0.9995 × 0.999 = 0.9985005   → 99.85005% combined (worse than either alone)
Parallel: dA=0.0005, dB=0.001
          1 − (0.0005 × 0.001) = 1 − 0.0000005 = 0.9999995 → 99.99995% combined (better than either alone)

How to use the monthly error budget

An error budget treats your SLA target as a spendable allowance rather than a pass/fail gate. Pick a target (e.g. 99.95%), a period (usually month), and enter downtime already used from incidents this period. The tracker shows the total budget, what's left, and what percentage of the budget you've already spent — the same mental model SRE teams use to decide whether to freeze risky deploys or keep shipping.

Frequently asked questions

How much downtime does 99.9% uptime actually allow?

99.9% uptime (three nines) allows about 1 minute 26 seconds of downtime per day, 10 minutes 5 seconds per week, 43 minutes 48 seconds per month (using a 30.4-day average month), and 8 hours 45 minutes 36 seconds per year. The math: downtime = period length × (1 − uptime fraction), so for a year that's 365 days × 24 hours × 0.001.

Why does my downtime-to-uptime result differ slightly from other calculators?

The difference almost always comes from how a month or year is defined. This tool uses a 365-day year and derives the month as year ÷ 12 (about 30.44 days), matching how most SLA and status-page tools compute figures. A calculator using flat 30-day months or 365.25-day years will land a few seconds off.

How is composite SLA calculated for services in series?

When the whole request fails if any dependency is down (a serial chain, like an API calling a database calling a queue), combined uptime is the product of each service's uptime fraction: combined = u1 × u2 × u3. Chaining dependencies always lowers effective uptime below the weakest link.

How is composite SLA calculated for services in parallel?

When services are redundant and only one needs to be up (active-active replicas, multi-region failover), combined downtime is the product of each service's downtime fraction: combined = 1 − (d1 × d2 × d3) where each di = 1 − ui. Redundancy always raises effective uptime above the strongest individual component.

What is an SLA error budget and how do I read the remaining budget?

An error budget is the total downtime a target SLA allows for a period, treated as a spendable allowance. If your target is 99.95% for a 30-day month, the budget is about 21 minutes 54 seconds. If an incident already used 8 minutes, remaining budget is about 13 minutes 54 seconds, roughly 63% left before you breach the SLA.

Does this tool send my SLA numbers or incident data anywhere?

No. Every calculation runs in plain JavaScript in your browser on the numbers you type in. There is no server call, no analytics tied to your inputs, and no network request after the page loads, so it's safe to use with real internal SLA targets or incident numbers.

Should I use calendar days or a 30.44-day average month for SLA credits?

Most published cloud SLAs define the billing period as the actual calendar month, so a 28-day February has a smaller downtime allowance than a 31-day month at the same percentage. This tool defaults to an average 30.44-day month for quick comparisons, but you can switch the period selector to Day, Week, or Year for more exact figures.

More tools