← All playbooks
Knowledge migration

Airtable → Notion

Move Airtable records into Notion databases while preserving field meaning, relations, attachments, views, ownership, automations, permissions, and evidence for anything CSV cannot carry.

Typical timeline10–20 business days40–75 hours active work
Statusneeds review
Source testedAirtable CSV export guidance reviewed 2026-07-19
Destination testedNotion CSV import guidance reviewed 2026-07-19
Last reviewed2026-07-19
Sources3
Before you migrate

Should you make this move?

Both platforms have a case. Compare what you gain with what you give up before scheduling the cutover.

Current platform

Airtable

Reasons to stay
  • Approachable relational tables combine spreadsheet familiarity with lightweight apps
  • Structured ownership, status, and workflow views improve operational visibility
Reasons to leave
  • Scale, automation, and permission needs can become expensive or awkward
  • Custom fields, automations, history, and reporting are difficult to reproduce exactly
New platform

Notion

What gets better
  • Polished pages and databases let teams build flexible workspaces without code
  • Flexible documents make it easy to capture and organize team knowledge
What gets worse
  • Offline use, export fidelity, and large-workspace governance remain weak points
  • Structure, links, permissions, and rich blocks often degrade during export
Best of the move

Notion: Polished pages and databases let teams build flexible workspaces without code. This removes a major source-side concern: Scale, automation, and permission needs can become expensive or awkward.

Worst of the move

What you lose: Approachable relational tables combine spreadsheet familiarity with lightweight apps. What you inherit: Offline use, export fidelity, and large-workspace governance remain weak points.

01At a glance

Know the shape of the move.

Transfer outcome10 features audited
Transfer outcome distributionClean transfer: 1, Partial transfer: 2, Manual rebuild: 3, Not transferred: 4.
Clean1
Partial2
Manual3
Lost4
Mapping route8 of 8 fields have a destination path

This timeline assumes

  • Up to 20 bases, 100 tables, 100,000 records, and 20 GB of attachments.
  • CSV is the transfer format; Airtable behavior is rebuilt separately.
  • Every table has an unfiltered export view.
  • Stable record IDs are preserved in a dedicated field.
  • Airtable remains read-only during verification.
02Loss matrix

What survives the move.

“Partial” and “manual” are not footnotes. They are work that must be scheduled and verified.

ItemOutcomeImpactWhat happensMitigation
Visible grid records and scalar valuescleancriticalAirtable grid views export CSV and Notion imports rows as database pages.Export an unfiltered view and reconcile row counts.
Filtered-out recordslostcriticalCSV contains only records visible in the exported view.Create a dedicated unfiltered migration view per table.
Field typespartialhighCSV flattens types and Notion may infer mixed columns as text.Create destination properties and map types explicitly.
Linked recordsmanualcriticalNew CSV imports cannot create Notion relations.Preserve Airtable record IDs and rebuild relations after all tables exist.
Lookups, rollups, and formulasmanualcriticalCSV exports calculated values, not reusable logic.Document formulas and rebuild or accept static snapshots.
AttachmentspartialcriticalCSV carries URLs, not guaranteed durable binaries or Notion file objects.Download, hash, and upload critical attachments.
Views, filters, groups, sorts, and colorslosthighCSV does not carry view configuration.Capture screenshots and rebuild approved Notion views.
Automations, scripts, forms, and interfaceslostcriticalAirtable application behavior does not transfer as records.Inventory triggers and replace each essential workflow.
Comments, revision history, and audit eventslosthighCollaboration history is absent from CSV.Resolve open decisions and retain compliance exports.
Permissions and sharingmanualcriticalBase, interface, table, and view access do not map automatically.Design Notion teamspace and page access before import.
03Field and feature mapping

Where each thing goes.

SourceDestinationMethodNotes
Primary fieldTitle propertyautomaticEnsure every row has a useful title.
Text and long textText property/page bodytransformChoose searchable property versus page content.
Number, currency, percentNumber propertytransformVerify locale and formatting.
DateDate propertytransformNormalize timezone and range semantics.
Single/multi selectSelect/multi-selecttransformNormalize option names.
Linked recordRelationmanualRebuild using stable record IDs.
Formula/rollup/lookupFormula, rollup, or static propertymanualRecreate only supported decision logic.
Attachment URLFiles propertytransformCopy binaries before source access changes.
04Before you begin

Make the move recoverable.

Backup procedure

Create the source-of-truth backup

Preserve every record, field definition, relation, attachment, view, automation, and access rule.

  1. Create and export an unfiltered grid view for every table.
  2. Export field schemas, formulas, relation diagrams, views, automations, scripts, forms, interfaces, and permissions.
  3. Download and hash critical attachments.
  4. Record row counts and record IDs per table.
  5. Keep raw CSV files immutable.

Proof to capture: A manifest reconciles bases, tables, records, fields, links, attachments, workflows, and access.

Transformation · CSV plus pre-created Notion databases

Typed table import

Prevent Notion from flattening important types.

  1. Normalize UTF-8, dates, numbers, and headers.
  2. Preserve Airtable record IDs.
  3. Import in dependency order.

Proof to capture: Save the input, output, command or tool settings, warnings, and final item counts.

Transformation · Notion API or controlled manual mapping

Relation reconstruction

Reconnect records after CSV import.

  1. Create all databases first.
  2. Join source IDs to destination page IDs.
  3. Verify both sides of every critical relation.

Proof to capture: Save the input, output, command or tool settings, warnings, and final item counts.

05Handle with care

The things most likely to hurt.

These are operating limits. Treat every “Stop if” condition as a blocked migration, not a suggestion.

Export

Filtered records are omitted

criticallikely likelihood

Export row count matches a filtered view, not the table.

