CSV Diff Checker Free

Compare two CSVs side by side, with changed, removed, and added rows highlighted in color.

Paste text instead
Paste text instead
Rows to show

About this tool

Like most diff tools, it lines up the old and new files row by row: a removed row leaves the right side blank, and an added row leaves the left side blank.

A changed row is highlighted in yellow, with the specific cells that differ shown in a darker yellow.

If the rows are in a different order, select an ID column so rows with the same value are matched up instead of compared by position.

The result can be saved as a CSV.

This tool runs entirely in your browser. Your files are never uploaded to our server.

When to use it

Useful for comparing two snapshots of the same kind of CSV, such as a member list or inventory list, to see what changed, was added, or was removed.

Also useful for comparing a CSV before and after a manual edit, to make sure no unintended changes slipped in.

How to use

  1. Load the original (old) CSV and the new CSV.
  2. The old file appears on the left and the new one on the right. Yellow means changed, red means removed (blank on the right), and green means added (blank on the left).
  3. Use "Rows to show" to filter to just the changed, removed, or added rows. Click "Full screen" if the table is too wide to read comfortably.
  4. Save the result as a CSV.

What counts as a "changed" row

A row where only some values differ, at the same position, is shown as changed, side by side, with the differing cells in a darker yellow.

A row where more than half the values differ is instead treated as two separate rows, shown as one removed and one added.

FAQ

Can it compare CSVs whose rows are in a different order?
Yes. Open "When the row order differs" and select a column with a unique value per row, such as a member ID or product code. Rows are then matched by that value regardless of order. If you leave it unselected, rows are compared from the top, so even just reordering rows will show up as removals and additions.
I loaded the old and new files in the wrong order.
Click "Swap old and new" to switch sides without reloading either file.
What format is the saved CSV?
It follows the same layout as the table, with a column added at the start marking "Changed", "Removed", or "Added", and the old and new rows placed side by side. That column is blank for unchanged rows. If you filter with "Rows to show" before saving, only the rows shown are included.