Key Concepts
Before getting started, here are the terms you'll encounter in Twins.
Clone
A clone is a one-time operation that copies components from one Supabase project (source) to another (target). Each clone is recorded as a job with a status (pending, in progress, completed, failed) and a detailed report.
A clone can include all or some of the components: schema, data, functions, storage, etc. You choose what gets copied via the clone options.
Twin (pair)
A twin is a persistent pair between a source project and a target project. When you run a clone between two projects, Twins automatically creates a twin.
Twins are used to:
- Quickly find your project pairs on the dashboard
- Re-run a clone without re-selecting the projects
- View the history of all clones performed between these two projects
- Configure ignore rules specific to this pair
- Schedule automatic clones for this pair
Component
A component is a type of clonable object in a Supabase project. Twins handles 13 components:
| Component | Example |
|---|---|
| Tables (schema) | CREATE TABLE users (...) |
| Data | The rows in your tables |
| Views | CREATE VIEW active_users AS ... |
| Functions | CREATE FUNCTION calculate_total(...) |
| Triggers | CREATE TRIGGER on_user_created ... |
| RLS Policies | CREATE POLICY "users can read own data" ... |
| Edge Functions | Serverless functions deployed on Supabase |
| Storage | Buckets and files (images, documents, etc.) |
| Auth Users | Supabase Auth user accounts |
| Cron Jobs | Scheduled tasks via pg_cron |
| Webhooks | HTTP notifications on DB events |
| Realtime Config | Which tables are published in real time |
| Project Config | OAuth providers, API settings |
Each component can be enabled or disabled individually during a clone.
Connected account
A connected account is a Supabase account linked to Twins. You can connect one or more Supabase accounts via:
- OAuth — direct connection with your Supabase account (recommended)
- Personal Access Token (PAT) — a token generated from Supabase settings
Each connected account grants access to all projects and organizations associated with that Supabase account.
Preview
The preview is the step before launching a clone. It retrieves the source project's metadata to show you:
- The number of tables, rows, functions, etc.
- Warnings (large tables, missing extensions, etc.)
- An overview of what will be cloned
Verification
Verification is a post-clone check. It compares the source project and the target project to detect:
- Missing tables or columns
- Row count differences
- Objects that were not cloned correctly
Scheduled clone
A scheduled clone is a clone that runs automatically at regular intervals (every 2h, 6h, or 8h). It is associated with a twin and reuses the same clone options for each execution.
Useful for keeping a staging environment synchronized with production.
Ignore rules
Ignore rules allow you to exclude certain tables from data cloning. They are configured at the twin level and apply to all clones (manual and scheduled) for that pair.
Example: exclude the analytics_events table that contains millions of rows unnecessary for staging.
Backup
A backup is a snapshot of cloned data, saved to S3. If enabled during the clone, it allows you to restore the data later without needing the source project.
Next steps
- Quickstart — Your first clone
- Connecting an account — Link your Supabase account
- Creating a clone — Complete guide to the cloning process