Import from Airtable to Rowbase
Updated 28 July 2026 · 9 min read
On this page
Moving a typical 5-table Airtable workspace to Rowbase takes about an hour, most of it verification. This guide walks every step, tells you plainly what won't survive the trip, and gives the workaround for each case. If you haven't decided to migrate yet, read the honest comparison first — this page assumes you've counted your linked records and concluded you don't need them.
Before you start: what survives, what doesn't
| Migrates | Notes | |
|---|---|---|
| Rows and values | ✓ | Up to 5,000 rows per import, 10 MB per file |
| Field types | ✓ auto-detected | Email, URL, checkbox, date, number, single select, text |
| Single selects | ✓ | Options rebuilt from your data's distinct values |
| Team structure | ✓ manually | Invite editors/viewers in minutes, viewers are free |
| Linked records | ✗ flattened | Become text (the linked record's primary field) |
| Formulas | ✗ values only | The last computed value imports as static text/number |
| Attachments | ✗ | Download from Airtable separately; no attachments in Rowbase v1 |
| Automations | ✗ | Recreate the row → Google Sheets case natively; see step 4 |
| Views, interfaces | ✗ | Rowbase gives one grid per sheet, by design |
One Airtable table gives one Rowbase sheet. If the ✗ column contains things you use daily, stop here — sincerely. Baserow migrates linked records better, and Airtable remains excellent.
Step 1 — Export each table from Airtable
In Airtable, open each table's grid view → view menu → Download CSV. Three details that save you a redo:
- The export takes the current view: unhide any hidden fields you want to keep, and clear filters — a filtered view exports only the visible rows
- Linked-record fields export as comma-separated names — decide now whether to keep that column as text or drop it
- Formula fields export their computed values — usually what you want
If a table runs past 5,000 rows, filter it into slices before exporting. Each slice imports into the same sheet and appends to it, so nothing is lost.
Step 2 — Import into Rowbase
In Rowbase: + New table → Import CSV, drop the file. From an existing sheet, the same dialog opens with Import a CSV.
Two limits worth knowing before you export: a file of 10 MB maximum, and 5,000 rows read per import. Beyond that, the extra rows are not imported — split the export rather than trusting a large file to go through whole.
Columns are created on the sheet currently open. A column whose name already matches an existing one is reused as is; the others are appended after it.
Step 3 — Check the type mapping
Rowbase reads your values and proposes a type per column. Detection tries, in this order: email, URL, checkbox, date, number, then single select when a column holds few distinct values. Anything else is text.
Review the proposal before committing — the three classics:
- Dates: the format read is the file's, not your browser's. A
MM/DDexport read asDD/MMsilently swaps days and months, so confirm the column before writing rather than fixing rows after - Selects: columns with few distinct values are proposed as single select, options auto-built with a colour each; switch to text if the values are actually free-form
- Checkboxes: Rowbase recognises
true/false,0/1,xandoui/non. Airtable exports its checkboxes aschecked, which detection reads as a select — set those columns to checkbox by hand
Nothing is written until you confirm.
Step 4 — Verify, invite, reconnect the Sheet
- Check the row count: the import button states how many rows it is about to write, so compare that figure with Airtable before clicking rather than after
- Rename the technical columns Airtable sometimes adds to exports
- Invite your team — editors take a seat, viewers are free and unlimited
- If your old workflow pushed data to Google Sheets via Zapier or an extension: recreate it natively in Automations → row added → your Sheet, without a third-party subscription — for many teams this is the reason they're here
Workarounds for what didn't migrate
Formulas — two honest options: keep the imported static values (fine for historical data), or move the calculation where it now belongs: your synced Google Sheet. A formula column in the Sheet, fed by live Rowbase rows, replaces most Airtable formula fields — and your spreadsheet-fluent colleagues can finally maintain it.
Linked records — the flattened text column keeps the information readable. If two tables genuinely need to stay linked, that's the signal you shouldn't have migrated (we mean it).
Attachments — download them from Airtable before your plan lapses; store them in Drive and paste share links into a URL field if you need them row-adjacent.
Troubleshooting
- Accents mangled (é, è): the CSV isn't UTF-8 — re-export from Airtable directly rather than via Excel, which re-encodes on save
- Dates all wrong by swap: the
DD/MMvsMM/DDclassic — fix the type in step 3 rather than editing rows after - Duplicate column headers: Airtable allows two fields with the same name; Rowbase suffixes the second — rename before or after, nothing breaks
- Rows missing after import: the file went past 5,000 rows. Split the export and import the remainder into the same sheet, where it appends
FAQ
Can I import multiple CSVs into one sheet? Yes — subsequent imports append their rows, matching columns by header name. A header that already exists reuses its column; a new one is added at the end. This is how you bring in a table too large for a single import.
What happens if I run the same import twice? The rows are added a second time. There is no de-duplication and no replace: an import only ever appends. If you re-import to correct a type, delete the rows written by the first pass.
Is there a direct Airtable API import? Not in v1 — CSV is the path. It's also the path that forces the type review above, which catches years of accumulated data drift; teams end up glad they did it.
Can I go back? Your Airtable base is untouched by the export: it stays exactly as it was, and you can run both in parallel during your trial. Bulk export out of Rowbase is not available yet.