Back up your Supabase project outside Supabase
ReviveDB is a managed Supabase backup service for the PostgreSQL database and Auth, Storage files, Edge Functions and supported project configuration. Each recovery point is stored off-platform, and every database backup is restore-tested.
Authorize the project with Supabase OAuth
Before each backup, ReviveDB uses your Supabase OAuth authorization to create a Postgres login. Supabase classifies creating and removing the login as Database write access. The login used for the backup is separate and read-only, and the production password is never read, reset or stored.
Read the implementation notes- Created per run
- The automatic role gets a random credential, a one-hour password expiry and a five-connection limit. Cleanup requests removal when the job finishes, including after a failed run. The expiry blocks later password access if cleanup fails.
- Complete read access
- The temporary role used by pg_dump can read all database tables and bypass row-level security so Auth and protected application data are included. It cannot write, create databases or roles, replicate, or act as superuser. This read-only limit applies to the backup login; the OAuth grant includes Database write permission to manage that login.
- Verified before setup
- Onboarding checks every table and runs a schema-only dump before saving the project. A project is not marked ready until the OAuth-managed database path passes.
One recovery point for the whole project
A database backup alone leaves out Auth settings, Storage files, Edge Functions and project configuration. ReviveDB captures all of it together.
- Database and Auth
- Schemas, rows, identities, table grants, RLS policies, functions and triggers, restored and compared against a capture-time inventory.
- Storage and Edge Functions
- Storage object bytes, bucket settings and Edge Function bundles, stored off-platform and verified with SHA-256.
- Configuration and secrets
- Supported project configuration in one manifest. Secret names are inventoried and values are never copied, so manual work becomes a checklist.
Compare the available recovery options
Supabase backups are useful for database rollback. General tools support more platforms. ReviveDB covers the Supabase components listed below.
| Component | Supabase database backup | General backup platform | ReviveDB |
|---|---|---|---|
| PostgreSQL database | Included | Usually included | Restored and compared |
| Auth users and identities | Database state | Depends on dump scope | Provider-specific restore |
| Storage object bytes | Not in database backups | Separate job or add-on | Included and hash-verified |
| Edge Functions | Separate from database backup | Separate job or add-on | Bundles captured and verified |
| Project configuration | Separate recovery work | Usually exported separately | Supported settings in one manifest |
| Secret values | Manual | Depends on setup | Checklist generated; values never copied |
| Recovery result | Database restore | Artifacts or separate jobs | One recovery report |
Supabase documents that its database backups exclude Storage object bytes and that restoring to a new project requires separate work for several platform components. See the official database backup documentation and new-project restore documentation.
Test the restore, not only the upload
ReviveDB restores the database, checks Storage files and Edge Function bundles, and records any configuration or secrets that still need manual work.
See how verification works- 1
Back up each project component
Database dump, Storage object bytes, Edge Function bundles and supported project configuration in one pass.
- 2
Check the database, Storage files and Edge Function bundles
Restore into isolated PostgreSQL, compare inventories, hash-check objects and bundles.
- 3
Recover in the right order
Safety backup first, then database and Auth, then Storage, Edge Functions and supported project configuration.
Supabase backup guides
Supabase backup questions
Create your first checked recovery point
One Supabase project, up to 1 GB, no card required.