Skip to content
AlertPing

SLAs

MTTR (mean time to recovery) explained and how to cut it

| SLAs | 7 min read

MTTR, mean time to recovery, is the average time it takes to restore a service after an incident begins. You calculate it by adding up the total downtime across incidents and dividing by the number of incidents. If five outages cost 150 minutes of downtime in total, your MTTR is 30 minutes. It is one of the clearest signals of how well a team detects, responds to, and fixes problems, and it is a headline DORA metric for that reason.

Uptime tells you how often you are up. MTTR tells you how fast you recover when you are not. The two together describe reliability far better than either alone, because a team can have decent uptime and still be one bad, slow-to-fix incident away from a customer walking. Lowering MTTR is often the fastest way to improve the experience of an outage, since you cannot always prevent incidents but you can almost always shorten them.

How do you calculate MTTR?

The formula is simple: total downtime divided by the number of incidents over a period.

MTTR = total downtime ÷ number of incidents

Example: 4 incidents in a month, with downtimes of 10, 20, 45 and 5 minutes. Total is 80 minutes. MTTR is 80 ÷ 4 = 20 minutes.

The subtlety is where you start and stop the clock. Most teams measure recovery from the moment the incident begins to the moment service is fully restored, which folds detection time, response time and repair time into one number. That is useful as a headline, but when you want to improve it, you break it into the stages below so you can see which one is costing you.

MTTR vs MTTD, MTTA and MTBF

The MTT family of metrics gets muddled constantly because the letters are so close. Each measures a different slice of an incident's life.

Metric Measures Clock runs from
MTTD (detect)How long until you noticeIncident starts to detection
MTTA (acknowledge)How long until someone respondsAlert fires to acknowledgement
MTTR (recovery)How long until service is restoredIncident starts to full recovery
MTBF (between failures)How reliable the system isRecovery to the next failure

MTTR sometimes stands for mean time to repair rather than recovery, and the two differ slightly: repair is the hands-on fixing time, while recovery includes detection and response. Whichever definition you use, pick one and stay consistent, because the value is in the trend over time, not the absolute number.

How to reduce MTTR

Because MTTR bundles several stages, you shrink it by attacking whichever stage is slowest for you.

  • Detect faster. The clock is already running before anyone knows. Fast, frequent monitoring closes the gap between an outage starting and your team learning about it. A check every 30 seconds catches a problem in a fraction of the time a five-minute interval does. For jobs that run on a schedule rather than serving traffic, heartbeat monitoring is what closes the same detection gap.
  • Cut the noise so real alerts land. If detection is buried under false pages, response is slow. Confirming a failure before paging means the alert that fires is one people act on.
  • Route to the right person. An alert that reaches someone who cannot fix it wastes the most expensive minutes. Clear on-call and escalation get the incident to a capable responder fast, which is the whole point of a well-designed on-call rotation.
  • Write runbooks. The repair stage shrinks when the responder is not improvising. A short runbook per alert turns a 40-minute investigation into a 10-minute fix; our runbook template gives you the structure to start from.
  • Find the answer quickly. A lot of MTTR is spent hunting: which change shipped, where the runbook lives, who owns this service. Teams that can surface the right answer from across their internal tools in seconds spend far less of an incident simply looking for information.

alertping

The cheapest minutes to cut are the ones before you know

AlertPing checks every 30 seconds from two regions and confirms an outage from the second before it pages you, so detection is measured in seconds. The faster you know, the lower your MTTR. SMS on every plan.

What is a good MTTR?

There is no universal target, because MTTR depends on system complexity, incident severity and what "restored" means for your product. A team running a simple stateless web app might recover in minutes; a team untangling a data corruption issue across services might take hours for the same severity. The number that matters is your own trend: is this quarter's MTTR lower than last quarter's? A falling MTTR means your detection, response and repair are improving together, which is exactly what the metric is for.

Compare it against your reliability goals rather than someone else's benchmark. If you are holding an uptime target, your error budget and your MTTR move together: every minute you shave off recovery is a minute of budget you keep. For the uptime side of that equation, see what counts as a good uptime percentage.

The practical takeaway: MTTR is a mirror. A high or rising number is not a failure of one heroic responder, it is a signal that one of detection, response or repair is slow. Break the number into stages, find the slow one, and fix that. Most teams discover the cheapest win is detection, because the clock starts the moment things break, not the moment they notice, and closing that gap is simply a matter of getting website down alerts that fire in seconds rather than after the first customer email.

