Guides 5 min read

How to Calculate Uptime Percentage: Formula and Examples

The uptime formula, worked examples with incidents and maintenance, how to combine the uptime of several components, and how uptime, availability and reliability differ.

Uptime percentage is the time a service was up divided by the total time, multiplied by 100. A 30-day month has 43,200 minutes; with 27 minutes of downtime, uptime is (43,200 − 27) ÷ 43,200 × 100 = 99.9375%.

The formula is simple. Getting a number you can defend is harder: you have to decide what the total time is, what counts as downtime, what to leave out and how to combine several parts of a system. This guide works through each with examples, then explains how uptime differs from availability and reliability.

For a quick answer, the uptime calculator turns downtime into a percentage and a percentage into allowed downtime.

The uptime formula

Uptime % = (Total time − Downtime) ÷ Total time × 100

Total time and downtime must be in the same unit. Minutes are the practical choice for a month, seconds if you need more precision.

PeriodMinutesSeconds
Day1,44086,400
Week10,080604,800
30-day month43,2002,592,000
31-day month44,6402,678,400
Average month (30.4375 days)43,8302,629,800
Year (365.25 days)525,96031,557,600

Use the real length of the period when you report on a contract, since most SLAs are measured per calendar month. The calculator uses the average month so that targets compare fairly, which is why it shows 99.938% for the same 27 minutes.

From checks instead of minutes

If your data is a list of checks rather than outage times, uptime is the share of checks that succeeded:

Uptime % = Successful checks ÷ All checks × 100

With a check every minute, a 30-day month has 43,200 checks. If 40 of them failed, uptime is 43,160 ÷ 43,200 × 100 = 99.907%. This only works when checks run at a fixed interval, and it treats every failed check as a whole interval of downtime. With checks every five minutes, a 30-second outage either counts as five minutes or not at all.

Worked examples

Several incidents in one month

A shop had three incidents in a 30-day month: 12 minutes on the 4th, 7 minutes on the 15th and 24 minutes on the 27th. Add them up first: 43 minutes. Then (43,200 − 43) ÷ 43,200 × 100 = 99.9005%. A 30-day month at 99.9% allows 43 minutes 12 seconds, so the shop stayed within the target with 12 seconds to spare.

Excluding scheduled maintenance

If your SLA excludes maintenance, take the maintenance time out of the total, not just out of the downtime:

Uptime % = (Total time − Maintenance − Downtime) ÷ (Total time − Maintenance) × 100

An example: a 30-day month with a 2-hour maintenance window and 30 minutes of unplanned downtime. Excluding maintenance: (43,200 − 120 − 30) ÷ (43,200 − 120) × 100 = 99.930%. Counting the maintenance as downtime instead: (43,200 − 150) ÷ 43,200 × 100 = 99.653%. The same month, two very different numbers, which is why the SLA has to say which one applies.

Paused monitoring works the same way. If nobody was measuring, that time is neither up nor down, and it belongs out of the total.

Combining the uptime of several components

Most services depend on more than one thing. How you combine their uptime depends on whether they are chained or redundant.

Components in a chain

When every component must work, multiply their uptimes. A site that needs both an app server at 99.9% and a database at 99.9% can at best reach 0.999 × 0.999 = 99.8%, assuming they fail at different times. Add a payment provider at 99.9% and checkout drops to about 99.7%. Each dependency you add lowers the ceiling.

Redundant components

When either of two components can do the job, the service is down only when both are. Two servers at 99% each give 1 − (0.01 × 0.01) = 99.99% in theory. In practice they often share a network, a deploy or a configuration mistake, so they fail together more often than the math assumes. Treat the result as an upper limit, not a promise.

Don’t average across monitors

If the homepage had 100% and checkout 99.0%, an average of 99.5% describes nothing that customers experienced. Report each component on its own, and define in advance which ones make up “the service” in your SLA.

Uptime vs availability vs reliability

