Data quality
File Compare Utility
Compare two exports, highlight changed values, and download a CSV with the original cell addresses.
Streamlit app

The problem
When a new export reorders columns, a side-by-side check can make identical values look different. Reviewers need to see what actually changed and where to check it.
Design decisions
I aligned columns by header and kept the original cell address on each side of the report. The utility reads CSV, delimited text, and Excel. It compares rows by position, so line up records first if they need to match by ID.
Try a sample comparison
Compare two sample inventory exports. The demo matches columns by header and rows by position.
inventory-before.csv
CSV ↓| Row | SKU | Item | Qty | Status | Warehouse |
|---|---|---|---|---|---|
| 2 | A101 | Desk lamp | 12 | Ready | East |
| 3 | A102 | Wall shelf | 7 | Ready | East |
| 4 | A103 | Plant stand | 5 | Review | West |
| 5 | A104 | Desk tray | 9 | Ready | West |
inventory-after.csv
CSV ↓| Row | SKU | Item | Status | Qty | Audited |
|---|---|---|---|---|---|
| 2 | A101 | Desk lamp | Ready | 14 | Yes |
| 3 | A102 | Wall shelf | Review | 7 | Yes |
| 4 | A103 | Plant stand | Review | 5 | Yes |
| 5 | A104 | Desk tray | Ready | 9 | Yes |
What it does
Multiple file formats
Compare CSV, delimited text, or Excel files with shared columns aligned by header.
Structure and type checks
See which columns appear in only one file and where types differ in shared columns.
Before and after values
Trace changed values to their original cell addresses, even when a column moves.
Shareable CSV report
Export changes with filenames, row numbers, and cell addresses for review.
Screenshot tour
Inspect the input files
Preview two sample inventory exports and check that the rows line up before comparing.

Built with
- Python
- Streamlit
- pandas
Next application
North Star