Supabase backup guides

Everything we know about backing up and restoring Supabase projects, written down. These are longer reads than the docs: how the options compare, what they cost, and where they quietly fall short.

Backup options

Every way to back up a Supabase project — built-in Pro backups, the $100/month PITR add-on, DIY pg_dump with working commands — and the two gaps they all share.

Backup tools

Six ways to back up a Supabase project, compared honestly on coverage, restore verification, and price — official backups and PITR, Databasus, SimpleBackups, supabackup, DIY GitHub Actions, and BackupDrill.

Restore testing

A backup you have never restored is a hope, not a backup. The manual restore drill with working commands, and two ways to automate it.

GitHub Actions backup

The Free plan includes no automated backups — official advice is one CLI sentence. The complete scheduled workflow: secrets step by step, the 5 GB/month egress reality, and why weekly is the free-tier frequency.

PITR vs BackupDrill

An honest cost and coverage comparison. PITR wins outright on recovery granularity; here is what it does not cover, and when running both makes sense.

SimpleBackups vs BackupDrill

Breadth versus verified restorability: SimpleBackups covers more of the Supabase stack; BackupDrill restore-tests every backup. Compared honestly.

Databasus vs BackupDrill

Both restore-test their backups — rare agreement. The real choice: free self-hosted on a machine you run, or hosted with Storage files in the drill.

Storage files & restores

A database restore only brings back storage.objects metadata — the actual files live elsewhere. Why they need their own backup, and two ways to do it.

Disaster recovery

Six failure scenarios mapped to the backup that saves you and the path back — RPO and RTO in Supabase terms, a triage runbook, and a 15-point checklist.

Backup to Cloudflare R2

Zero egress fees change the restore math. The complete R2 setup: bucket and scoped credentials, the endpoint and path-style details, working CLI config, and a weekly GitHub Actions schedule.

Backup to AWS S3

The standard choice, set up properly: bucket and least-privilege IAM with the exact policy, CLI config with region instead of endpoint, and lifecycle rules that keep old snapshots cheap.

Backup to Backblaze B2

The cheapest storage of the three destinations, with egress free up to 3x what you store. Bucket and application key setup, the keyID → Access Key ID mapping, working CLI config, and lifecycle housekeeping.

Backup to Google Drive

Drive is not S3-compatible, and most backup tools — ours included — cannot write to it. Two honest paths: a DIY pg_dump + rclone workflow, or supabackup — and why teams end up on object storage anyway.