The three words are often used as synonyms. They measure different things, and knowing which one you mean makes the number more useful.

  • Uptime is the share of time the service was reachable and answering. It is what the formula above calculates, and what most SLAs mean.
  • Availability is the share of time the service was usable: reachable, correct and fast enough. A page that loads in 40 seconds is up but not available. If you count slow or wrong responses as failures, you are measuring availability.
  • Reliability is how long the service runs without failing, usually measured as MTBF (mean time between failures). It says how often things break, not how long they stay broken.

Availability connects the two other numbers through a classic formula:

Availability = MTBF ÷ (MTBF + MTTR)

MTTR is the mean time to recovery. A service that fails on average every 720 hours (once a month) and takes an hour to recover has 720 ÷ 721 = 99.86% availability. The formula also shows the two ways to improve it: fail less often, or recover faster. MTTR, MTTA and MTBF explained covers how to measure and improve each.

Two services with the same uptime can feel very different. One 43-minute outage a month and 43 one-minute outages a month give the same percentage, but the second breaks your users’ work every day. That is why it is worth tracking the number of incidents next to the uptime percentage.

Common mistakes

  • Measuring from inside. Server logs can’t record a request that never arrived. DNS problems, expired certificates and network failures only show up in external checks.
  • Counting every blip. A single failed check is often the network, not your service. Confirm failures with a second check before counting them as downtime, or your numbers will be lower than what users experienced.
  • Rounding up. 99.896% is not 99.9%. When you compare against a target, round down, or show enough decimals to tell them apart.
  • Checking too rarely. The check interval sets the resolution. Checking every 5 or 10 minutes can’t tell you whether you met a 99.95% month, which allows 22 minutes.
  • Checking only the homepage. A cached homepage can stay up while login or checkout fail. Monitor the paths users depend on.

Getting the numbers without a spreadsheet

Uptimecheck works out uptime the way this guide describes. Uptime monitoring checks every minute from Stockholm, Sweden, and confirms each failed check with a second one about 10 seconds later. Uptime is the share of the period without a confirmed outage; maintenance windows and paused time don’t count against it.

  • Reports show uptime, downtime and incidents per monitor for this month, last month or the last 7, 30 or 90 days, against an SLA target from 99% to 99.99%, with a CSV download. See how to run reports against an SLA target.
  • Client reports send the same numbers to the people you work for. See client reports.
  • Status pages show customers 90 days of uptime history per component. See status pages.

To see what a target allows before you commit to it, read what 99.9% uptime means or try the SLA and uptime calculator.

Stop calculating uptime by hand. Try Uptimecheck free for 14 days, no credit card required.

Questions

What is the formula for uptime percentage?

Uptime % = (total time − downtime) ÷ total time × 100. For example, 27 minutes of downtime in a 30-day month (43,200 minutes) gives 99.9375% uptime.

How do I calculate uptime from the number of checks?

Divide the successful checks by all checks and multiply by 100. With a check every minute, a 30-day month has 43,200 checks; 40 failed checks give 99.907%. It only works with checks at a fixed interval.

What is the difference between uptime and availability?

Uptime is the share of time a service was reachable. Availability is the share of time it was usable, which can also exclude slow or wrong responses. A page that takes 40 seconds to load is up but not available.

Should maintenance count as downtime?

It depends on your SLA. If maintenance is excluded, remove it from both the total time and the downtime. Internally, it can be useful to also track the number with maintenance included, since users still could not reach the service.

Keep reading

Guides 6 min read

What Does 99.9% Uptime Mean? SLA Downtime Explained

99.9% uptime allows 43 minutes and 49 seconds of downtime in an average month. What each level of nines allows per day, month and year, how SLAs measure uptime, how service credits work and how to choose a target.

Read

Guides 5 min read

500 Internal Server Error: How to Find and Fix the Cause

A 500 Internal Server Error means the application failed while handling the request. Where to find the real error message, the causes behind most 500s and how to make sure you hear about them first.

Read

Downtime is obsolete.

Set up your first monitor in under a minute, or look around the live demo first.

14-day free trial · No credit card required