rowvela.

Feature · Change preview

Know exactly what an import will change

Rowvela compares the incoming data with the current Airtable table and shows you the result row by row: which records are new, which fields change from what to what, and which records would be deleted. Nothing is written until you approve.

Stripe customers → CRM · CustomersPreview, nothing written yet
New
12
Changed
38
Unchanged
1,204
Delete
1
ChangeMatch keyFieldIn AirtableIncoming
+cus_Q8x2Email—ana@northwind.example
Δcus_P2m7PlanStarterPro
Δcus_P2m7MRR4999
cus_L0c4PlanProPro
−cus_K1t9RecordBright Labsnot in source
Review guard: 4% of records change. Within the threshold.Apply 51 rows

What the preview shows

The preview is stored encrypted for ten minutes together with the import revision. Applying it writes exactly what you reviewed. If you edit the import, the preview is discarded and a new one is needed.

Matching records

To update existing records, Rowvela matches on a key of one to three fields you choose, for example Stripe ID or Order number + Line. Every part of a composite key must be a non-empty value. If two source rows or two Airtable records share a key, the write is blocked instead of guessing.

There is no matching by row position. A source that returns rows in a different order, or a filtered view, never moves data into the wrong record.

Write modes

ModeWhat it does
AppendCreates a record for every source row.
UpsertUpdates records with a matching key and creates the rest.
Update onlyUpdates matching records; unmatched rows are reported as skipped, nothing is created.
Delete missingOptional with upsert: records whose key no longer appears in the source are deleted, as part of the preview.
Action onlySends requests to an API without writing to Airtable at all (see enrichment).

Deleting missing records

Drift check before writing

Between the preview and the apply, someone may edit the table. Rowvela fingerprints the mapped fields and their schema when it builds the preview, then re-reads the table right before writing. If the fingerprint differs, the stale preview is rejected and you review again. Formula fields, last-modified fields and other columns you did not map do not invalidate a preview.

When something goes wrong mid-run

Writes go out in batches of ten and every confirmed batch is recorded. Rowvela never automatically replays a batch whose result is uncertain (a timeout, for example), because that could write twice. The run history shows each row as applied, not sent, or uncertain, so you know what to check.