What holds your data
- Your backend deployment holds the database and every uploaded file. This is the part that matters most.
- Your secrets and settings: the environment values on your backend, on your app host and in your local env file. They are not part of a data export, and without them you cannot sign in or reach your providers.
The app itself holds nothing. It is rebuilt from your source, so only its settings need keeping.
Routine and manual backups
Convex Cloud keeps its own snapshots, so recent data can be recovered without you doing anything. Treat that as a safety net. Before an update or any large change, take your own export and keep it somewhere off-platform, such as an encrypted drive or a private storage bucket:
npx convex export --path revgrow-backup.zip --include-file-storageMany modules also export their own records to CSV, which is handy when a client asks for their contact list. It does not replace a full export.
Keep your secrets safe
Store every environment value in a password manager. The session-signing secret matters most: lose it and everyone is signed out, and no data backup brings it back.
Deleted something by mistake?
Deleted contacts go to the Trash and can be restored for a period before they are removed for good. For anything older, restore your latest export into a separate scratch deployment, copy out what you need, and bring it back. Never import a full backup over your live deployment without exporting the live data first, because an import overwrites.
Practise a restore
In your first month, restore an export into a development deployment and check that records and files come back:
npx convex import --path revgrow-backup.zipA restore you have done once is one you can trust under pressure.
Something missing or unclear? Email hamid@revgrow.app.