Airtable is a good product. The concern is where the records live: in someone else's platform, under terms that can change, with an export that loses part of what makes the base work, such as formulas and links. For records a business depends on, we wanted a copy we run ourselves and can take anywhere.
What we use instead
Baserow is open source and looks and works much like Airtable: tables, views, links between records, formulas and forms. We run it on a small rented cloud server, about US$7 a month, with its data in a PostgreSQL database on the same server. It is reachable only through a sign-in gate in front of it, and the database is backed up every night.
How we moved
- Export each base from Airtable through its API, including attachments.
- Load it into a test workspace first, never straight into the real one.
- Rebuild formulas. Most convert directly; some need rewriting by hand.
- Compare every value, field by field, between Airtable and the new copy. For our first two bases that was 2,245 and 8,131 values, with 0 differences.
- Only then switch the people and the automations over, and stop editing the old base.
Two traps we hit
Number precision. In Airtable, a number field's display precision doesn't limit what it stores. In the new database it does. One field set to whole numbers held a 22.5, and that single value got a whole batch of 200 rows rejected. Exchange rates with 7 decimal places would have been cut to 6. The fix was to size each field's decimal places from the data actually in it, never from the display setting.
Date differences. A formula counting whole years between two dates gave a different answer after the move, because the new database rounds where Airtable counts whole years. A company 8.87 years old came out as 9, which pushed a renewal date out by a year. We rebuilt the formula from calendar years, months and days so it counts the way people do.
Neither would have been noticed without the value-by-value comparison. That step is the migration; the rest is copying.
After the move
- A nightly backup of the database and the attached files, with a restore test before relying on it.
- Keep the old Airtable base read-only for a while, as a reference, then close it.
- Programs that wrote to Airtable get their own narrow access tokens on the new database, one per program, so any one can be switched off on its own.