Consequence
Records disappear silently.
Mitigation
Use named unfiltered migration views.

Stop if: Any table count is unexplained.

Import

CSV merge duplicates rows

highpossible likelihood

A repeated import adds rather than updates records.

Consequence
Relations and reporting become unreliable.
Mitigation
Import once into empty databases and preserve IDs.

Stop if: Any stable source ID appears twice.

Verification

Calculated values look right but stop updating

criticallikely likelihood

A formula result imported as static text.

Consequence
Operational decisions use stale data.
Mitigation
Test behavior after changing inputs.

Stop if: Any critical calculation lacks live logic or an accepted manual process.

06Precise timeline

Do the work in this order.

Estimate forUp to 100 tables and 100,000 records
Total elapsed10–20 business days
Active work40–75 hours
BufferAdd time for attachments, complex automations, and relation rebuilding.
01
Days 1–3Inventory3 days
02
Days 4–5Export and preserve2 days
03
Days 6–9Pilot schema4 days
04
Days 10–15Dependency-ordered import4–6 days
05
Days 16–20Final delta and observation3–5 days
  1. Days 1–3 · inventory

    Inventory

    10–16 hours active3 days elapsedOwner review waiting
    • Inventory schemas, workflows, access, and usage.
    • Choose import/archive scope.

    Depends on: Airtable and Notion admins

    Stop / go checkpoint

    Export?

    Go when: Every table and behavior has a disposition.

    Stop when: Critical automation or access is unknown.

  2. Days 4–5 · backup

    Export and preserve

    6–10 hours active2 days elapsedAttachment download waiting
    • Export unfiltered CSVs and metadata.
    • Download attachments and reconcile counts.

    Depends on: Approved scope

    Stop / go checkpoint

    Transform?

    Go when: Rows and files reconcile.

    Stop when: Any table or attachment class is missing.

  3. Days 6–9 · pilot

    Pilot schema

    8–14 hours active4 days elapsedOwner testing waiting
    • Import representative tables.
    • Rebuild types, relations, formulas, and views.
    • Test behavior.

    Depends on: Backup

    Stop / go checkpoint

    Bulk import?

    Go when: Representative workflows return correct results.

    Stop when: Critical logic cannot be reproduced.

  4. Days 10–15 · bulk

    Dependency-ordered import

    12–25 hours active4–6 days elapsedAPI/import processing waiting
    • Import tables in waves.
    • Rebuild relations, files, views, and automation.
    • Reconcile each wave.

    Depends on: Passed pilot

    Stop / go checkpoint

    Freeze Airtable?

    Go when: All waves reconcile.

    Stop when: Duplicates or broken relations remain.

  5. Days 16–20 · cutover

    Final delta and observation

    4–10 hours active3–5 days elapsedUser validation waiting
    • Freeze Airtable.
    • Apply final delta.
    • Switch links and run normal workflows.

    Depends on: Bulk import

    Stop / go checkpoint

    Close rollback?

    Go when: Blocking checks and owner sign-off pass.

    Stop when: A source-only workflow remains.

07The point of change

Cut over with a way back.

Go live

Cutover

Make Notion authoritative after a reconciled final delta.

Recommended window: After the final workday update, followed by a low-change validation day.

  1. Freeze Airtable edits.
  2. Export changed records by stable ID.
  3. Apply reviewed changes to Notion.
  4. Rebuild affected relations and attachments.
  5. Switch forms, links, automations, and instructions.
  6. Make Airtable read-only.

Proof to capture: Record IDs and critical workflows reconcile with one editable system.

Return to safety

Rollback

Resume Airtable without losing Notion changes.

Deadline: Within five business days.

  1. Freeze Notion edits.
  2. Export post-cutover changes by stable ID.
  3. Restore Airtable access.
  4. Apply reviewed deltas.
  5. Restore forms and automations.

Proof to capture: Airtable contains approved changes and again owns all writes.

Rollback immediately when
  • Missing records
  • Broken critical calculations
  • Incorrect permissions
  • Attachment loss
  • Unreliable relations
08Verification report

Prove the migration worked.

Every blocking check must pass. Capture the evidence before cleanup begins.

0%
Interactive report preview0 / 8 checks passed
PassIDCheckMethodExpected resultEvidence
V-01BlockingRecord countsReconcile by table and stable ID.100% accounted for.Count report.
V-02BlockingField valuesCompare stratified records.Types and values match mappings.Field sheet.
V-03BlockingLinked recordsCompare critical relationship pairs.Every approved link resolves.Relation report.
V-04BlockingFormulas and rollupsChange inputs and compare outputs.Approved results update correctly.Scenario log.
V-05BlockingAttachmentsCompare counts, hashes, and samples.Critical files are intact.File manifest.
V-06BlockingOperational viewsRun owner scenarios.Required filters and groups answer the same question.View sign-off.
V-07BlockingPermissionsTest role accounts.Least-privilege access passes.Access matrix.
V-08BlockingForms and automationTrigger each critical workflow.One correct destination result.Workflow log.
09Post-migration cleanup

Remove the scaffolding safely.

Safe after: One complete operating cycle and 30 days without a rollback trigger.

  1. Archive CSVs, schemas, mappings, and evidence.
  2. Revoke temporary API tokens.
  3. Remove obsolete Airtable forms and automation.
  4. Keep Airtable read-only through retention.
  5. Delete unsecured attachment staging.
  6. Schedule quarterly relation, access, and backup checks.
Sources and maintenance

Built to be reviewed.

Tested 2026-07-19. Next scheduled review: 2026-10-19.

  1. Airtable: export grid views as CSVAccessed 2026-07-19
  2. Notion: import dataAccessed 2026-07-19
  3. Airtable: import and export dataAccessed 2026-07-19