What is high availability?
It is the difference between a system that stays up through a server failure and one that goes down with it. The two look identical until the failure happens.
High availability
HA
High availability, or HA, is a system design goal that keeps an application running through the failure of individual parts. It is usually stated as an uptime percentage, such as 99.9%, and achieved through redundancy. More than one server, database or network path means no single failure takes the whole system down.
The percentage is the part everyone quotes. It is also the part almost nobody turns into minutes. Uptime is measured across a full year, so a small gap between 99.9% and 99.99% is a large gap in real minutes offline. Skip that step and you can agree to a number that sounds strict and isn't.
"Five nines" (99.999%) is the phrase people reach for as shorthand for extreme reliability. Almost nothing needs it. It allows about 5 minutes of downtime a year. That needs live backup systems running in more than one region, at a cost most software has no reason to carry. Most business systems target 99.9% or 99.95%, not five nines.
What each uptime target means in minutes
A year holds 525,600 minutes. Multiply that by the downtime percentage and you get the real budget behind each target, before any SLA exclusions come off it.
- 0199% uptime allows 3.65 days of downtime a year.
- 0299.5% uptime allows 1.83 days a year.
- 0399.9% uptime ("three nines") allows 8 hours 46 minutes a year.
- 0499.95% uptime allows 4 hours 23 minutes a year.
- 0599.99% uptime ("four nines") allows 52 minutes 34 seconds a year.
- 0699.999% uptime ("five nines") allows 5 minutes 15 seconds a year.
- Single instanceOne server, one failure, one outage.
- Load balancerSplits traffic across two or more instances.
- Health checksDetects a dead instance in seconds, not hours.
- FailoverTraffic reroutes automatically to the healthy path.
- Redundant databaseA replica takes over if the primary drops.
Most systems fail at the database step. Load-balanced application servers are common; a database with a tested failover is not, and it is usually the thing that turns a short blip into a real outage.
Common questions
01What does 99.9% uptime mean in practice?
It means the system can be down for up to 8 hours and 46 minutes across a year and still meet the target. That budget can go all at once, in a single bad incident, or spread across many short ones. Most SLAs do not distinguish between the two.
02Is 99.99% uptime realistic for most software?
It can be done, but it costs more. 52 minutes of downtime a year needs backup servers, a tested failover, and monitoring that spots a failure in seconds, not minutes. Most business apps do fine at 99.9% or 99.95%. Save 99.99%+ for systems where every minute down costs real money.
03How is high availability different from disaster recovery?
High availability keeps a system running through the failure of a single part, usually within seconds, using redundancy that is already running. Disaster recovery is the plan for a larger event, like losing an entire data center. It is measured in how long restoring service takes, not in nines.
04Does high availability mean zero downtime?
No. Every uptime percentage below 100% carries a stated downtime budget, and no real system commits to 100%. High availability cuts how often failures happen and how long each one lasts. It does not promise they will never happen.
Related terms
- SLA (service-level agreement) →Where an uptime target becomes a written promise with a stated consequence for missing it.
- SLO →The internal reliability target a team holds itself to, usually stricter than the SLA it sells.
- Software maintenance →Where uptime targets get monitored and enforced on a live system after launch.

