Compare two CSV files and see what changed
See exactly which rows were added, removed, or changed between two exports, down to the individual cell. Nothing is uploaded.
How this works
- Add both files. Drop the older file and the newer file onto the page.
- Choose the identifier. Pick the column that identifies the same record in both files.
- Review the four results. Look at what was added, removed, changed, and left alone.
- Download. Save any of the four result sets separately.
What it cannot do
- If the identifier column repeats within a file, the comparison cannot tell which row corresponds to which; this is detected and reported rather than guessed.
- Comparison holds one entry per identifier in memory, so files with tens of millions of distinct identifiers may not finish in a browser tab.
- Without an identifier column, files are compared as whole rows, which finds added and removed rows but cannot tell you what changed inside one.
Questions
- Does the order of rows matter?
- No. Rows are matched by the column you choose as the identifier, so a file sorted differently produces exactly the same result.
- Can I see which specific values changed?
- Yes. Changed rows show the old and new value side by side for each cell that differs, rather than just flagging the whole row.
- What if the two files have different columns?
- That is reported as a change to the columns themselves, not as every single row having changed — which is what a naive comparison would tell you.
- Are 1.10 and 1.1 treated as different?
- For numbers, no; they are the same value written differently. For text, yes. You can set a tolerance if small numeric differences should be ignored.
- Can I use this to reconcile monthly exports?
- That is the main reason it exists. Point it at last month’s file and this month’s, choose the identifier column, and the four result sets tell you what moved.
- Is my file uploaded anywhere?
- No. When you compare two CSV files and see what changed here, the work happens inside this page and the browser is told to block outbound connections, so there is no upload to intercept. Watch the Network tab of your developer tools while you compare two CSV files and see what changed: the only requests are for this site’s own code, and none carries your file.
Your file is processed in this page and never uploaded — the privacy page shows how to confirm that yourself.