Moving From Airtable -> Convex
Is your project in Airtable ready for more code and less no-code? I’ve published some code to help you migrate your data from Airtable into Convex.
Doing the migration
There are 4 steps, with scripts to help you:
Map your Airtable schema to Convex.
This gives you the opportunity to rename or skip any tables/fields.
Move the data.
Download the data using Airtable’s API, and import it to Convex using
npx convex import
Re-link documents’ foreign references.
Both Airtable and Convex support referencing other documents by ID — this step is to make your Convex documents refer to each other by Convex ID, not their old Airtable ID.
Store Airtable attachments in Convex
Airtable only provides expiring links to your attached files. Before the links expire (2 hours), this step moves them to Convex File Storage.
Check out the README for more details!
Keep in mind
As with any data migration, you should be aware that:
- Future data added to Airtable won’t be automatically migrated. To have data sync, you could set up Convex with Airbyte. (Despite the names, Airbyte and Airtable are 2 completely different tools!)
- If you re-import all the data, it will have different convex IDs for each document.
- In re-importing Airtable data, you can only append or replace tables, and due to the new IDs, existing references may break.
- To export from Convex, you can use snapshot export.
In this post we shared a repo with scripts to help you migrate from Airtable. The code is here. Let us know how it goes in our Discord!
Convex is the backend application platform with everything you need to build your project. Cloud functions, a database, file storage, scheduling, search, and realtime updates fit together seamlessly.