If you run a web agency or freelance practice, clients eventually ask the same question: "What happens if my site goes down?" An uptime SLA (Service Level Agreement) is how you answer that question with confidence. It sets expectations, defines accountability, and turns monitoring data into a trust-building tool.
This guide walks through how to create a practical uptime SLA for client websites, one you can actually deliver on, backed by real monitoring data.
What Is an Uptime SLA?
An uptime SLA is a commitment to maintain a minimum level of website availability over a defined period. It typically includes a target uptime percentage (like 99.9%), how uptime is measured, what counts as downtime, and what happens when the target is missed.
For agencies, SLAs serve two purposes: they protect you by defining scope (you're not responsible for the client's hosting provider having a bad day), and they build trust by showing you take reliability seriously enough to put a number on it.
Choosing a Realistic Uptime Target
The most common SLA targets and what they actually mean in practice:
| Target | Downtime/Month | Downtime/Year |
|---|---|---|
| 99.0% | 7 hours 18 min | 3 days 15 hours |
| 99.5% | 3 hours 39 min | 1 day 19 hours |
| 99.9% | 43 min 50 sec | 8 hours 46 min |
| 99.95% | 21 min 55 sec | 4 hours 23 min |
| 99.99% | 4 min 23 sec | 52 min 36 sec |
99.9% is the sweet spot for most agency clients. It allows for roughly 44 minutes of downtime per month, which accounts for occasional hosting hiccups, DNS propagation, and brief maintenance windows. Promising 99.99% sounds impressive, but it leaves you less than 5 minutes of total downtime per month, a target that's nearly impossible to guarantee when you don't control the hosting infrastructure.
Be honest with yourself: if the client is on $10/month shared hosting, a 99.99% SLA is a promise you can't keep. Match the SLA to the infrastructure.
What to Include in Your SLA
A practical uptime SLA for agency work should cover these elements:
1. Uptime Target and Measurement Period
State the percentage and the window. "We commit to 99.9% uptime measured on a calendar month basis" is clear and measurable. Avoid vague language like "we guarantee high availability", that means nothing in a dispute.
2. How Uptime Is Measured
Define the monitoring method: HTTP checks from external locations at a specific interval. This is where your monitoring tool becomes your evidence. If you're checking every 30 seconds from multiple regions, say so. It demonstrates professionalism and gives you defensible data if there's ever a disagreement about whether an outage occurred.
3. What Counts as Downtime
This is the most important clause. Typically, downtime is defined as the monitored endpoint returning a non-2xx HTTP status or failing to respond within a timeout threshold. Be explicit about exclusions:
- Scheduled maintenance with at least 24 hours notice
- Third-party failures outside your control (hosting provider outages, DNS registrar issues, CDN problems)
- Client-caused issues like broken plugin updates or expired payment on hosting
- Force majeure events
Without these exclusions, you're taking responsibility for things you can't control. That's not an SLA, it's a liability.
4. Response Time Commitments
Separate from uptime, define how quickly you'll respond to an outage. This is not the same as resolution time (which you often can't guarantee). A reasonable commitment: "We will acknowledge critical downtime alerts within 15 minutes during business hours and within 1 hour outside business hours."
5. Remedies for SLA Breach
What happens if you miss the target? Common approaches include service credits (a percentage discount on the next invoice), extended service at no charge, or simply a formal incident report. Avoid open-ended refund clauses, they create more risk than trust. Service credits of 5–10% of the monthly fee per SLA breach are standard in the industry.
Backing Your SLA with Monitoring Data
An SLA without monitoring is just a promise. With monitoring, it's a contract backed by evidence. Here's what your monitoring setup should provide:
- Continuous uptime checks at intervals short enough to catch real outages (every 30–60 seconds)
- Multi-region verification to distinguish between a real outage and a network blip
- Historical uptime data you can reference in monthly or quarterly reports
- Incident logs with timestamps, duration, and root cause notes
- Automated reports you can share directly with clients
When a client asks "how did we do this month?", you should be able to answer with a report showing exact uptime percentage, incident history, and response times, not a guess.
Using SLAs to Justify Your Retainer
This is the business case for SLAs that many agencies miss. A well-structured SLA with monthly uptime reports transforms your maintenance retainer from a vague "we keep things running" into a quantifiable service with measurable outcomes.
When a client questions the value of their $500/month retainer, you can point to 99.95% uptime over the last quarter, 3 incidents detected and resolved in under 10 minutes, and zero unplanned downtime during business hours. That's a conversation you win every time.
Branded status pages add another layer: clients can see real-time status without asking you. It reduces support requests and creates a visible, ongoing reminder that you're actively watching their site.
A Simple SLA Template
Here's a starting point you can adapt for your agency:
Uptime commitment: [Agency] commits to maintaining 99.9% uptime for [Client]'s website, measured monthly via external HTTP monitoring from multiple geographic regions.
Measurement: Uptime is measured by automated HTTP(S) checks at 30–60 second intervals. An outage is recorded when the primary endpoint returns a non-2xx status code or fails to respond within 30 seconds, confirmed by checks from at least 2 regions.
Exclusions: Scheduled maintenance (with 24h notice), third-party hosting/DNS/CDN failures, client-initiated changes, and force majeure events.
Response time: Critical alerts acknowledged within 15 minutes (business hours) or 1 hour (after hours).
Remedy: If monthly uptime falls below 99.9%, [Client] receives a 10% service credit on the following month's invoice.
Reporting: [Agency] will provide a monthly uptime report including availability percentage, incident summary, and response time data.
Adapt the numbers to your situation. If you're managing sites on premium hosting with CDNs, 99.95% may be achievable. If clients are on budget shared hosting, 99.5% is more honest.
Common Mistakes to Avoid
Over-promising uptime
Promising 99.99% when you don't control the infrastructure is a recipe for SLA breaches. Be realistic about what the hosting environment can deliver.
Forgetting exclusions
Without explicit exclusions for third-party failures and scheduled maintenance, every hosting provider outage becomes your problem on paper.
No monitoring to back it up
An SLA without monitoring is unenforceable in both directions. You can't prove you met the target, and clients can't prove you didn't. Both sides lose.
Making resolution time guarantees
You can guarantee response time (how quickly you start working on it). You usually cannot guarantee resolution time (how quickly it's fixed), because some issues depend on third parties. Be careful with this distinction.
Getting Started
You don't need a lawyer to create your first SLA. Start with the template above, adapt it to your services, and begin collecting uptime data. After a month or two of monitoring history, you'll have the data to confidently set targets and prove you're hitting them.
The combination of a clear SLA, reliable monitoring, and regular uptime reports is one of the simplest ways to differentiate your agency from competitors who just say "we'll keep an eye on it."
For more on building a monitoring workflow that supports SLA commitments, read our complete guide to website monitoring for agencies. To understand the financial impact of the downtime you're protecting against, see the true cost of website downtime.