What's in this guide
This guide is for developers running Supabase in production, agencies managing multiple Supabase projects, and solo founders who just want their data safe. It covers the database, Storage, Edge Functions, restoration, and the edge cases most people only learn about when something goes wrong.
It does not cover Supabase itself. For product documentation, use the official Supabase docs. What you will find here is the honest, opinionated companion: what the native tools do, where they stop, and what to do about the gap.
How Supabase backup works (native)
Before you can decide what you need, it helps to understand what Supabase already gives you. Pro plans get 7 days of daily backups. Team gets 14. Enterprise gets 30. PITR is a paid add-on. And there's one category of data that isn't backed up at all.
How Supabase's native backup actually works
A plain-English walkthrough of daily backups, physical vs. logical, retention windows, and where they're stored.
What Supabase's native backup doesn't cover
The gaps: Storage objects, Edge Functions, project deletion, and free-tier pauses. With receipts from real developer reports.
How to back up
Whether you want to script it yourself or automate it, here's how to back up every part of your Supabase project. Each guide shows the manual approach first, then a faster alternative.
How to back up your Supabase Postgres database
Coming soonUsing pg_dump and the Supabase CLI, with a working script you can copy.
How to back up Supabase Storage buckets
Coming soonStorage isn't in the native backup. Here's a script using the S3-compatible API, plus how to automate it.
How to back up Supabase Edge Functions
Coming soonYour function code, configs, and secrets, what to version, what to back up, and how.
How to back up Supabase before a migration
Coming soonThe pre-migration checklist, including what to test on the restore side before you touch production.
How to restore
A backup is only as good as your ability to restore from it. These guides cover the restore paths for each backup type, plus what to do when things don't go to plan.
How to restore a Supabase database from a backup
Coming soonRestoring from Supabase's Dashboard, the CLI, and from a raw pg_dump file.
How to restore Supabase Storage objects
Coming soonRehydrating a bucket from an off-site backup.
Recovering a paused or deleted Supabase project
Coming soonHonest answer: if it's truly deleted, you can't. Here's how to tell, and how to prevent it next time.
Compare your options
"Do I need a backup tool?" depends on your project. Here's how the main options stack up, honestly, including when Supabase's native backup is genuinely enough.
Supabase native backup vs. SimpleBackups
Coming soonSide-by-side. When native is enough. When it isn't.
pg_dump vs. managed Supabase backup
Coming soonDIY scripts vs. a managed service. Real costs, real tradeoffs.
When you actually need Supabase PITR
Coming soonPITR is powerful and paid. Here's when it's worth it and when it isn't.
Best Supabase backup tools in 2026
Coming soonAn honest roundup, including competitors. If another tool fits you better, we'll tell you.
Common problems
The articles people find at 2am when something has gone wrong. If you're here in a panic, start with the one that matches your situation.
"My Supabase data suddenly disappeared"
Coming soonDiagnostic walkthrough: what to check, what to contact support about, what's recoverable.
"My Supabase backup failed"
Coming soonCommon pg_dump errors and how to fix them.
"My free-tier Supabase project got paused and I lost data"
Coming soonWhat actually happens on pause/restore, and why some tables come back empty.
Advanced
For teams with compliance requirements, self-hosted setups, or audit-readiness needs.
Cross-region Supabase backup for compliance
Coming soonWhy region matters, and how to set up replicated off-site backup.
Backing up self-hosted Supabase
Coming soonDatabase, Storage, and configs when you run Supabase yourself.
GDPR-compliant Supabase backup
Coming soonWhat GDPR actually requires, what it doesn't, and how to document your backup process for an audit.
Automating backup verification
A backup you haven't tested isn't a backup. How to automate integrity checks.
Supabase backup FAQ
Short answers to the questions that should be answerable without a click. These double as FAQ schema markup for SEO.
How often does Supabase back up my database?
Every paid project gets one backup per day, taken as a physical snapshot of the Postgres volume. The Free tier has no daily backups at all. If you need finer granularity than a 24-hour window, that's what Point-in-Time Recovery is for, and it's a paid add-on.
How does Supabase backup relate to SOC 2 and GDPR compliance?
Supabase itself is SOC 2 Type II and ISO 27001 certified, but compliance of the platform does not automatically make your backup strategy compliant. Auditors ask whether you have an off-site copy of customer data, whether restores are tested, and whether the backup location respects data-residency rules. Native same-region snapshots alone usually don't satisfy those requirements, which is why teams under GDPR or SOC 2 scope add an off-site backup they control.
How long does Supabase keep backups?
Retention is tied to your plan: 0 days on Free, 7 days on Pro ($25/mo), 14 days on Team ($599/mo), and 30 days on Enterprise. Once a backup ages out of that window, it's gone. If you need longer retention for audit or legal reasons, you need a separate off-site archive.
Can I use the Supabase CLI to back up and restore my project?
Yes for logical backups and restores. The CLI wraps `pg_dump` and `pg_restore` against your project's connection string, which produces a portable dump file you can keep anywhere. It does not expose the native physical snapshots, and it does not cover Storage objects or Edge Functions, so the CLI path is one piece of a full backup plan rather than the whole thing.
What's the first step if I'm new to Supabase backups?
Open your project on a Pro plan or higher and confirm that daily backups are listed in the dashboard, then note your retention window. After that, the two gaps to close are Storage objects and Edge Functions code and secrets, because neither is in the native snapshot. The rest of this guide walks through how to cover each one.
Is PITR included in the Pro plan?
No. Point-in-Time Recovery is a paid usage-based add-on on Pro and Team, billed on top of the plan price. It's usually included on Enterprise. If you want PITR on a Pro project, you enable it from the project's add-ons page and pay per-day of WAL retention.
What's the difference between logical and physical backups?
A physical backup copies the raw database files or volume block-for-block. Supabase's native daily backup is a physical snapshot of the Postgres volume. A logical backup, produced by `pg_dump`, contains the SQL statements needed to rebuild your schema and data, which makes it portable across Postgres versions and providers but slower to produce on large databases.
Can I restore to a different Supabase project?
Yes, with caveats. Native physical snapshots can be restored onto a new project in the same region through Supabase support or the dashboard restore flow, and a `pg_dump` file can be loaded into any fresh Supabase project using `pg_restore`. Cross-region moves and version differences add friction, so test the restore path before you need it.
Does Supabase backup include auth data?
Yes. The `auth` schema lives in the same Postgres database as your application tables, so it's included in both the native snapshot and any `pg_dump` that covers the full database. What is not included is any secret or OAuth configuration that lives outside Postgres, such as provider client secrets set in the dashboard.
Is Supabase backup encrypted?
Supabase stores native backups on AWS infrastructure with encryption at rest, in the same region as the project. In transit, connections to the database use TLS. If you take your own `pg_dump` backups off the platform, encryption of the resulting file is your responsibility.
How much does PITR cost?
PITR is priced as a usage-based add-on on top of the plan fee. A typical Pro project with seven days of WAL retention lands near the low-hundreds-per-month range, but the exact number depends on database size and retention window. Check the add-ons page inside your project for the current figure before committing. [verify]
What's RPO and RTO for Supabase backups?
With daily snapshots only, your Recovery Point Objective is up to 24 hours of potential data loss, because that's the gap between backups. With PITR enabled, RPO drops to seconds, since Postgres is replaying WAL. Recovery Time Objective depends on database size and whether you're restoring onto the same project or a new one, and Supabase does not publish a committed SLA on restore duration.
Glossary
One-line definitions for the terms used across this guide. Written for humans and for AI search.
- PITR (Point-in-Time Recovery)
- A recovery method that replays Postgres Write-Ahead Logs to bring the database back to any exact second inside the retention window, rather than only the moment of the last daily snapshot. On Supabase, it's a paid add-on sitting on top of the native daily backup.
- WAL (Write-Ahead Log)
- The append-only log Postgres writes every change into before applying it to the data files, used for crash recovery and for replicating or replaying changes. PITR works by streaming WAL to a backup location and replaying it up to a chosen point.
- Logical backup
- A backup that captures the database as SQL statements and data, typically via `pg_dump`. Portable across Postgres versions and providers, which makes it the format you want for off-site archives and cross-project restores.
- Physical backup
- A backup that copies the raw database files or underlying volume rather than SQL. Supabase's native daily backup is a physical snapshot: fast to take and restore inside the platform, but not downloadable and not portable to other providers.
- RPO / RTO
- Recovery Point Objective is how much data you're willing to lose, measured in time since the last backup. Recovery Time Objective is how long you're willing to be down during a restore. Every backup strategy is an implicit bet on these two numbers.
- S3-compatible storage
- Any object storage service that speaks the Amazon S3 API, including AWS S3, Cloudflare R2, Backblaze B2, and Wasabi. Supabase Storage itself is S3-compatible, which is why the same tooling and scripts work for backing it up off-site.
Want to skip the scripting? SimpleBackups handles all of this: Postgres, Storage, Edge Functions, with off-site backup to any provider, scheduled and monitored. See how it works →
Noticed something out of date or missing? This guide is maintained by the SimpleBackups team. Email us at hello@simplebackups.com.