LitewaresFree browser utility

Two exports. One clear handoff.

CSV Change Report

See what changed between two exports of the same list. Match items by their existing IDs, even when rows move. Start with your files or try the example.

Local processing · No uploads · No account · Limited, privacy-conscious usage counts

1. Choose the older and newer files

Choose the older export under Before and the newer one under After. A CSV is a table saved as a text file.

Comma-separated UTF-8 files, with headers. Maximum 2 MiB, 10,000 rows, 100 columns and 200,000 cells per file. Headers must be at most 256 UTF-8 bytes; an 8 MiB combined report budget may require smaller comparisons.

Choose two CSV files or try the example.

What changed between exports?

Review a weekly inventory, customer list or project-status export without manually lining up rows. Choose the same stable ID in both snapshots, then share a readable record of additions, removals and changed values.

A synthetic example

In the built-in example, ID 001 stays unchanged, ID 002 moves from Pending to Closed, ID 003 is removed and ID 004 is added. The second file has a different row and column order. Try it above without choosing any files.

Compare CSV exports without counting export timestamps.

Export timestamps can change on every row while only one inventory quantity changes. These synthetic snapshots use exact SKU strings, including leading zeros.

Before

SKU,Quantity,ExportedAt
001,8,2026-10-22
002,3,2026-10-22

After

SKU,Quantity,ExportedAt
002,5,2026-10-29
001,8,2026-10-29

With SKU selected and no exclusions, both records are changed. Ignore ExportedAt to get 1 changed record and 1 unchanged in compared columns: SKU 002 changes Quantity from 3 to 5. SKU 001 has no compared-value change; its timestamp still differs. The scoped changed-values CSV contains scope rows and one changed-value row for Quantity, not a timestamp difference.

The example selects ExportedAt for you. Choose Create change report, then Compare all columns to see the difference. Synthetic workflows are excluded from usage events. Ignoring is not redaction or proof that the complete rows are identical.

Limited usage measurement

Plausible counts pageviews, tool visits, real comparison starts, ready reports and download requests. Synthetic examples do not count as workflows. We send no file contents, filenames, headers, IDs, values, query strings or arbitrary properties. Page URLs are fixed; external referrals include only HTTP(S) protocol and hostname, without ports. No tracking cookies or app storage are used. Plausible receives ordinary connection information, including your IP address and browser information, for aggregate statistics. Download requests do not prove files were saved.

Before sharing a report

Reports contain your original values and IDs, which may include personal or confidential information. Review every download before sending it to anyone. Files are processed only in memory on your device; clear or refresh the page to discard working data. Downloaded copies remain on your device. Visiting this website still sends ordinary connection information to the hosting provider.

Know exactly what is compared

Values are compared as exact, case-sensitive strings. Spaces, accents, leading zeros and “1” versus “1.00” count as changes. There is no fuzzy matching, numeric rounding or hidden cleanup. Row and column order do not matter.

Added and removed columns are listed separately and count as changes for every matched row, including empty values. Missing columns are not treated as empty cells. Duplicate IDs or headers stop the comparison rather than guessing.

This tool is for reviewing exports, not financial reconciliation, compliance or proving that your source data is correct. Keep original files.

New to comparing exports? Try the shuffled CSV example.