keep reading

More from the blog

· Comparisons

Dynatrace synthetic monitoring pricing and what HTTP and browser monitors cost per month

8 min read ▸

· Comparisons

CloudWatch Synthetics pricing and what a canary costs per URL, per interval and per Region

8 min read ▸

· Comparisons

OpManager vs WhatsUp Gold pricing for 50 to 1,000 devices, per edition and per add-on

8 min read ▸

· Comparisons

Site24x7 vs PRTG pricing for 50 to 1,000 network devices, with and without add-ons

8 min read ▸

· Comparisons

OpManager pricing 2026 and what ManageEngine OpManager costs per device, per edition and per add-on

9 min read ▸

· Comparisons

Splunk On-Call pricing and cost per user from the published $5 rate to a yearly bill

7 min read ▸

· Comparisons

Rootly pricing and Rootly cost per user for Incident Response and On-Call

7 min read ▸

· Comparisons

FireHydrant pricing and what FireHydrant costs per responder after Freshworks

8 min read ▸

· Comparisons

Zabbix pricing and Zabbix Cloud pricing by tier with the real Zabbix cost per year

8 min read ▸

· Comparisons

Checkmk pricing 2026 and Checkmk cost per host for Pro, Ultimate and Cloud

8 min read ▸

· Comparisons

Nagios XI pricing and Nagios license cost per node, renewal included

8 min read ▸

· Comparisons

incident.io pricing and incident.io cost per user for response and on-call seats

8 min read ▸

· Comparisons

Datadog On-Call pricing vs PagerDuty cost per seat for 4 to 30 person rotations

8 min read ▸

· Comparisons

Datadog On-Call pricing and what a paging seat costs next to PagerDuty and Splunk On-Call

7 min read ▸

· Comparisons

LogicMonitor vs PRTG pricing for a 100 device network, per device against per sensor

7 min read ▸

· Comparisons

SolarWinds alternatives and competitors priced on one estate, from PRTG and LogicMonitor to Datadog

8 min read ▸

· Comparisons

LogicMonitor competitors and alternatives with Datadog, Dynatrace, New Relic, SolarWinds and PRTG priced on one estate

8 min read ▸

· Comparisons

SolarWinds pricing 2026 and how much SolarWinds costs per node, per module and per year

8 min read ▸

· Comparisons

LogicMonitor pricing 2026 and how much LogicMonitor costs per Hybrid Unit, per package and per year

8 min read ▸

· Comparisons

WhatsUp Gold pricing 2026 and how much WhatsUp Gold costs per device, per edition and per year

8 min read ▸

· Comparisons

Cronitor pricing 2026 and how much Cronitor costs per monitor, per user and per year

8 min read ▸

· Comparisons

Hyperping pricing 2026 and how much Hyperping costs per plan, per seat and per monitor

8 min read ▸

· Comparisons

Uptime.com pricing 2026 and how much Uptime.com costs per tier, per check and per year

8 min read ▸

· Comparisons

StatusCake pricing 2026 and how much StatusCake costs per plan, per monitor and per year

8 min read ▸

· Comparisons

PRTG pricing 2026 and what PRTG Network Monitor costs per sensor, per device and hosted

9 min read ▸

· Comparisons

New Relic Synthetics pricing 2026 and what synthetic checks cost per check, per edition and per month

9 min read ▸

· Comparisons

Sentry pricing 2026 and what Sentry costs per plan, per event and per monitor

9 min read ▸

· Comparisons

Checkly pricing 2026 and how much Checkly costs per check run, module by module

9 min read ▸

· Comparisons

Grafana Cloud pricing 2026 and how much Grafana Cloud costs, meter by meter

10 min read ▸

· Comparisons

Statuspage pricing and Atlassian Statuspage costs per subscriber for public and private pages

9 min read ▸

· Comparisons

Opsgenie pricing 2026 and how much Opsgenie costs, plus what you pay to replace it

8 min read ▸

· Comparisons

PagerDuty pricing 2026 and how much PagerDuty costs per user, per plan and per year

8 min read ▸

· Comparisons

Pingdom pricing 2026 and how much Pingdom costs per check, per plan and per year

