BackProve vs BackupDrill — two restore-tested Supabase backup services, encrypted in their store or written to your bucket

BackProve and BackupDrill start from the same sentence — a backup you have never restored is a hope, not a backup. Both back up the database and Storage files (BackupDrill once you add the project’s Storage S3 keys) and both restore-test: BackProve every backup, BackupDrill the latest snapshot in a weekly drill on paid plans. The differences are in where the copy lives, who holds the encryption keys, and how the pricing is cut. Facts checked in September 2026.

Side by side

BackProveBackupDrill
Price (as of September 2026)One plan: $12/month for up to 3 projects — daily encrypted backups, daily restore-tested verification, Storage bucket sync, email alerts. No free plan is listedFree: 1 project, weekly, one restore drill on the first backup. Solo $19/month: 5 projects, daily, weekly drills. Team $49/month: 20 projects. Agency $99/month: 100 projects plus client PDF reports
Where the backup landsBackProve's own storage in the European Union, kept separate from the servers that run its application (per its security page); no bring-your-own bucketYour own S3, Cloudflare R2, or Backblaze B2 bucket; bytes stream through the worker and are never written to BackupDrill's disks
What gets backed upThe Postgres database and the files in your Storage buckets, restored as one paired unitThe Postgres database (public schema by default), plus Storage files once you add the project's Storage S3 keys — each file with a sha256 in the snapshot manifest
Restore verificationEvery backup is restored into a fresh Postgres of the same major version with Supabase extensions, and the restored object count is compared with the dump's manifest; unverifiable restores are reported as such rather than passedScheduled drills restore the latest snapshot into a throwaway Postgres and verify archive checksum, restore completion, post-data objects, table counts, populated tables, sampled Storage file checksums, and restore time; weekly on paid plans. Boundary: grants are not in the backup at all (the dump runs with --no-privileges) and have to be re-applied after any restore, and RLS policies that name Supabase-managed roles are reported as skipped in the plain-Postgres sandbox rather than verified
AlertingAlerts when you do not currently have a backup that passed a restore test recently enough — silence from a paused project or dead worker is treated as a failureA failed backup emails you immediately, again after about a day, then weekly until it recovers, with a recovered email when it does; a >30% size drop emails too. Every drill emails its report, pass or fail. Credential failures stop after six attempts with a paused notice instead of reminders
EncryptionBackups encrypted before they leave the environment that creates them and kept encrypted at rest; BackProve holds the encryption keys as operator, and says so plainly; credentials encrypted at rest (AES-256-GCM) and never loggedCredentials sealed with a public key before storage (the console cannot read them back); backup data is protected by your bucket's own encryption and access controls — BackupDrill does not add client-side encryption
Connecting a projectConnection strings and Storage credentials, encrypted at rest per its siteSupabase OAuth creates a read-only backup role without exposing your database password; or a generated SQL snippet; or a pasted connection string
Restore pathThrough BackProve; the site shows a walkthrough of a restore into a clean projectHosted restore wizard restores the database into a fresh Supabase project and hands you the Storage-only CLI command for the files; or the open-source CLI end to end; or plain pg_restore on the artifact in your bucket

Facts checked against backprove.com and its security page in September 2026. Where its site is silent — a free tier — the table says so rather than guessing; confirm with them before deciding.

Choose BackProve if

  • You want encryption handled for you. Backups are encrypted from the moment they are created and stay encrypted at rest, with BackProve holding the keys as operator — its security page says exactly that, rather than pretending otherwise. BackupDrill adds no encryption of its own; the bucket you own supplies encryption and access control, and you configure both.
  • You have up to three projects and want the lowest price that still restore-tests daily: $12/month is hard to beat for that.
  • You like the “freshness” framing — an alert when there is no recently verified backup, not just when a job errors.

Choose BackupDrill if

  • You want the copy in your own bucket, as a standard pg_dump file plus the Storage files, in a region you pick, that you can restore with stock tools without the service in the loop.
  • You want a free plan to start on, or more than three projects: Solo covers 5 for $19/month, Team 20 for $49, Agency 100 for $99 with PDF drill reports you can forward to clients.
  • You would rather not hand over a database password. Supabase OAuth creates a read-only role in the project and the token is discarded once it exists; the role can be revoked with the SQL snippet shown on the project page.
  • You want a hosted database restore into a fresh Supabase project from the console, with the Storage files following through the same open-source engine as a CLI.

The one-sentence difference

Same conviction, different custody: BackProve encrypts your backup and keeps it in the EU, BackupDrill hands it to you in your bucket — and each then proves it restores, BackProve for every backup and BackupDrill for the latest on a weekly drill. If custody is the deciding factor, start with the quickstart — the free plan covers one project.

FAQ

Does BackProve test that backups restore?

Yes — that is its premise. Each backup is restored into a fresh, isolated Postgres of the same major version with the Supabase extensions installed, the restored object count is checked against the dump's manifest, and its security page says policies, RLS flags, and grants are verified; if something cannot be verified, it reports that instead of a false pass. BackupDrill's drills also restore into a throwaway Postgres and check archive checksum, table counts, populated tables, and sampled Storage file checksums — but that sandbox is plain Postgres, so grants are not in the backup at all (the dump runs with --no-privileges) and have to be re-applied after any restore, and RLS policies that name Supabase-managed roles are reported as skipped in the plain-Postgres sandbox rather than verified. That is the boundary to weigh: BackProve claims deeper policy verification, BackupDrill verifies the files too.

Does BackProve back up Supabase Storage files?

Yes. Its site describes syncing the files in your Storage buckets and restoring database and files together, so restored file URLs do not 404. BackupDrill covers Storage files once you add the project's Storage S3 keys, records a sha256 per file, and samples them by checksum during drills.

Where are BackProve backups stored?

On BackProve's own storage in the European Union, kept separate from the servers that run its application, per its security page — encrypted, with BackProve holding the keys. There is no bring-your-own bucket. BackupDrill takes the opposite approach: every snapshot goes into an S3, R2, or B2 bucket you own, readable with standard tools.

Which is cheaper?

BackProve, at $12/month for up to 3 projects versus $19/month for BackupDrill Solo with 5 projects — and no free plan is publicly listed for BackProve, while BackupDrill's free plan covers one project with weekly backups and a drill on the first backup. Per project at scale, BackupDrill's Team ($49 for 20) and Agency ($99 for 100) plans are cheaper than three-project bundles.

Sources

Facts and prices last verified September 7, 2026 against the sources above. Written by the team behind BackupDrill.