CSV comparison
Match two CSV files by key columns and review added, removed and changed records with downloadable reports.
Processed on your device. Your files are never uploaded by Justility.
How privacy worksHow it works
Paste or select original and revised UTF-8 CSVs, read their columns, and choose shared columns that uniquely identify records. Compare the files, review changes, then download the difference report and added or removed records.
Supported formats
Two CSV/TSV files up to 20 MB and 50,000 data records each; required unique, nonempty headers, up to 200 columns and two million cells per file. Comma, tab, semicolon or pipe delimiters. Three CSV reports up to 50 MB combined.
Good to know
Keys must be nonempty and unique in each file. Values remain text. Header and row order do not affect matching; added or removed columns count as changes even when empty. No fuzzy matching. Previews show 50 differing records with shortened long cells.
Worked example
Before
Original: id,name,amount / 001,Ada,10 / 002,Sam,20 / 003,Lee,30. Revised: 001,Ada,12 / 002,Sam,20 / 004,Robin,40. Key: id.
After
1 added (004), 1 removed (003), 1 changed (001), 1 unchanged (002).
The comparison CSV includes status, key, changed column names and complete before/after JSON objects. Added and removed record downloads preserve the respective source columns.
Match records with a stable identifier
Select an ID, email or combination of columns that identifies exactly one record. Duplicate or empty keys stop the comparison. Leading zeros remain significant. Optional whitespace and case normalization applies to both keys and values. Renaming a key produces a removal and addition.
CSV cleaner & deduplicatorTroubleshooting
How do I fix duplicate CSV comparison keys?
Select additional key columns to create a unique combination, or inspect duplicates in CSV cleaner. Do not delete a legitimate repeated record just to satisfy a key: choose the columns that represent its actual identity.
Common questions
What if a column was added, removed or reordered?
Reordered columns match by exact header name. Added and removed column names appear in the summary and matched rows count as changed. Before/after JSON preserves missing fields separately from empty values.
Can I use this without an internet connection?
Yes, after you prepare this tool from Offline help and the browser retains its assets. Installation is optional. All processing dependencies are bundled locally.