How to Copy Data From One Airtable Base to Another

Airtable keeps each base completely separate by default. Data in one base does not automatically appear in another, and there is no native setting to link two bases together the way you can link two tables within the same base.

This becomes a problem when you have a real reason to split data across bases but still need some of it to flow between them. A CRM in one base and a project tracker in another. A client intake base and a delivery team base. A product catalogue shared across multiple department bases.

There are three ways to handle it. Which one is right depends on whether you need one-way or two-way sync, what Airtable plan you are on, and whether you need to transform data in transit.

Before You Start: Consider Staying in One Base

If you are setting up bases for the first time and wondering whether to split things up, it is worth asking whether you actually need separate bases at all.

Airtable's linked records, views, and interfaces can handle a surprising amount of complexity within a single base. Separate tables connected by linked records often do everything that separate bases would do, without the data sync problem.

If you have not already decided to use multiple bases, read When to Use One Airtable Base vs. Multiple before going further. Staying in one base is always simpler if your situation allows it.

If you have already decided multiple bases are necessary, here are your options.

Method 1: Airtable Sync (One-Way and Two-Way)

Airtable Sync is the native way to keep data live between bases. It comes in two modes: one-way sync, where the destination is read-only, and two-way sync, where edits in the destination flow back to the source. Which mode you get depends on your plan.

One-Way Sync (Team plan and above)

One-way sync mirrors a view from your source base into a table in another base. Changes in the source appear in the destination automatically. The destination table is read-only - you cannot edit records there, only view them.

This is the right choice when you want one team to see another team's data without being able to change it. For example, a project delivery base that shows client records from a CRM base, but where only the CRM team can update those records.

How to set it up:

  • In the source base, open the table you want to share and create a view with the fields and filters you want. Only what is visible in this view will sync.

  • Click Share and sync in the toolbar, then Sync data to another base.

  • Generate a sync link and copy it.

  • In the destination base, click the + button to add a new table, choose Sync from another source, then Airtable view, and paste the sync link.

  • Choose which fields to include and create the synced table.

Share a view in Airtable to enable syncing to another base

The synced table will update automatically in real time as the source changes. You can also trigger a manual sync at any time.

Two-Way Sync (Business and Enterprise plans only)

Two-way sync is a more powerful version of Airtable Sync where edits made in the destination table sync back to the source. This means teams in different bases can both work on the same records without one overwriting the other.

The key concept is that there is always one source table (the single source of truth) and one or more target tables in other bases. Edits made in any target sync back to the source first, and from there propagate to all other targets on the next sync.

How to enable two-way sync:

When setting up the sync share in the source base, you need to enable the Allow edits from other bases toggle. This is the critical step that makes it two-way. Without this toggle, the sync is one-way regardless of what you configure in the destination.

You can also choose:

  • All editable fields or Specific fields to control what the destination can edit

  • Allow creating new records to let destination users add new records (which will be created in the source)

  • Allow deleting records to let destination users delete records from the source

When setting up the destination table, enable the Edit source records option in the final step of the sync configuration.

Important limitations of two-way sync

Two-way sync is powerful but has real constraints worth knowing before you build around it:

  • Attachment fields cannot be edited in the destination

  • New records can only be created in the source by default, not in target tables, unless you explicitly enable this in the source sync settings

  • New fields added in a target do not sync back to the source - they are local to that base only

  • API calls cannot edit records in target tables - two-way sync edits must be done through the Airtable interface or automations (using the Update Record action only, not scripts)

  • Daisy-chaining is not allowed - a target base cannot itself become the source of another two-way sync to a third base

  • Source views with more than 200,000 cells (records x fields) cannot be used as two-way sync sources

  • Sync propagates in real time for most field types, but time-based formula fields and customized linked record fields may take longer to update

  • Gantt views do not support edits from two-way sync targets

Two-way sync in interfaces

