How StoreVault works
Last updated 31 July 2026
StoreVault keeps versioned copies of your store and puts them back when something goes wrong. Nothing is ever written to your store without a plan you approve first, and every restore can be rolled back.
After you install
The first backup starts by itself. On a small store it finishes in a few minutes; a large catalogue takes longer.
The Status screen fills in as it goes: how many records of each type are stored, when each type was last captured, and how it is kept current. Products, collections, orders and customers arrive in real time; pages and articles within 15 minutes; menus, redirects and themes on a weekly or daily pass.
Nothing is required from you. There is no account to create and no setup to complete.
Put one record back
The most common repair: one product, page or collection was edited by mistake.
1. Find the record
Open Snapshots, pick the type, and search by title or ID.
Click the record to see its history: every stored version with the date it was captured and where it came from.
2. Pick the version you want back
Use View to read a stored version, and Compare with previous to see exactly what changed between two of them.
When you have found the good one, press Restore this version.
3. Approve the plan
Press Build plan for this record. Nothing is written yet: the plan says what would change, record by record.
Press Apply restore. The result counts what happened to every record it touched, and names the ones you should look at yourself.
Put the store back to a moment in time
Use this after a bad import or a bulk edit, when many records changed at once. It puts damaged records back; it does not remove records the import added, so delete those yourself.
1. Choose what and when
Open Restore. Tick the types you want. An empty selection is not a plan for everything: tick at least one.
Set the date, and set the time too. Dates and times are UTC. This matters: leaving the time empty means the latest stored copy, which already contains a mistake you made today, and the plan would correctly report that nothing differs.
The minute you enter is included in full, so pick a minute or two before the change you want to undo.
Leave both empty to compare against the latest stored version of each record.
2. Read the plan
The table shows, per type, how many records are in the backup, how many already match your store, how many would change, and how many are missing and would be recreated.
Nothing has been written at this point. If the numbers are not what you expected, change the moment and build the plan again.
A restore puts stored records back; it never deletes records. Anything created after the moment you picked stays in your store, so a bad import is undone by restoring the records it damaged, not by removing what it added.
3. Apply it
Press Apply restore. Progress is shown while it runs, and the result lists what was written.
A record that no longer exists in your store comes back as a NEW record with a new ID where we can create it again. Links, apps and reports that pointed at the old ID will not find it, and the result says so per record.
Undo a restore
Before overwriting anything, StoreVault saves the state of every record it is about to write. That is what Undo this restore uses.
The button appears on the restore once it has finished. You get a plan first, as always, and applying it returns every record we overwrote to the state it was in before that restore.
Two things stay as they are. Stock levels: the rollback does not include them, and each level in the result says what it was and what it was set to, so you can put those numbers back yourself. Records we recreated: they came back under a new ID, and undoing a restore never deletes records from your store.
Proof that the backup works
A restore drill re-reads stored copies, decrypts them, re-checks their checksums, and compares a sample against your live store. Nothing is written to your store during a drill. On a large store each drill reads a different sample, so the whole backup is covered over time, and the receipt says how much that run checked.
The receipt is emailed to your store contact address in Shopify whether it passed or not, and every receipt is kept on the Drills screen.
Free plans run a drill monthly, paid plans weekly.
Take your data out
Settings, Export your backup. JSONL contains the complete stored record; CSV is a flat summary for spreadsheets and collapses nested data such as variants or line items.
An export holds the LATEST stored copy of each record, not its history. Older versions stay in the app and are not part of the file, so an export taken before erasing keeps your current data but not the versions behind it.
Export is available on every plan, including Free, and covers orders and customers as well.
Export files are encrypted at rest and deleted after 7 days. Create a new export any time.
Themes
Themes are backed up and versioned. From a theme's record in Snapshots you can export a copy of that version's files as a .zip.
StoreVault never writes themes into your store and never installs one: the app only has read access to them. You upload the export yourself in Online Store, Themes, Add theme, Upload zip file.
What restore does not cover
Orders and customers are backed up, compared and exportable, but they are never restored in place. Shopify can only create a new order, not bring the original back, so we do not call that a restore.
Blogs, articles, menus and URL redirects are backed up, searchable and exportable, but they are not written back to your store yet.
Product images and other media, and which products sit in a manual collection, are not restored.
Inventory levels are captured daily and restorable on paid plans, physical count only, always after a plan that lists every location with its before and after. On Free they are not captured at all, so there is nothing to restore later.
Plans and limits
Your plan sets two things: how many products are covered, and how far back the version history goes.
Going over your plan does not touch anything already stored. New snapshots pause after a grace period, and restoring stays available the whole time. A backup that asks for money during an emergency is not a backup.
Access to what is already backed up never depends on your plan.
Erasing your data
Settings, Erase everything sends a confirmation link to your store contact address in Shopify. Following it destroys the encryption key for your store, which makes every stored snapshot permanently unreadable, and removes the records.
This cannot be undone, by us or by anyone else. Export first if you want a copy.
Erasing also stops the backup for good: nothing more is captured, and the app keeps saying so. To start over with a clean slate, remove the app and install it again.
One detail about our own disaster recovery: encrypted key-escrow copies of encryption keys expire within 7 days, cannot be decrypted on our servers, and keys of erased stores are excluded from any restore we perform.
To erase the data of a single customer instead, use the customer privacy request in your Shopify admin: it is narrower and leaves the rest of your backup alone.
Uninstalling is different: your backup is kept for 25 days first, because apps get uninstalled by accident.
Still stuck
Write to [email protected] with your store domain and, if it is about a restore, its number from the Restore screen. We answer every message.