INDEPENDENT POLICY & RESEARCHConceptual framework Edition 0.16.4
CORE-021 · Method 0.2.0

Recovery Time and Data-Loss Objective Check

Did verified recovery meet the time and data-loss objectives?

Operational calculation / structured check · Unit tested · Not empirically calibrated

Worked example

A service owner can check the elapsed time to verified restoration separately from the age of the last consistent recovered data. Record each timestamp and the target used.

A fictional service is verified after 220 minutes against a 240-minute recovery target. The latest consistent recovered record is 80 minutes old at the outage, missing the 60-minute data-loss target.

Try it yourself

The calculator opens with the fictional example already filled in. Change one input, choose Calculate locally, and compare the result to the original values below. Use Reset fictional fixture to start over.

An unknown result means the available inputs do not support a value. Check the calculator’s Warnings tab for what is missing or uncertain.

Go to the calculator Browse all calculators

Changing the label does not improve capacity, speed, error rates or confidence. Enter measured differences explicitly.
Comparison conditions and human review
Record budget, staffing, resources, information release dates, scenario conditions and evaluation criteria. Material differences can make options not comparable.

This declaration is not legal certification. Blocked, pending or assumed gates stop transaction-dependent evaluation.

Keep units consistent within each table. Enter zero when the amount is known to be zero. Leave optional amounts blank when they are unknown. If a required value is missing, the calculator will ask for it.

Advanced: complete input envelope and optional fields

Edit optional fields using the method dictionary. Apply validates and recalculates the entire input. Unknown values remain null.

Import local JSON or CSV

Files stay in this browser. Maximum 1 MiB. JSON imports are recalculated. CSV supports flat observation tables, with column types taken from the displayed fixture. Empty cells become null.

Compare the arrangements

Keep physical resources and evaluation conditions equal. With identical inputs, all three approaches produce identical arithmetic. The comparison refuses material differences in declared conditions; it does not verify those declarations.

Privacy: comparison inputs may contain sensitive notes or operational details. Storage is off by default. Do not enter personal records or sensitive infrastructure details. Reproduction exports include supplied inputs and notes, including raw small-cell inputs suppressed from CORE-009 result tables. Suppression of displayed results does not make a reproduction export safe to publish.

Executive brief and reproducible export

Review for personal, confidential or sensitive material before saving or sharing. No automatic submission occurs.

Read the generated brief

Method, inputs and limits

Compare verified restoration and the latest consistent recovered record with declared recovery targets. Method version 0.2.0. Predict restoration or certify that a service or restored record is consistent.

CORE-021 input dictionary
InputUnit / typeRequired interpretation
outageAt — Outage beganISO timestamp / numberUse an explicit UTC offset or Z.
asOf — Assessment timeISO timestamp / numberFix the clock for reproducible checks. It must be at or after the outage.
verifiedAt — Service restoration verifiedISO timestamp or null / numberNull means verification is still unknown.
recoveredRecordAt — Latest consistent recovered recordISO timestamp or null / numberUse a verified point at or before the outage. Null means the data-loss interval is unknown.
rtoMinutes — Recovery time objectiveminutes / numberLargest permitted time from outage to verified restoration.
rpoMinutes — Recovery point objectiveminutes / numberLargest permitted gap between the recovered record and outage.

Visible mathematics / decision rules

Elapsed restoration minutes = (verified restoration − outage time) ÷ 60,000 milliseconds.

Recovered data gap = (outage time − latest consistent recovered point) ÷ 60,000 milliseconds.

What this result cannot establish

What would falsify the assumptions?

Reproducible fictional fixture and independently calculated expectations

This fixture is synthetic. It does not describe a country, government, company or event.

{
  "observations": {
    "unit": "minutes",
    "origin": "synthetic",
    "sources": [
      {
        "id": "SYN-021",
        "kind": "synthetic",
        "label": "Fictional continuity exercise",
        "url": null
      }
    ],
    "outageAt": "2026-01-01T08:00:00Z",
    "asOf": "2026-01-01T12:00:00Z",
    "verifiedAt": "2026-01-01T11:40:00Z",
    "recoveredRecordAt": "2026-01-01T06:40:00Z"
  },
  "parameters": {
    "rtoMinutes": 240,
    "rpoMinutes": 60
  }
}

Expected checks

{
  "restorationMinutes": 220,
  "dataGapMinutes": 80,
  "rtoStatus": "met",
  "rpoStatus": "missed"
}
Download input fixture

Authoritative background references

These sources inform definitions or review practices. They do not validate this implementation or endorse MAR.

Read the recovery objective example