Compare Excel files online

Compare records from the first worksheet of each XLSX file, or from a CSV. Other worksheets are not compared. Content stays in your browser. Everything runs locally, with no account required.

XLSX · CSV

XLSX ≤ 30 MB compressed · expanded ≤ 150 MB · 100,000 rows × 1,000 columns · CSV/TSV ≤ 50 MB

Excel Compare

Compare records from the first worksheet of each XLSX file, or from a CSV. Other worksheets are not compared. Content stays in your browser.

XLSX · CSV
Original file
Drop an .xlsx, .csv, or .tsv file here
Updated file
Drop an .xlsx, .csv, or .tsv file here

Content is processed in your browser · Not sent to the application server · Free to use

Synthetic worked examples · 22 October 2026

Reconcile a warehouse and shop by SKU

Use the synthetic sample action above the workbench, then click Compare. To load files yourself, download warehouse.csv and shop.csv, select SKU as the key, and keep tolerance at 0. Row order differs intentionally. Preserve SKU codes such as 0001 as text.

The expected result is 16 changed, 2 added, 2 removed and 4 matched records. A repeated DUP key and a blank key are held for review, rather than paired by row order. Download the expected counts and rules. Negative stock is a reported value; ExactDiff cannot decide which source is correct.

  1. Load the synthetic sample above the workbench, or download both CSV files and open reconciliation.
  2. For manually selected files, choose the custom key SKU and leave numeric tolerance at zero.
  3. Compare the twenty stock differences and review the duplicate and blank-key groups separately. Download the report and keep both source files unchanged.

Product plus currency identifies a price

Before / after: use custom keys SKU, Currency in the CSV tool. SKU alone is ambiguous. The composite key yields one changed price and two matches. 001, 01 and 1 are different identifiers.

Equal totals can hide different records

Both before and after total 30, but A is duplicated. Reconciliation reports one withheld group, with no claimed matches. A full-row duplicate check is a different question from key uniqueness.

A formula becomes a stored value

Formula workbook / value workbook: Sheet!B2 changes from 1+1 to a stored 2. Formula diff reports the removed expression; data comparison sees the same cached value. Neither tool recalculates or approves the formula.

A European CSV is still text

Semicolon fixture includes a quoted semicolon, escaped quotation marks, a newline inside a field, Unicode and decimal commas. The parser keeps 10,50 as text. No date, currency or locale conversion is implied.

Three sheets, different coverage

Before workbook / after workbook: Inventory is unchanged; Prices and Archive values change, and Archive is renamed. Data reconciliation compares only the first worksheet, Inventory, and warns that the workbook has three sheets. Formula diff and structural audit scan all sheets for their respective tasks; neither is a full workbook value diff. Coverage and expected outcomes.

How Excel Compare works

ExactDiff reads the first worksheet locally, matches records using the selected key, normalizes values according to your settings, and reports each changed field.

The comparison is deterministic: the same files and settings produce the same classification. File contents remain inside the current browser session.

Get a cleaner result

  1. 01Choose a stable unique key such as SKU or employee ID.
  2. 02Use a numeric tolerance when harmless rounding differences are expected.
  3. 03Review duplicate keys before relying on matched-row totals.

Frequently asked questions

Are my Excel files uploaded?

No. The browser reads and compares them on your device; ExactDiff does not send file contents to a server.

Can it compare reordered rows?

Yes. Key-based matching treats row order as irrelevant and compares the records with the same key.

Private by design

Runs in your browser

Content is processed in your browser and not sent to the application server

Works without an account