Before you make the change, check where your database exports, uploaded files, function code and project settings will come from if you need them again.
This checklist helps you identify those pieces and prepare a backup you can inspect before your next migration.
Start with what your current backup covers
Supabase provides database backup options, including Point-in-Time Recovery for eligible configurations. Check what is available and enabled for your project.
Database backups contain Storage metadata, but do not include the files stored through the Storage API. Restoring the database will not recover an object that has been deleted from Storage.
Source: Supabase database backups ↗That makes a component checklist useful before you begin.
Your pre-migration backup checklist
Work through these five areas before making the change. Record what is covered and any additional steps your project needs.
01 Database structure, data and access rules
Identify the database changes you are about to make and the information needed to recover from them.
Your checklist should account for:
- Tables and their data.
- Functions, triggers and indexes used by your application.
- Roles, permissions and row-level security policies.
- Extensions your application depends on.
Record the source project and backup date. Check that the expected exports were generated and review any errors before continuing.
02 Storage files
List the buckets your application uses and confirm how their objects will be copied.
Check a few representative files after the backup, including files from private buckets where you have authorized access. Keep track of bucket settings and access policies as well.
A database export containing file references does not establish that the files themselves were copied.
03 Edge Functions
Keep the function source and deployment configuration needed by your application.
Record which secrets each function requires, and where those secrets can be retrieved securely. Avoid placing credentials in shared notes, screenshots or public repositories.
04 Authentication and project settings
Check the configuration around the database: authentication providers, redirect URLs, application environment variables and Realtime settings.
For migrations to a new project, Supabase documents additional setup for components such as Storage, Edge Functions and Auth settings. Auth user records and Auth configuration are distinct parts of that process. Source: Supabase project restoration ↗
05 Verification and recovery steps
Review the backup output against your checklist.
Can you locate the expected database exports? Open sample files? Identify the function source and configuration you will need?
Write down the remaining manual steps. Before relying on the backup for recovery, rehearse the relevant restoration process in a separate destination you control.
FROM CHECKLIST TO FIRST BACKUP
Use smoonb to prepare your next backup
Smoonb provides a guided CLI workflow for backing up Supabase projects.
Use it to prepare the supported components of your project, inspect the generated files and identify any additional configuration work needed for your migration.
- Create your account and confirm your email.
- Open the CLI setup guide and prepare your environment. You will need the documented Node.js, Docker, Supabase CLI and PostgreSQL tools, plus authorized access to your project.
- Generate your first license key when you are ready. This starts your five-day trial.
- Install smoonb locally in your working directory with
npm install smoonb, then follow the setup instructions. - Run
npx smoonb backup, follow the prompts and compare the output with the checklist above.
Review the supported scope for your project and record any manual steps. A completed command should be followed by a check of the artifacts it produced.
A paid plan is required to continue after the trial; plan limits apply. See plans and pricing.
Make this part of your next release
Keep the checklist with your project documentation. Update it when you add a bucket, function, authentication provider or another dependency.
For developers maintaining several Supabase applications, repeating this preparation before meaningful changes can become part of the release routine.
Start with the project you are changing next.

