# Supabase dump check

> Paste a Supabase pg_dump and see every dependency on Supabase itself, what fails on plain Postgres, and what the Scribase importer does with it.

Source: https://scribase.com/tools/supabase-dump-check

An in-browser checker: paste the output of `supabase db dump` or `pg_dump --schema-only`. Nothing is sent to a server.

It finds and counts: calls to `auth.uid()`, `auth.jwt()` and `auth.role()`; references and foreign keys to `auth.users`; triggers on auth tables; the `anon`, `authenticated` and `service_role` roles and Supabase service roles in GRANT, OWNER TO and policy TO clauses; `storage.objects` and `storage.buckets`; the `extensions` schema; every CREATE EXTENSION that is not stock Postgres; the `supabase_realtime` publication; and the vault, cron, net, supabase_functions, graphql and pgsodium schemas.

For each item it shows the first lines where it appears, what happens on plain Postgres (fails, needs a fix, or works) and what the Scribase importer does (works, one manual step, or not supported). pgsodium and any extension outside the [extensions directory](https://scribase.com/extensions) are reported as not supported.

To move the live project instead of the file, the dry run is:

```sh
scribase import supabase --project-ref abcdefghijklmnopqrst \
  --org acme --project app --env production \
  --connection-string "$SOURCE_DB_URL" --service-key "$SOURCE_SERVICE_KEY" --dry-run
```