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 not a description of your backup system. It 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 bar 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 is not a disaster recovery plan, it is a longer disaster.
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 blanket target usually means the number was picked to sound reasonable rather than to match what any one system actually needs.
Verify the restore, not the backup
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 landed 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 mirrors production closely enough to catch the real problems: a schema that drifted since the backup script was written, an environment variable nobody updated, a restore script that pointed at 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 found it for you.
Name an owner for every failure mode, not a team
"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 has 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 real paging path, 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, not less, once a build includes AI-written code, because the failure surface is wider and less predictable by default. Reveneau builds against an eval suite, automated checks written from the specification, precisely so that a defect gets caught before it ships rather than discovered during an incident. But an eval suite tells you a system meets its spec. It does not tell you who answers the page 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 instinct gets it backward. 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 not exotic: the report names failure to follow established procedure as the leading driver among human-error outages, which is precisely the kind of gap a written, followed log closes.
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 has already answered the question an outage would otherwise ask for the first time.
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 wearing the shape of 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 driver among human-error-related outages.


