SuperAPI AI Directory

BackupDrill

BackupDrill is an automated backup tool for Supabase projects that backs up databases and Storage files to the user's own cloud storage bucket and verifies backup availability through regular restore drills. It supports storage targets such as Amazon S3, Cloudflare R2, Backblaze B2, and Wasabi. Paid plans provide daily backups and weekly restore drills, while the free plan provides weekly backups and a first restore drill, with no credit card required.

Open website

About this tool

BackupDrill is an automated backup service for Supabase projects. Its core feature is writing backups directly to cloud storage buckets owned by the user, and regularly performing restore drills to prove that backups can actually be restored.

Purpose

Supabase's built-in backups have limitations in coverage and portability: its database backups (including daily backups and PITR) cover only the database itself, while Storage objects store only metadata in the database, so recovery can only retrieve file pointers that may no longer exist; some projects (such as those using physical backups or with PITR enabled) cannot download backups from the console. BackupDrill addresses these gaps by providing a solution that snapshots both the database and Storage files together, writes them to the user's own storage bucket, and regularly verifies recoverability.

Main capabilities

  • Back up the database: output as standard pg_dump files, making it easy to restore with pg_restore in any environment.
  • Back up Storage files: after adding the S3 key for the project's Storage, Storage files and the database are included in the same snapshot.
  • Write to your own storage bucket: supports Amazon S3, Cloudflare R2, Backblaze B2, and Wasabi. Backups are streamed directly to the user's bucket, and the service provider retains no copy.
  • Restore drills: regularly restore the latest backup to a temporary database, check the archive sha256, whether pg_restore completed, whether the table count matches, whether tables with data are non-empty after restoration, and, when the snapshot includes Storage files, spot-check their sha256; record the actual restore duration, destroy the temporary environment after completion, and send the report to email.
  • Failure email alerts: send email alerts when backups or drills fail.
  • Console snapshot history: displays snapshot records; objects in the bucket always belong to the user and old objects can be expired through lifecycle rules.
  • Open-source backup engine: the engine is MIT licensed, so the CLI run by the hosted service can be audited, and it can also be run yourself.

How to use

  1. Connect a Supabase project: click Connect Supabase and select a project. The tool will create a read-only backup role in the project, with no database password and no service_role key required. You can also choose to run a three-line SQL snippet or paste a connection string.
  2. Choose a backup target: specify your own Amazon S3, Cloudflare R2. A storage bucket on Backblaze B2 or Wasabi; the service provider keeps only the encrypted access key.
  3. Scheduled backups: weekly backups on the free plan, daily backups on the paid plan; the database is output as a standard pg_dump file, and after adding the Storage S3 key, Storage files are backed up as well, uploaded directly to the user's bucket.
  4. Restore drills: performed once a week on the paid plan, and once after the first backup on the free plan.

Restoring Storage files to a new project is the only exception, requiring that project's service-role key, which is entered during restore and is not stored. Connecting to Supabase requires Postgres 16 or later; for older projects, use a pasted connection string instead.

Pricing

  • Free plan: weekly backups, 3 console snapshot history entries, up to 1 GB per project, one restore drill included with the first backup, no credit card required, no time limit.
  • Paid plan: $1 for the first month, then starting at $19 per month (the $19 tier provides daily backups, weekly restore drills and email reports, 30 snapshot history entries, and up to 10 GB per project).
  • Higher tiers: $49/month (up to 25 GB per project), $99/month (60 snapshot history entries, up to 100 GB per project, PDF customer reports, priority support).
  • Annual payment: pay for 10 months. Comparison: Supabase PITR costs $100 per project per month and does not include Storage files. If you need a recovery point within 24 hours, you can use both together.

Use cases

  • Side projects using Supabase, products with real users, small teams, and projects delivered to clients.
  • Teams that want backup data stored in their own cloud storage and need automatic verification that backups can be restored.
  • Users who are not satisfied with the Supabase free plan (no reliable backups) or who need both the database and Storage backed up.

Limitations

  • Restore drills are performed only once after the first backup on the free plan, and once a week on the paid plan.
  • The number of snapshot history entries is counted by console records; objects in the bucket are not automatically cleaned up, and users need to add lifecycle rules themselves.
  • A backup is written only to the user's bucket, and the service provider does not keep a copy, so data governance and storage costs are borne by the user.
  • The information provided does not specify the supported range of Supabase plans, specific regions, or storage providers other than those above.