If you have a two-way sync set up, you can also allow edits through interfaces built on the target base. Interface elements like Grid, Record detail, Calendar, Kanban, Timeline, and Gallery all support two-way sync edits when configured correctly. You enable editability per field in the interface builder.

Plan requirements

FeaturePlan required
One-way syncTeam, Business, Enterprise
Two-way syncBusiness, Enterprise only
Airtable Sync on free planNot available

Method 2: Make or n8n (All Plans)

Automation tools like Make and n8n connect to Airtable via the API and can watch for changes in one base and write them to another. This approach works on all Airtable plans including free and gives you more flexibility over how data is transformed in transit.

How to set it up in Make

The basic structure is:

  • Trigger: Watch for new or updated records in the source base (Airtable: Watch Records module)

  • Action: Create or update the matching record in the destination base (Airtable: Create a Record or Update a Record module)

Connect your Airtable account in both modules, select the relevant bases and tables, and map the fields from source to destination. Test with a new record and confirm it appears correctly.

What automation tools offer that native Sync does not

Works on free Airtable plans. Make and n8n do not depend on your Airtable subscription level. If you are on the free plan and cannot use Airtable Sync at all, this is your option.

Transform data in transit. You can modify data before it lands in the destination. Reformat a date, combine two fields, change a status value, or filter which records cross over based on conditions.

Trigger additional actions. The same scenario can copy the record and simultaneously send a Slack notification, create a task in another tool, or log to a spreadsheet.

More control over two-way sync logic. Airtable's native two-way sync has constraints around field types, API edits, and daisy-chaining. If your use case runs into those limits, building the sync in Make or n8n gives you more flexibility, though at the cost of more setup and maintenance.

When to use automation tools vs. native Airtable Sync

If you are on the Business or Enterprise plan and need two-way sync, native Airtable Sync is simpler to set up and maintain than building it in Make. Use Make when you are on a lower plan, need to transform data in transit, or your sync requirements fall outside what native two-way sync supports.

If you are on the Team plan and need read-only one-way sync, native Airtable Sync is the right choice. Make adds unnecessary complexity when one-way sync works fine natively.

Method 3: Manual CSV Export and Import (All Plans, One-Time Copy)

If you need to copy data once rather than keep it in sync on an ongoing basis, a manual CSV export and re-import is the simplest approach and works on all plans including free.

  • In the source base, open the table and the view that contains the records you want to copy.

  • Click the ... menu next to the table name and select Download CSV.

  • In the destination base, open the table where you want the records to go (or create a new one).

  • Click Add or import and select CSV file. Upload the file you just exported.

This transfers raw data cleanly. Field types, linked records, formulas, and attachments do not transfer and will need to be configured manually in the destination. For plain data (text, numbers, dates, single select values), it works reliably.

This method is best for initial data migrations, one-off transfers, and situations where you need a static copy of a dataset at a point in time rather than a live-updating mirror.

Choosing the Right Method

One-Way Airtable SyncTwo-Way Airtable SyncMake / n8nCSV Export
Plan requiredTeam+Business/EnterpriseAny (incl. free)Any
Updates automaticallyYes (real-time)Yes (real-time)Yes (event-based)No
Destination is editableNoYesYesYes
Changes write back to sourceNoYesYes (with setup)No
Transform data in transitNoNoYesNo
Setup complexityLowMediumMedium-HighMinimal
Good for one-time migrationNoNoNoYes

For a one-time data copy, CSV is all you need.

For ongoing one-way sync on a Team plan, use native Airtable Sync.

For two-way sync on a Business or Enterprise plan, use native two-way Airtable Sync.

For free plan users, or when you need transformations or logic that native sync does not support, use Make or n8n.

For more on moving entire tables between bases rather than keeping them in sync on an ongoing basis, see How to Move a Table from One Airtable Base to Another.

For moving data from a spreadsheet into Airtable for the first time, Spreadsheet Import gives you full column and row control with a live preview before anything is written.