8 min read ▸

· Comparisons

Uptime monitoring software to pair with Datadog, New Relic or Dynatrace

8 min read ▸

· Comparisons

How much does Splunk Observability Cloud cost? Hosts, editions and synthetic monitoring

8 min read ▸

· Comparisons

AppDynamics pricing 2026 and how much AppDynamics costs, from license cost per vCPU to synthetics

8 min read ▸

· Comparisons

Dynatrace pricing 2026 and how much Dynatrace costs for hosts, synthetic monitoring and log ingest

8 min read ▸

· Comparisons

How much does New Relic cost? Users, data ingest and synthetic checks

9 min read ▸

· Comparisons

Datadog synthetic monitoring pricing and what synthetics really cost per test run

9 min read ▸

· Guides

Uptime guarantee vs uptime monitoring and why your host reports 99.9% when your site was down

9 min read ▸

· Guides

Cloudflare uptime monitoring with health checks, origin monitoring and the blind spots behind the proxy

11 min read ▸

· Comparisons

Status page pricing and what a hosted status page actually costs in 2026

8 min read ▸

· Guides

API monitoring best practices on what to check, how often and how to keep alerts worth answering

10 min read ▸

· Guides

SSL certificate 200 days as the new validity limit and the 47-day lifetime coming next

9 min read ▸

· Guides

SSL certificate expired? What happens and how to fix it

8 min read ▸

· Guides

How often should you check website uptime?

7 min read ▸

· SLAs

Error budget formula, burn rate alerts and the policy that makes it work

11 min read ▸

· Playbooks

Runbook template for incident response that gets used

8 min read ▸

· Guides

What causes website downtime, and how to catch each cause

8 min read ▸

· Playbooks

Incident postmortem template that teams actually use

8 min read ▸

· Playbooks

On-call rotation best practices that keep engineers sane

8 min read ▸

· Guides

Heartbeat monitoring explained and how it works

7 min read ▸

· Guides

Status page examples and what the good ones get right

7 min read ▸

· Guides

API uptime SLA service credit tiers, downtime limits and what a good one costs

8 min read ▸

· Guides

How to create a status page in 6 steps

7 min read ▸

· Guides

Uptime SLA report and what to include, with a worked example

9 min read ▸

· Guides

SLA service credits and how to claim what you get back

8 min read ▸

· Guides

Synthetic monitoring vs uptime monitoring with what each one costs and when you need it

8 min read ▸

· Guides

What is a status page?

6 min read ▸

· Guides

Status page vs uptime monitoring and what the difference is

6 min read ▸

· Guides

What does 99.9% uptime mean?

6 min read ▸

· Guides

What is five nines (99.999%) uptime?

8 min read ▸

· Guides

How to calculate uptime percentage

7 min read ▸

· Guides

SLA vs SLO vs SLI and what the difference is

7 min read ▸

· Guides

Downtime alerts and how to get notified by email, SMS or phone when your website goes down

7 min read ▸

· Guides

How to monitor an online store for downtime

9 min read ▸

· Guides

Why is my Shopify store unavailable?

8 min read ▸

· Comparisons

Better Stack pricing and how much Better Stack costs

8 min read ▸

· Comparisons

UptimeRobot pricing and how much UptimeRobot costs

7 min read ▸

· Comparisons

Site24x7 pricing and how much Site24x7 costs

8 min read ▸

· Guides

What is a dead man's switch in monitoring?

9 min read ▸

· Guides

Why is my WordPress site down?

9 min read ▸

· Guides

How to monitor WooCommerce uptime and checkout

8 min read ▸

· Guides

How to monitor an API for errors, not just uptime

8 min read ▸

· Economics

How much does website downtime cost?

8 min read ▸

· Guides

How to monitor a cron job

9 min read ▸

· Comparisons

Synthetic monitoring vs real user monitoring

8 min read ▸

· Benchmarks

What is a good uptime percentage?

7 min read ▸

· SLAs

99.99 uptime meaning for SLAs and the real cost of each nine

8 min read ▸

· Guides

How to monitor website uptime

8 min read ▸

· Playbooks

Incident communication examples, templates and outage communication best practices

9 min read ▸

Know the second your site goes down

Checks every 30 seconds, confirmed from a second region, alerts on every channel.

See pricing