The formulas
Availability is the share of a period in which the service was working:
availability = (total time - downtime) / total timeAllowed downtime for a target is the same formula turned round:
allowed downtime = (1 - target) x periodFor a 30-day month the period is 30 x 24 x 60 = 43,200 minutes. For a 365-day year it is 525,600 minutes.
Example: a target of 99.9 percent is 0.999. Allowed downtime in a 30-day month is (1 - 0.999) x 43,200 = 0.001 x 43,200 = 43.2 minutes.
A table to keep
| Target | Allowed downtime in 30 days | Allowed downtime in a 365-day year |
|---|---|---|
| 99 percent | 7 h 12 min | 3 d 15 h 36 min |
| 99.5 percent | 3 h 36 min | 1 d 19 h 48 min |
| 99.9 percent | 43 min 12 s | 8 h 45 min 36 s |
| 99.95 percent | 21 min 36 s | 4 h 22 min 48 s |
| 99.99 percent | 4 min 19 s | 52 min 34 s |
Check one: 99.99 percent is (1 - 0.9999) x 43,200 = 4.32 minutes, which is 4 minutes 19 seconds. Check another: 99 percent over a year is 0.01 x 525,600 = 5,256 minutes, which is 87.6 hours or 3 days 15 hours 36 minutes.
A calendar month can be 28 to 31 days, so say which period the target uses.
Turning downtime back into a percentage
If a site was down for 95 minutes in a 30-day month, availability is (43,200 - 95) / 43,200 = 0.99780, or 99.78 percent. That misses a 99.9 target (43.2 minutes) by 51.8 minutes.
Systems made of parts
A website rarely stands alone. It depends on DNS, a CDN, a host, a database, a payment provider.
In series (all must work), availabilities multiply:
A_total = A1 x A2 x A3 ...Three components at 99.9 percent each give 0.999 x 0.999 x 0.999 = 0.997003, or 99.70 percent. A chain is always less available than its weakest part. A client who wants 99.9 percent for the whole site needs better components than 99.9 percent.
In parallel (any one is enough), unavailabilities multiply:
A_total = 1 - (1 - A1) x (1 - A2)Two independent servers at 99 percent each give 1 - 0.01 x 0.01 = 0.9999, or 99.99 percent. Independence is the catch: two servers in the same data centre, behind the same load balancer or sharing a database are not independent.
The questions an SLA must answer
An uptime percentage means nothing until it answers these:
- What is measured? The home page? Any page? A health endpoint? A login? Define the URL and the success condition (status code, expected text).
- From where? One location, or the result of several? The monitor’s own failures should not count against the site, and a regional issue needs a rule.
- How often? A one-minute check cannot see a 20-second outage, and a failure is dated to the check interval. With a five-minute interval, each detected outage is at least one interval long in the arithmetic of most tools, so the measured downtime is coarse.
- What is excluded? Planned maintenance windows, force majeure, problems at the client’s own provider, a payment gateway.
- What counts as partial? Slow, degraded, one region down.
- What is the period and how are credits calculated? Month, quarter; service credit or just a report.
- Who produces the evidence? If the agency measures its own uptime, the client may reasonably doubt it. A report where every number traces to a stored check answers that.
Pitfalls
- Promising a number you do not control. If hosting is the client’s, the agency’s promise is about its response, not the server. A response-time commitment (acknowledge within 30 minutes) is often more honest than an uptime figure.
- Averaging across sites. One site down for a day in a portfolio of fifty still means one client had a day of downtime.
- Rounding up. 99.78 percent is not “about 99.9”. Report two decimals, and the minutes.
- Counting only full outages. A checkout that fails with a 500 while the home page loads is downtime for a shop.
- Treating “no data” as up. A gap in measurements is unknown, not 100 percent. A report that fills gaps with success is misleading. Count it and mark it.
- The percentage of a short month. A target of 99.9 percent allows less downtime in February than in March.
A sensible way to write the clause
- Name the measured URL and the success condition.
- State the period, the allowed downtime in minutes and the formula.
- State the measurement interval and locations, and the exclusions.
- Say what happens when the target is missed (a report, a credit, a review).
- Attach the monthly report as the evidence.
Google’s SRE book treats an availability target as both a minimum and a maximum, says that 100 percent is probably never the right target, and notes that an incremental improvement in reliability may cost 100 times more than the previous one. It also observes that a user on a smartphone that is 99 percent reliable cannot tell the difference between 99.99 and 99.999 percent. That is a reason to ask what the client’s business needs, not to start at the highest number.
How Beamfar helps
Beamfar computes each site’s uptime for the monthly report from stored checks and states the method; periods with no valid measurement are shown as “data unavailable” instead of being counted as up. A site is counted as down only when two regions agree, and the report lists what each region saw. It does not write the SLA clause for you or promise any availability figure.
Questions
How many minutes of downtime does 99.9 percent allow?
43.2 minutes in a 30-day month, from (1 - 0.999) x 43,200 minutes, and about 8 hours 46 minutes in a 365-day year.
What is the formula for allowed downtime?
Allowed downtime = (1 - target availability) x length of the period. Use the same unit for both, such as minutes.
Why is a chain of 99.9 percent services less than 99.9 percent?
In a series every part must work, so availabilities multiply. Three parts at 99.9 percent give 0.999 cubed, about 99.70 percent.
Should an agency promise a specific uptime percentage?
Only for parts it controls and can measure. Many agencies prefer to commit to monitoring, response time and a monthly report, and to define the uptime measure and exclusions in writing when a client asks for a number.
Sources
Read on . Standards and vendor pages change; confirm the current text before you rely on it.