Formula Bro

Math and physics formulas, explained like you are new.


System Availability

In one sentence: System availability is the share of time a system is up and working, based on how often it breaks and how long each repair takes.

A=MTBFMTBF+MTTRA = \frac{\text{MTBF}}{\text{MTBF} + \text{MTTR}}

Read it out loud: “A equals M T B F divided by the quantity M T B F plus M T T R. A is availability, the fraction of time the system is up and working, from 0 to 1. M T B F is the mean time between failures, the average time the system runs before it breaks. M T T R is the mean time to repair, the average time it takes to get the system working again. Both times must use the same unit, such as hours.”

Before you start

The ideas and signs this page uses, explained from zero. For powers of ten, Greek letters and other notation in general, see Math basics.

Mean, or average

The mean of a list of times is their total divided by how many there are. The words ‘mean time’ in MTBF and MTTR mean ‘average time’. If three runs last 900, 1,000 and 1,100 hours, the mean is (900+1000+1100)÷3=1000(900 + 1000 + 1100) \div 3 = 1000 hours. A mean is an average over many failures, not the time of any single one.

Fractions and percent

A fraction such as 0.9980.998 is a share of a whole, and 1 means the whole. To change it into a percent, multiply by 100, which moves the decimal point two places to the right: 0.998 is 99.8%. Availability is always a number from 0 to 1, so 99.9% is written as the fraction 0.9990.999.

Hours in a year

Availability is often checked over a whole year. A common year has 365 days, and each day has 24 hours, so a year has 365×24=8760365 \times 24 = 8760 hours. A share of a year is found by multiplying the share by 8760: 0.1% of a year is 0.001×8760=8.760.001 \times 8760 = 8.76 hours. Use one unit, hours, for every time in the formula.

Failure, repair and one cycle

A failure is the moment a system stops working correctly. A repair is the work that brings it back to working. The time between failures is the time the system runs in between. The time to repair is the time it stays broken. Together they form one cycle: a stretch of working time followed by a stretch of repair, and then the next cycle starts.

Subscripts, like A1A_1 and A2A_2

A small label written below a letter is a subscript. It tells apart several quantities of the same kind. In A1A_1 and A2A_2, the letter AA is availability, and the numbers 1 and 2 name two different parts, such as two servers. The subscript is a name, so A1A_1 is one quantity and not AA times 1.

Multiplying fractions, like 0.99×0.990.99 \times 0.99

Multiplying two fractions gives a smaller fraction, because you take a share of a share. 0.99×0.99=0.98010.99 \times 0.99 = 0.9801, which is the same as 99% of 99%, or 98.01%. This is why a chain of parts, where every part must work, is less available than any one part alone.

What each symbol means

SymbolMeaning

AA

Availability: the fraction of time the system is up and working. It is a number from 0 to 1 with no unit. Multiply by 100 to get a percent, so 0.998 means 99.8%. A value of exactly 1 would mean the system is never down, which no real system reaches.

MTBF\text{MTBF}

Mean time between failures: the average time the system runs before it fails, measured in hours, days or another time unit. Larger is better, because a system that runs longer between breaks is up more of the time. The example uses 1,000 hours.

MTTR\text{MTTR}

Mean time to repair: the average time needed to bring the system back to working after one failure, in the same unit as MTBF. Smaller is better. The example uses 2 hours, so each failure costs 2 hours of downtime on average.

The formula piece by piece

MTBF\text{MTBF}

Start with the working time. MTBF is the average time the system runs before it fails. It is measured in hours, and in the example it is 1000 hours. The system is up for this long in each cycle.

MTTR\text{MTTR}

The repair time. MTTR is the average time the system stays down while it is repaired. In the example it is 2 hours. That is a short stop compared with the 1000 hours of running, which is why availability is high.

MTBF+MTTR\text{MTBF} + \text{MTTR}

One full cycle: working time plus repair time. The system runs for MTBF hours, is down for MTTR hours, and then the cycle starts again. In the example it is 1000+2=10021000 + 2 = 1002 hours for each cycle, on average.

MTBFMTBF+MTTR\frac{\text{MTBF}}{\text{MTBF} + \text{MTTR}}

The share of each cycle in which the system is up. The up time divided by the whole cycle gives the fraction of time it works. In the example it is 1000÷1002≈0.9981000 \div 1002 \approx 0.998, which is 99.8% of the time.

A=MTBFMTBF+MTTRA = \frac{\text{MTBF}}{\text{MTBF} + \text{MTTR}}

The whole formula as one sentence: availability equals the mean time between failures divided by the sum of the mean time between failures and the mean time to repair. That is the fraction of the whole cycle in which the system is working.

What the formula is doing, and why

Every system breaks sometimes. Availability asks how much of the time it is up and working. Two averages describe that. The first is how long the system runs between failures, the mean time between failures, or MTBF\text{MTBF}. The second is how long a repair takes, the mean time to repair, or MTTR\text{MTTR}. Both are averages over many failures, not the time of one single failure.

Why divide? Think of one cycle. The system runs for about MTBF\text{MTBF} hours, then it is down for about MTTR\text{MTTR} hours while it is repaired. It works only during the first part. The fraction of time it works is the up time divided by the whole cycle, which gives A=MTBFMTBF+MTTRA = \frac{\text{MTBF}}{\text{MTBF} + \text{MTTR}}. A share of a total is always a part divided by the whole, so division is the right operation.

