Keel

How often should you test database restores?

By the Keel team · Last checked · 4 min read

Short answer

For a small SaaS, test a full restore of your production database at least once a quarter, move to monthly once customers depend on the data every day, and add a test after any big change to the database or backup setup. Automate the restore if you can, so the schedule does not depend on someone remembering.

  • 28%

    Organisations hit by ransomware that fully restored their data

    Source: Veeam, 2026

  • 1 to 168 hours

    How long AWS Backup restore testing can keep a restored copy for checks

    Source: AWS Backup docs, Oct 2026

  • $1.50

    AWS Backup restore testing price per recovery point, US East

    Source: AWS Backup pricing, Oct 2026

Why do database restores need testing at all?

Database restores need testing because a backup only proves data was copied, not that you can get a working database back from it in the time you need.

Restores fail for ordinary reasons: a missing permission or encryption key, a parameter group nobody recorded, an application that cannot connect to the new endpoint, or a restore that simply takes longer than anyone expected.

The numbers show how often this goes wrong. Veeam's 2026 research found that only 28% of organisations hit by ransomware fully restored their data. AWS's Well-Architected framework lists periodic data recovery as the way to verify backup integrity and processes.

How often should a small SaaS test database restores?

A small SaaS should test a full production database restore at least quarterly, and monthly once customers rely on the product daily or you have signed contracts that mention recovery times.

These are working rules rather than a standard: the right frequency is the one that catches a broken restore before you need it.

A restore testing schedule for a small SaaS on AWS
TestHow oftenWhat it proves
Automated restore of the main databaseMonthly, or weekly if it is cheapThe latest backup restores and the data is readable
Restore plus application checkQuarterly at leastThe app can connect, log in and read real records
Point-in-time restore to a chosen minuteQuarterlyYou can recover to just before a bad change
Full disaster recovery drillYearlyThe team can rebuild production from scratch, with timings
Ad hoc restoreAfter any major changeA new engine version, key or backup setting did not break restores

What should trigger an extra database restore test?

Run an extra restore test whenever something changes that a restore depends on.

These are the moments a working restore most often quietly breaks.

  • A database engine major version upgrade.
  • A change of encryption key, or moving to a new KMS key.
  • Changes to backup retention, backup plans or the account backups are copied to.
  • A large schema change or data migration.
  • Moving the database to a new instance class, cluster or region.
  • A new enterprise customer whose contract states a recovery time.

How do you automate database restore tests on AWS?

On AWS, AWS Backup restore testing can restore your RDS, Aurora, DynamoDB and other backups on a schedule you set with a cron expression, keep the restored copy for 1 to 168 hours so you can run checks against it, and then delete it.

That turns a quarterly chore into something that runs by itself.

Automation covers the restore, not the whole answer. You still need a check that the data is right, such as counting rows in key tables or running a few known queries, and someone has to read the result. The guide to what AWS Backup restore testing does and misses covers the gaps, and how to test an RDS restore step by step covers the manual version.

How much does a database restore test cost on AWS?

A database restore test on AWS costs whatever the restored copy runs up while it exists, plus a small fee if you use AWS Backup restore testing, which AWS prices at $1.50 per recovery point tested in US East.

Weigh that against what an hour of downtime would cost you.

Keep the cost down by restoring to a smaller instance class, keeping the validation window short, and deleting the copy as soon as checks finish. Restored RDS copies are always new instances, so they do not touch production while they run.

What should you record after each database restore test?

Record when the test ran, which backup or point in time you restored, how long it took from start to a usable database, what checks passed, and anything that failed or needed a manual step.

That record is what turns a restore test into evidence.

The time taken matters most, because it tells you whether you can meet your recovery time objective. If you have not set one yet, RPO and RTO for a 10-person SaaS explains how to choose sensible targets. Restore reports are also exactly what enterprise security questionnaires ask for.

Is your database restore testing often enough?

Tick each item that is true today.

  • A full restore of the production database passed in the last 90 days.
  • The restore is automated or on a calendar with a named owner.
  • Each test checks the data, not just that the restore finished.
  • You know how long a restore takes, in minutes.
  • You tested again after the last engine upgrade or key change.
  • Results are written down where a security reviewer could see them.

Decision point: Five or six ticks: you would probably recover on a bad day. Three or fewer: schedule a restore test this week, before you need one.

Sources

  1. AWS Well-Architected, Perform data backup validation and recovery testing (checked October 2026)
  2. AWS docs, AWS Backup restore testing (checked October 2026)
  3. AWS, AWS Backup pricing (restore testing) (checked October 2026)
  4. AWS docs, Restoring a DB instance to a specified time for Amazon RDS (checked October 2026)
  5. Veeam, Data Trust and Resilience Report 2026 (2026)

Keep reading

Keel is an AWS release and recovery operations service for SaaS teams of 3 to 15 developers, provided by Bargainn Services Ltd, a UK company registered at Companies House (16497746). Registered office: 3rd Floor, 86-90 Paul Street, London, EC2A 4NE, United Kingdom.