EXCEL / CSV COMPARE · LOCAL PROCESSING
Find what changed. Understand why.
Compare two Excel or CSV files by the columns that identify each record. Row order does not determine a match. Files and results stay in your browser; review the rules and export a fresh audit workbook.
Choose what identifies a record
Select File A and File B, inspect each sheet, and confirm each header row. Map one key or several keys: for example, Order + Line. The two files can use different column names. Choose comparison fields explicitly or use the action that maps unique identical titles; review the proposed mappings. Columns are never matched by position alone.
Four results, with source rows
ADDED means the key exists only in B; REMOVED means only in A. CHANGED means both sides have the key but at least one selected field differs. UNCHANGED means all selected fields match. The summary counts participating keys after the chosen policies. Review raw A/B values, source row numbers and changed fields using bounded pages and filters.
Duplicates and empty keys need a decision
Empty and duplicate keys block Run by default. Explicit alternatives are first or last row for duplicates, and empty-as-value or exclude for empty keys. Duplicate groups and excluded rows remain visible in validation and the audit export. Group matching and automatic sequence numbers are not available.
Exact values first
00123 and 123 are different by default; long text IDs are not converted to JavaScript numbers. Opt in separately to whitespace trimming, case folding, numeric or date normalization, blank/empty equivalence and line-ending normalization. Date normalization of 03/04/2026 requires your MDY or DMY choice. Excel date serials retain their date system; the fictitious 1900 leap day cannot be normalized.
Formats and resource limits
Inputs are .xlsx and UTF-8 .csv, including BOM and explicit comma, semicolon or tab delimiters. XLS and XLSM are rejected. There is no fixed original-file size cap; default content budgets are 10,001 rows including headers and 300,030 cells across the workbook. At most 32 sheets, 256 columns and 32,767 characters per cell are accepted. ZIP/XML, decompression and text budgets can reject files earlier.
Advanced desktop mode permits up to 100,001 rows and 3,000,030 cells per input, subject to memory and a 60-second task timeout. It is experimental, not a capacity guarantee. Low-capability and mobile devices receive lower limits and cannot use advanced mode. Desktop recommended; no claim of unlimited rows or support for every workbook.
Export a fresh audit workbook
XLSX export schema v2 includes Summary, Changed, Added, Removed, Duplicates_A, Duplicates_B and Run_Settings; Unchanged is optional. It keeps machine mapping IDs and adds readable A/B column headers plus a mapping crosswalk. Source labels default to A/B. You may explicitly include filename-derived labels, after a visibility warning, or enter custom short labels; local paths are never used. Source date candidates are exported as explicit serial-and-epoch text so different workbook epochs cannot silently change a date.
Formula representations are compared with cached values but are never executed or recalculated. Export writes formula source plus its typed cache as audit text, keeps formula-like text inert, retains text IDs, and creates a new workbook without source macros, links or embedded objects. Export has a separate output-cell budget: 650,000 by default or 6,500,000 when both inputs use advanced mode. A very wide or mostly added/removed result may need fewer selected fields or a smaller input.
A synthetic example to check
Invented data: A contains ID 00123 / Status Pending, ID OLD / Status Ready, and ID KEEP / Status Ready. B contains ID 00123 / Status Ready, ID NEW / Status Pending, and ID KEEP / Status Ready. Map ID to ID and compare Status. With exact matching, the expected result is one Changed, one Removed, one Added and one Unchanged. These are synthetic labels, not company records.
Privacy and session cleanup
Files and comparison values stay in the browser. The workbench has no upload API, ads, analytics, session replay or business-data storage. Opening the page still requests its static assets. Clear or Cancel terminates the processing Worker, discards both inputs and results, and revokes download URLs. Re-select both files to start again.
Frequently asked questions
Do differently sorted rows create changes? No: keys determine matching. Can headers start below row 1? Yes: inspect and confirm the actual row on each side. Does the tool guess ambiguous dates? No. Does it recalculate formulas? No; stale cached formula values remain a source-file limitation.
Can I compare on a phone? Small files may work within reduced limits, but desktop is recommended. Does a successful comparison guarantee business correctness? Review mappings, warnings and raw source values before relying on the output.