Clone Options

When creating a clone, you choose exactly what will be copied from the source project to the target project.

Components

Each component can be enabled or disabled individually:

ComponentEnabled by DefaultWhat Is Copied
SchemaYesTables, columns, constraints, indexes, sequences, custom types, extensions
DataYesRows from all tables (or a subset)
ViewsYesSQL views
FunctionsYesPostgreSQL functions and stored procedures
TriggersYesTable triggers
RLS PoliciesYesRow Level Security access rules
Edge FunctionsYesSupabase serverless functions
StorageYesBuckets and files
Auth UsersYesUser accounts with metadata
Cron JobsYespg_cron scheduled tasks
WebhooksYesDatabase webhooks
RealtimeYesReal-time publication configuration
Project ConfigYesAuth providers, PostgREST settings

Row Limit

When the Data component is enabled, you can set a maximum number of rows per table.

ValueBehavior
Empty or 0All rows are cloned
1,000Maximum 1,000 rows per table
10,000Maximum 10,000 rows per table

This is useful for:

  • Creating a staging environment with a reduced dataset
  • Reducing clone time
  • Testing with a controlled data volume

Table Exclusion

You can exclude specific tables from data cloning using ignore rules. These rules are configured at the twin level and apply to all clones of that pair.

See Ignore Rules for more details.

Backup

Enable the backup option to save a snapshot of the cloned data. This allows you to restore the data later without needing the source project.

See Restoring a Backup for the restoration procedure.

Option Persistence

When you start a clone from an existing twin, the most recently used options are pre-filled. You don't have to reconfigure everything each time.

Full Migration

Everything enabled, no row limit. To fully duplicate a project.

Schema Only

Enable: Schema, Views, Functions, Triggers, RLS. Disable: Data, Storage, Auth, Edge Functions, Cron, Webhooks, Realtime, Config.

To synchronize the structure without touching the data.

Data Only

Enable: Data. Disable: Everything else.

To refresh the data when the schema is already up to date.

Lightweight Staging

Everything enabled, row limit set to 1,000. For a test environment with a reduced data volume.

Next Steps