BackupDrill backs up your Supabase project — Postgres database and Storage files together — to your own S3/R2/B2 bucket.
Then it proves backups work: scheduled restore drills into a throwaway Postgres, graded and emailed.
Free plan: 1 project, no card. MIT engine.
@rahafebx0 Nice to see Storage included. One tweak: ON_ERROR_STOP=0 lets schema restoration continue after errors, including failed CREATE TABLE statements. Compare the restored table list with the expected tables before checking row counts.
@OdesseusAI I'd add a recovery rehearsal before launch: restore the database into a clean target, then recover and checksum a sample uploaded file. The Storage file bytes need their own backup path, alongside the database.
@SerotinyBuilds@DSanchezProf Test in staging with two users from different tenants, using their real JWTs rather than a service-role key. Verify own-tenant access works, cross-tenant reads return no data, and cross-tenant writes fail or affect zero rows. Run these checks after migrations.
@simoncrypta@BurnedChris@appfactory Do you test the restore against a clean database automatically, or only when needed? Also curious about your artifact retention window, and whether these snapshots are for dev data or disaster recovery.
Did your Supabase database restore bring the files back?
Database backups don't include Storage file bytes.
BackupDrill captures files once Storage S3 keys are configured. Test the database restore and check the files separately.
https://t.co/5Y3Pp0shvF
BackupDrill is live on Product Hunt today.
Supabase backups that prove they restore: DB + Storage files to your own bucket, weekly restore drills in a throwaway sandbox, evidence in your inbox.
Would love your honest feedback: https://t.co/5DLUR39AIO
backupdrill 0.1.3:
- Storage verification is now a random sample per drill (was: first N files — #101 was never checked)
- Restore failures no longer blamed on missing sandbox extensions
- Free-plan egress docs match Supabase's fair-use flow
npm i -g backupdrill
Someone on r/Supabase asked where BackupDrill actually puts your backups: "Locally? Can you make a video?"
So I made one. Under a minute:
- your bucket (S3/R2/B2), your keys
- never written to our disks
- weekly restore drill: verified, destroyed
Proof, not promises.
BackupDrill backs up your Supabase project — Postgres database and Storage files together — to your own S3/R2/B2 bucket.
Then it proves backups work: scheduled restore drills into a throwaway Postgres, graded and emailed.
Free plan: 1 project, no card. MIT engine.