Back to blog
GuidesApril 20, 2026· 6 min read· By Marcus Webb

How to Calculate Uptime Percentage: Formulas, Examples, and Common Pitfalls

A step-by-step guide to calculating uptime percentage correctly — with worked examples, the difference between raw and SLA-adjusted uptime, and the pitfalls that quietly inflate the numbers vendors publish.

The Basic Uptime Formula

Uptime percentage is the fraction of total time a system was available, expressed as a percentage. The standard formula is: Uptime % = (Total Time − Downtime) / Total Time × 100. For a 30-day month (43,200 minutes) with 22 minutes of downtime, uptime is (43,200 − 22) / 43,200 × 100 = 99.949%.

The formula is simple; the complexity is entirely in what counts as 'downtime' and what counts as 'total time'. These two definitions drive most of the gap between vendor-published uptime and the uptime your customers actually experience.

Uptime Allowances by Nines

Every additional '9' in an uptime target reduces permitted downtime by an order of magnitude. Per 30-day month: 99% uptime allows 7 hours 12 minutes of downtime. 99.5% allows 3 hours 36 minutes. 99.9% (three nines) allows 43 minutes 12 seconds. 99.95% allows 21 minutes 36 seconds. 99.99% (four nines) allows 4 minutes 19 seconds. 99.999% (five nines) allows just 25.9 seconds per month.

These numbers are worth memorizing because they immediately contextualize how aggressive a given SLA really is. A '99.9% SLA' sounds strong until you notice it permits nearly 9 hours of downtime per year — enough for a single bad incident to consume the entire year's allowance.

SLAs above 99.99% are almost always marketing-grade rather than engineering-grade. Running reliably at four nines requires multi-region redundancy, automated failover, tested chaos drills, and a substantial SRE investment. Vendors who advertise five-nines without this infrastructure are usually measuring uptime against a definition that excludes most real-world failure modes.

Worked Examples

Example 1: Simple monthly calculation. Your service was down for 18 minutes during a 30-day month. Uptime = (43,200 − 18) / 43,200 × 100 = 99.958%. This beats a 99.9% SLA easily.

Example 2: Weighted-interval uptime. Your service had three incidents: 5 minutes at full outage (weight 1.0), 12 minutes of partial degradation affecting 40% of requests (weight 0.4), and 3 minutes of degraded performance with no errors (weight 0.1, policy-dependent). Weighted downtime = 5 × 1.0 + 12 × 0.4 + 3 × 0.1 = 10.1 minutes. Uptime = (43,200 − 10.1) / 43,200 × 100 = 99.977%. This approach — used by PulsAPI — reflects customer experience more accurately than binary up/down counting.

Example 3: Rolling-window uptime. You want uptime over a rolling 90-day window. Total time = 129,600 minutes. Total downtime across the window = 84 minutes. Uptime = (129,600 − 84) / 129,600 × 100 = 99.935%. Rolling windows smooth out month-to-month variance and are what most SRE teams actually track internally.

The Pitfalls That Inflate Vendor-Reported Uptime

Vendors frequently publish uptime numbers that exceed what their customers observed. The gap comes from three main pitfalls. First, exclusion of scheduled maintenance — a window of planned downtime is often subtracted from 'total time' rather than counted as downtime, even though your customers experienced unavailability.

Second, incident-level thresholds. Many vendor SLAs define an 'incident' as requiring a minimum duration (e.g., 5+ minutes) and a minimum impact threshold (e.g., 25%+ of requests affected). A recurring 4-minute outage hitting 20% of traffic is invisible under this definition, even though customers feel it.

Third, regional scoping. A vendor with global infrastructure may publish a single global uptime number that averages across regions, hiding regional incidents that affected a large fraction of customers in a specific geography. Always ask for regional breakdowns.

The practical fix is to measure uptime yourself against the vendor's endpoints using synthetic probes. PulsAPI runs probes from multiple regions, applies weighted-interval uptime calculation, and surfaces the gap between vendor-published and real-observed uptime. For vendor contracts above $25K/year, this measurement is what you want in hand before renewal negotiations.

About the Author

M
Marcus WebbHead of Product

Marcus leads product at PulsAPI, where he focuses on making operational awareness effortless for engineering teams. Previously at Datadog and PagerDuty.

Start monitoring your stack

Aggregate real-time operational data from every service your stack depends on into a single dashboard. Free for up to 10 services.

Create Free Dashboard
How to Calculate Uptime Percentage: Formulas and Examples