Restore drills: proof that the backup opens

The problem with every backup

A backup is a promise about the future. You find out whether it was true on the worst day you have had in months - after a bad import, after an app rewrote every description, after someone deleted a collection. That is the wrong moment to discover that a file will not decrypt or that half the catalogue was never captured.

So StoreVault reads its own backup back on a schedule and tells you the result either way.

What a drill actually does

Two checks, and they answer different questions.

Integrity. Stored objects are fetched, decrypted with your store's key and parsed. Up to 500 stored objects per drill, picked by a seed that changes weekly so the sample walks across the whole backup rather than re-checking the same corner. This answers "can it be opened at all".

Parity. A sample of records of each type - ten per type - is re-read live from your store and compared with what we stored. This answers "does what we have still match reality".

The receipt names both numbers: how many objects were checked and how many of your records were compared, not a green tick.

How to read the verdict

Restorable. Objects opened, sample matched. Nothing to do.

Differences found. The store changed since the last capture - usually completely normal, and the receipt lists what differed so you can tell an ordinary edit from something you did not expect.

Integrity problem. Something stored did not open. This is the one that matters, and we are already looking at it when you receive it.

First backup still running. There was nothing to check yet. Said plainly rather than dressed up as a pass.

When they run

The first drill runs ten minutes after your first backup finishes, so you get evidence on day one instead of taking our word for it. After that: weekly on paid plans, monthly on free. Every receipt is emailed and kept in the app under Drills, so you have a history rather than a feeling.

What a drill does not prove

A passing drill says the stored copies open and a sample matches. It does not promise that every record of a 200,000-product store is byte-perfect, because a full comparison of every record every week would cost more API calls than your store can spare - and we would rather sample honestly than claim a completeness we do not check.

It also does not change what can be restored: orders and customers stay an archive, themes come back as a .zip you upload yourself. Those limits are listed on the how it works page and in the app.