Free · No signup · Runs in your browser

See what changed between two CSVs.

Drop two CSV files and get a clear diff — which rows were added, removed and changed, down to the cell. Match by a key column (like id) or by row position. Everything stays in your browser.

01 · How it works

Three steps, then done.

Comparing two exports in a spreadsheet is painful. Drop both here, pick a key column, and get a row-by-row diff: additions, removals and the exact cells that changed.

i. drop

Drop both files

Dataset A and Dataset B — CSV or Excel. Each is parsed locally.

ii. match

Pick how to match rows

By a shared key column (recommended) or by row position if there's no stable key.

iii. read

Read the diff

Added, removed and changed rows are color-coded, with changed cells shown as old → new.

02 · Why ours

A real diff, not a spreadsheet hunt.

Cell-level differences between two files, the moment both are loaded.

  • 01

    Key or position

    Match on a column like id for a true record diff, or by row order when there's no key.

  • 02

    Cell-level changes

    Changed rows show exactly which columns changed and their old → new values.

  • 03

    Added & removed

    Rows only in B (added) and only in A (removed) are listed and counted separately.

  • 04

    Local-first

    Both files are compared in your browser. Nothing is uploaded.

"Diffed yesterday's export against today's and saw the three changed rows instantly."
— a data engineer
03 · FAQ

diff questions.

How does it match rows?
Pick a key column present in both files (like id or email) for a record-level diff. With no key, it compares by row position. Choose from the 'Match rows by' dropdown.
For matched rows, any shared column whose value differs is a change; the diff lists each changed column as old → new. Rows only in one file are added or removed.
Yes. Comparison happens on the columns they share; extra columns on either side are tolerated.
Tens of thousands compare quickly; the on-screen change list is capped for readability but the counts reflect everything.
No — both files are diffed entirely in your browser.