restorable — open-source restore testing for restic
A backup you've never restored is a hope, not a backup.
Your backups run every night. Restorable proves they'd actually restore: on a schedule, it restores your latest snapshot into a disposable sandbox, verifies the data really works, destroys the sandbox, and tells you the result — including your measured recovery time, so you know how long being back online actually takes.
curl -fsSL https://raw.githubusercontent.com/restorable-dev/restorable/main/install.sh | shNot a green checkmark. A receipt.
$ restorable test
restorable: PASS
repo: /srv/backups/restic
snapshot: cd10c302
duration: 5.5s
restore: 4.1s
checks:
✓ nextcloud/files 2 required path(s) present,
5 sampled checksum(s) match repository
✓ nextcloud/sqlite "data/owncloud.db" passes integrity_checkEvery run is a real restore into a throwaway sandbox — then real verification against what your application needs to come back to life. Because it's a real restore, the timing is real too: the dashboard tracks your verified recovery time and how it drifts as your data grows. Exit codes for cron. JSON for scripts. No account required.
Verification that understands your apps
filesRequired paths restored, file counts hold, sampled files hash identically to repository content
sqliteThe database passes PRAGMA integrity_check
postgres / mysqlThe dump in your backup actually loads into a throwaway container; row counts hold
docker-appThe real app image boots against restored data and answers its health check
Ready-made recipes for Nextcloud, Vaultwarden, and Immich ship in the box.
Built for people who read the source
- Read-only, enforced by the compiler. The agent wraps your restic and can only run restore/ls/check/dump — the whitelist is a type, so forget and prune are compile errors.
- Your data never leaves your machine. Cloud mode reports pass/fail metadata only: fingerprints, snapshot IDs, timings. Never file contents, never credentials. Outbound HTTPS only, no open ports.
- Genuinely useful standalone. The MIT-licensed agent is the whole core loop. The cloud is optional and additive — history, alerting, stale detection.
Pricing
Open beta:everything below — including all of Pro — is free right now. No card, no trial clock. We'll give plenty of notice before paid plans begin.
Free
The tool, plus a dashboard
- Unlimited standalone use (forever, MIT)
- 1 repository on the dashboard
- Monthly scheduled tests
- 1 alert channel
Pro — $8/mo or $80/yr
Convenience + evidence
- Unlimited repositories
- Any schedule
- All alert channels + stale detection
- 12-month run history
- Monthly confidence reports (coming soon)