Website Uptime and SLA: What 99.9% Really Means
Uptime is the percentage of time a website or service is available and functioning correctly. For businesses, every minute of downtime means lost customers, missed revenue, and reputation damage.
What Is SLA
SLA (Service Level Agreement) is an agreement where a provider guarantees a certain level of availability. For example, a 99.9% SLA means the service can be unavailable for no more than 8 hours and 45 minutes per year.
Availability Levels Table
The difference between "nines" seems small, but in real time it's enormous:
| SLA | Downtime/Year | Downtime/Month | Downtime/Week |
|---|---|---|---|
| 99% | 3d 15h | 7h 18m | 1h 41m |
| 99.5% | 1d 19h | 3h 39m | 50m |
| 99.9% | 8h 45m | 43m | 10m |
| 99.95% | 4h 22m | 21m | 5m |
| 99.99% | 52m | 4m | 1m |
| 99.999% | 5m | 26s | 6s |
How to Calculate Uptime
The formula:
Uptime (%) = ((Total Time - Downtime) / Total Time) × 100
For example, if over a month (30 days = 43,200 min) your site was down for 45 minutes:
Uptime = ((43200 - 45) / 43200) × 100 = 99.896%
What Affects Uptime
Infrastructure Factors
- Hosting reliability — shared hosting is less reliable than VPS or dedicated. Cloud providers (AWS, GCP) typically offer 99.99% SLA.
- Redundancy — load balancing across multiple servers, database replication, multi-zone deployment.
- CDN — a content delivery network can serve static assets even if the origin server is down.
Software Factors
- Memory leaks — application gradually consumes all memory until the server becomes unresponsive.
- Unhandled exceptions — a code error can crash the entire service.
- Database migrations — long migrations lock tables and make the site unavailable.
- Deploys without zero-downtime — application restart causes brief downtime.
External Factors
- DDoS attacks — massive request floods overwhelm the server.
- DNS issues — if the DNS server is unavailable, the domain won't resolve.
- SSL certificate expiry — browsers block access to sites with expired certificates.
- Domain expiration — a forgotten domain stops working entirely.
Uptime Monitoring
How Monitoring Works
Monitoring systems periodically send requests to your site and check:
- HTTP response code (expected: 200)
- Response time (below threshold)
- Presence of keywords in the response
- SSL certificate validity
When a problem is detected, monitoring sends alerts via email, Telegram, Slack, or webhook.
Check Interval
The more frequent the checks, the faster you learn about issues:
| Interval | Detection Time | Suitable For |
|---|---|---|
| 5 min | up to 5 min | Most websites |
| 1 min | up to 1 min | E-commerce, SaaS, API документацию |
| 30 sec | up to 30 sec | Critical services, fintech |
Status Page
A status page is a public page displaying the current state of your services. It helps:
- Inform users about ongoing incidents
- Show availability history
- Build customer trust in your service
- Reduce support load during incidents
Recommendations
- Define a target SLA for your service and budget for infrastructure
- Set up monitoring with intervals no longer than 5 minutes
- Connect multiple notification channels (email + Telegram/Slack)
- Monitor not just HTTP, but also SSL certificates and domains
- Create a Status Page for your users
- Analyze downtime causes and work on eliminating them
Check your website right now
Check now →