Why faster repairs help. The share of time that is down is 1−A=MTTRMTBF+MTTR1 - A = \frac{\text{MTTR}}{\text{MTBF} + \text{MTTR}}. When repairs are short compared with the running time, the bottom number is close to MTBF, so the down share is close to MTTRMTBF\frac{\text{MTTR}}{\text{MTBF}}. Halving the repair time roughly halves the downtime. Failing half as often has the same kind of effect, because it doubles MTBF and so halves the down share.

Counting nines. Availability is often quoted as a percent with a count of nines. 99.9% is called ‘three nines’. A common year has 8,760 hours, so 99.9% allows about 0.001×8760=8.760.001 \times 8760 = 8.76 hours of downtime a year. Each extra nine cuts the allowed downtime by a factor of ten. For example, 99.99% allows only 0.01% of the year to be down, which is ten times less than 0.1%.

Parts in series and in parallel. Parts combine in two ways, if their failures are independent. In series, every part must work, so the availabilities multiply: A=A1×A2A = A_1 \times A_2. Two parts of 99% each give 0.99×0.99=0.98010.99 \times 0.99 = 0.9801, which is lower than either part alone. In parallel, the system works if either part works, so it is down only when both are down: A=1−(1−A1)(1−A2)A = 1 - (1 - A_1)(1 - A_2). Two 99% parts in parallel give 1−0.01×0.01=0.99991 - 0.01 \times 0.01 = 0.9999.

An everyday picture

Think of a bus route. The bus runs for long stretches, then breaks down for a short time before it runs again. Availability is the share of the day the bus is actually on the road. A bus that breaks down rarely, and is repaired quickly, spends most of the day on the road. The bus’s running time is MTBF, its repair time is MTTR, and the share on the road is availability.

Worked example: One server for a small online shop

A small online shop runs its website on one server. The server fails on average once every 1,000 hours of running, so MTBF=1000\text{MTBF} = 1000 hours. When it fails, a repair takes 2 hours on average, so MTTR=2\text{MTTR} = 2 hours. The shop’s owner wants 99.9% availability. The numbers are made up for this example.

  1. Write down the two averages. The formula needs the mean time between failures, MTBF=1000\text{MTBF} = 1000 hours, and the mean time to repair, MTTR=2\text{MTTR} = 2 hours. Both are in hours, so no conversion is needed. The next step adds them to find one full cycle.
  2. Find the length of one full cycle. A cycle is the running time plus the repair time: 1000+2=10021000 + 2 = 1002 hours. On average, the server runs for 1000 hours, is down for 2 hours, and then starts the next cycle. The formula divides the working time by this whole cycle.
  3. Divide the working time by the whole cycle. Availability is A=10001002A = \frac{1000}{1002}. The division gives about 0.998004, which we round to 0.998. A value of 0.998 means the server is working for 998 out of every 1000 parts of time.
  4. Change the fraction into a percent. Multiply by 100, which moves the decimal point two places to the right: 0.998×100=99.8%0.998 \times 100 = 99.8\%. So the server is up 99.8% of the time, on average.
  5. Find the downtime in hours for a year. The share that is down is 1−A=210021 - A = \frac{2}{1002}, which is about 0.001996. A common year has 365×24=8760365 \times 24 = 8760 hours, so the downtime is 21002×8760≈17.5\frac{2}{1002} \times 8760 \approx 17.5 hours a year. During that time the shop’s website is not working.
  6. Compare with the 99.9% target. A target of 99.9% allows 0.001×8760=8.760.001 \times 8760 = 8.76 hours of downtime a year. The server’s 17.5 hours is about twice that, so this server would miss the target.
  7. Find what would fix it. The formula shows two levers: fewer failures, which means a bigger MTBF, and faster repairs, which means a smaller MTTR. Halving the repair time from 2 hours to 1 hour gives 1000÷1001≈0.9991000 \div 1001 \approx 0.999, which is about 99.9%. That meets the target.

Answer: The server is up about 99.8% of the time, which is about 17.5 hours of downtime a year. That is about twice the 8.76 hours allowed by a 99.9% target, so this server misses the target. Halving the repair time to 1 hour brings availability to about 99.9%.

The numbers in this example are recomputed by script every time the site is built.

Common mistakes

Where you will meet it

Questions people ask

Can a system reach 100% availability?

No real system is always up. Designers aim for many nines and plan for failures instead of assuming they never happen. A value of exactly 1, or 100%, would need a system that never fails or never needs repair, and no real hardware meets that.

What is a nine?

Each nine is one digit of the availability, counted as a run of nines in the percent. 99% is two nines, 99.9% is three nines and 99.99% is four nines. Each extra nine divides the yearly downtime by ten, because it cuts the share that is down by a factor of ten.

Is a long MTBF always enough?

No. Availability depends on both numbers. A long time between failures can be canceled out by a long repair, so both MTBF and MTTR matter. A system that rarely fails but takes days to repair can still be down more than a system that fails often but is fixed in minutes.

Sources

  1. Reliability engineering, Wikipedia
  2. Mean time between failures, Wikipedia

| All Computer Science formulas |

Published 2026-10-22. Plain-text copy for AI agents and readers: computer-science/system-availability.md.