What belongs in a disaster recovery plan

We have sat in more than one planning session where the disaster recovery plan was a page in a wiki, last edited by someone who left the company, describing a backup process nobody in the room had actually run. Everyone nodded. Nobody had restored from that backup in the past year. That gap between a plan that reads well and a plan that works is the subject of this post, because it is also the gap that turns an outage into an outage that costs a business its data.
A disaster recovery plan is a tested procedure for getting a working system back inside a time limit you have written down, with a named person responsible for making that happen. Four things separate a plan that meets that standard from a document that only looks like one: numeric targets, a verified restore, a named owner per failure mode, and an honest record of what happens when you actually try.
Set RTO and RPO as numbers, not adjectives
RTO, recovery time objective, is how long the system can be down before the cost becomes unacceptable to the business. RPO, recovery point objective, is how much data you can afford to lose, measured in time since the last good backup. Both need to be a number: "four hours" and "fifteen minutes," not "as fast as possible" and "minimal data loss."
The reason a number matters is that it forces a decision your backup schedule has to match. If your RPO is fifteen minutes, a nightly backup already fails the plan on day one, and everyone in the room needs to know that before an outage, not during one. If your RTO is four hours, a restore process that takes six hours only makes the disaster last longer.
Write one RTO and one RPO per system, not one pair for the whole company. A marketing site and a payments ledger do not carry the same cost per hour of downtime, and a single target for everything usually means the number was picked to sound reasonable rather than to match what any one system actually needs.
Check that the backup actually restores
This is where most plans quietly fail, and it is worth being specific about why. A backup existing is a fact a monitoring dashboard can confirm on its own: a file arrived in storage, a snapshot completed, a job ran to success. A backup restoring into a working system is a different fact, and nothing checks it automatically unless someone builds that check.
The gap between those two facts is not a small one. Veeam's 2026 Data Trust and Resilience Report, based on more than 900 senior IT, security, and risk leaders worldwide, found that 90 percent expressed confidence in their ability to recover quickly from a cyber incident. Among organizations that had actually been hit by ransomware, only 28 percent fully restored all affected data, and 44 percent recovered less than 75 percent of it. Confidence and proof are two different things, and the report's own framing names "proven recovery through realistic testing and validation" as one of the capabilities that separates the organizations that actually recover from the ones that only believed they would.
A verified restore is a scheduled event with a recorded outcome, not a step someone assumes happened during setup two years ago. Restore into an isolated environment that matches production closely enough to catch the real problems: a schema that changed since the backup script was written, an environment variable nobody updated, a restore script that referred to infrastructure that no longer exists. Time the whole thing, from the moment you declare the drill started to the moment the restored system is confirmed working, and write that number down next to your stated RTO. If the two numbers do not match, you have found the actual gap in your plan before an outage showed it to you.
Name one owner for every failure mode
"Engineering owns disaster recovery" is not an answer anyone can act on at three in the morning. Every person on a team the size of engineering will reasonably assume someone else is handling it, and that assumption is exactly how a real incident goes unanswered for the first critical hour.
The fix is specific: one named person, or one named on-call rotation with a working way to alert them, per failure mode. Database corruption has an owner. A compromised credential has an owner, and it may not be the same owner. A full region outage on your cloud provider has an owner. Write the name, not the department, next to each scenario, along with how to reach them and what their first three actions are.
This matters more once a build includes AI-written code, because there are more ways the system can fail and they are harder to predict. Reveneau builds against an eval suite, automated checks written from the specification, precisely so that a defect gets caught before it is released rather than discovered during an incident. But an eval suite tells you a system meets its spec. It does not tell you who responds to the alert when the underlying infrastructure fails for reasons the spec never covered, which is exactly the job a named owner does.
Keep a record of every restore attempt, including the failed ones
A disaster recovery plan without a log is a plan with no evidence behind it. The log does not need to be complicated: date, system, what was tested, how long it took, what passed, what failed, what changed afterward. What it needs is to exist and to include the failures.
Teams often skip logging a failed drill because it feels like admitting the plan does not work. That reaction is wrong. A failed drill that gets logged and fixed is the entire reason the drill exists. A failed drill that gets quietly forgotten means the same failure is waiting, unrecorded, for the day it happens for real, and the Uptime Institute's 2026 Annual Outage Analysis is a reminder of how often the cause on the day it happens for real is ordinary: the report names failure to follow established procedure as the leading cause among human-error outages, which is precisely the kind of gap a written, followed log fixes.
What this looks like when we scope a build
When we plan a system's reliability with a client, the disaster recovery conversation happens before the first line of infrastructure code, not after launch. We set the RTO and RPO per system with whoever owns the cost of downtime for that system, we write the restore test into the eval suite so it runs on a schedule rather than depending on someone remembering, and we name the owner for each failure mode as part of the handoff, not as a follow-up task. A plan built in that order already has the answers that an outage would otherwise force you to find during the outage.
None of this is complicated. It is four commitments: a number for how long you can be down, a number for how much you can afford to lose, a restore that has actually been run and timed, and a name next to every way the system can fail. A disaster recovery plan you have not tested is a guess that looks like a plan, and the only way to know which one you have is to try the restore before you need it.
Sources
- Veeam, 2026 Data Trust and Resilience Report: 90 percent of more than 900 surveyed security leaders expressed confidence in fast recovery, while only 28 percent of ransomware-affected organizations fully restored their data and 44 percent recovered less than 75 percent of it.
- Uptime Institute, Annual Outage Analysis Report 2026: names failure to follow established procedure as the leading cause among human-error-related outages.


