Definition · Recovery point and recovery time objectivesThe recovery point objective (RPO) is the volume of writes lost by a failure, measured in bytes: at most interval × write rate, and interval × write rate / 2 in expectation for a failure at a uniformly random moment.
The recovery time objective (RTO) is the elapsed time to be serving again, measured in hours: size / restore bandwidth + surviving log / replay rate.
Writing them side by side is most of the work, because the two are routinely collapsed into one sentence about backups existing. They are controlled by different things: the RPO by the schedule, the RTO by bandwidth. Doubling the backup frequency improves the first proportionally and the second hardly at all.
interval 24 h = 86 400 s writes 20 MB/s dataset 2.00 TB
restore 200 MB/s log replay 50 MB/s
RPO worst 86 400 s × 20 MB/s = 1.73 TB
RPO expected half the interval, on average = 864.00 GB
copy back 2.00 TB / 200 MB/s = 10 000 s = 2.78 h
replay 1.73 TB / 50 MB/s = 34 560 s = 9.60 h
RTO 2.78 h + 9.60 h = 12.38 h
Notice what dominates. Of the 12.38 h, the copy is 2.78 and the replay is 9.60 — so on this schedule most of the outage is spent reapplying a day's worth of log, and the fastest available lever is the backup interval rather than the restore path. That balance flips as the interval shortens, which is exactly why both terms have to be computed rather than one of them assumed dominant.
What a shorter interval buys
It buys twice: fewer bytes at risk, and less log to replay. Backing up hourly instead of daily takes the RPO from 1.73 TB to 72.00 GB and the RTO from 12.38 h to 3.18 h — a factor of twenty-four on the first and most of the way to the floor on the second. What it does not touch is the 2.78 h of copying, which sits under every row.
Example · The same table at four intervalsAt 20 MB/s of writes into a 2.00 TB dataset restored at 200 MB/s with 50 MB/s of replay: one hour gives 72.00 GB at risk and an RTO of 3.18 h; six hours, 432.00 GB and 5.18 h; twelve hours, 864.00 GB and 7.58 h; twenty-four hours, 1.73 TB and 12.38 h. The RPO is linear in the interval and so is the replay, so the RTO is a straight line starting at 2.78 h.
Run it backwards to turn a target into a schedule. A four-hour RTO leaves 4 h − 2.78 h = 1.22 h for replay, which at 50 MB/s is about 220 GB of log, which at 20 MB/s of writes is 3.06 h of interval. So “we must be back inside four hours” is, on this hardware, a requirement to back up at least every three hours — and if the copy alone exceeded four hours the target would be unreachable at any schedule, which the arithmetic says immediately.
The misconception this page exists for is offering “we have backups” as an answer. It is not a number of bytes, so it is not an RPO; it is not a number of hours, so it is not an RTO. Both of the real answers are one multiplication away from figures an operator already has, and the unwillingness to produce them is usually a sign that nobody has timed a restore.
Which is the honest caveat. Restore bandwidth must be measured on a real restore, not assumed from a network specification; a backup that has never been restored is a forecast rather than a fact. And this model starts the clock at the moment of failure, while a real outage also contains detection and the decision to restore — neither of which is in these two formulas and both of which are in the outage.