Guide
Comparing two CSV or Excel files to see what was added, removed or changed
Two versions of the same table and one question: what is different? Price lists from last week and this week, a member list before and after an import, an export from the old system and the new one. Reading two spreadsheets side by side misses things. This tool compares them row by row and cell by cell, and shows exactly what was added, removed and changed.
Loading the two versions
Drop the older file into the left box (A) and the newer one into the right box (B). Each can be a CSV, a TSV, a sheet of an Excel workbook, or pasted data, and the two do not have to be the same format. Separators and text encodings are detected per file.
Choosing a key
The key is the column, or combination of columns, that identifies a record: an ID, a product code, an order number or an email address. With a key, rows are matched wherever they are in the files, so sorting and inserted rows do not matter. A column named like an ID is preselected; click the chips to change the selection. Use two keys when only the combination is unique, such as store plus date.
Comparing row by row
With no key selected, row 1 of A is compared with row 1 of B, row 2 with row 2, and so on. That suits files that are guaranteed to be in the same order, like two runs of the same report. If one row is inserted near the top, every following row appears changed, which is the clearest sign that you need a key.
Reading the result
Four counts summarize the comparison: changed, added, removed and unchanged. Click a count to show or hide those rows. Added rows have a green background, removed rows a red one. In changed rows, every cell that differs is highlighted and shows the old and new value, such as “129.00 → 119.00”, so you see the change without switching between files.
Different columns
Columns are matched by their header names. A column that exists only in A or only in B is listed above the result and shown, but not compared, because there is nothing to compare it with. Renamed columns therefore appear as one removed and one new column; rename them first with Edit CSV Columns if you want them compared.
Loose matching
“Ignore extra spaces” is on by default, so trailing spaces and double spaces do not count as changes. “Ignore upper/lower case” is off, because in many datasets a change of case is a real change; switch it on for names and emails.
The difference report
Download the visible rows as CSV, Excel or TSV with a Status column first. Changed cells contain “old → new”, so the report is readable on its own, for example as an attachment to a change request or an audit trail.
Typical comparisons
Checking a supplier’s new price list against the old one before updating a shop, verifying that a data migration moved every customer, reviewing which members joined or left a club since the last export, or confirming that a cleaned file differs from the original only where intended.
Related tools
For plain text files, the Diff Checker compares line by line. To remove repeated records before comparing, use Dedupe CSV. To combine the two files instead, see Merge CSV Files.
Checked against the current version of the Compare CSV Files on .

