ReviveDB backs up Supabase projects on Postgres 17 outside Supabase, and restores every database backup into a temporary PostgreSQL database before it counts as verified.
The restore is compared with an inventory of the source: tables, rows, columns, constraints, indexes, sequences, views, functions, triggers, RLS policies, grants and extensions. Row counts alone miss a restore that loses a constraint or a policy.
Each backup run uses its own short-lived, read-only Postgres role that also reads rows behind row-level security. The same recovery point holds Auth data, Storage files and Edge Functions.
A recovery point restores into a new Supabase project, or into the original after a rehearsal on a copy. Free for one project: https://revivedb.dev