# Compare two tables — row diff by key, no upload

> Diff two tables on a primary key to find added, removed, and changed rows, with a side-by-side summary and exportable report. Runs in your browser, no upload.

Diff two local tables on a primary-key column to find added, removed, and changed rows, with a side-by-side summary you can export. Both files are compared on your device with no upload.

When two versions of a dataset arrive — yesterday's export and today's — a key-based diff tells you what actually changed: new records, deletions, and edited fields. That's far more useful than eyeballing two spreadsheets.

It needs a key column to match rows reliably. To combine rather than compare, use Join; to profile either file first, use the Data profiler.

## How to

1. **Add two files.** Drop the old and new versions of the table.
2. **Pick a key.** Choose the primary-key column that identifies a row.
3. **Diff.** See rows that were added, removed, or changed.
4. **Export.** Download the diff report.

## FAQ

### How do I compare two versions of a CSV?

Choose a key column and the tool matches rows across the files, then reports which were added, removed, or had changed values.

### Does it show which fields changed?

Yes. For changed rows it highlights the differing columns, so you see exactly what moved between versions.

### Are my files uploaded to compare them?

No. Both tables are diffed in your browser, so the data stays on your device.


## Related tools

- [Join tables](https://www.safepaper.app/data/join)
- [Schema profile](https://www.safepaper.app/data/profile)
- [Compare](https://www.safepaper.app/docs/compare)
- [Row deduplicator](https://www.safepaper.app/data/dedupe)

---

Canonical HTML: https://www.safepaper.app/data/diff
Markdown: https://www.safepaper.app/data/diff.md

There is no upload endpoint — your files are processed in this browser tab. Open your network tab and check.
