Compare Schema of Excel Files Online
Compare the schemas of two Excel files directly in your browser. See which columns exist in each file and spot type mismatches — no upload required.
How to compare Schema of Excel files
- Drop the first file onto the File A area and the second onto File B. Both must be in the format this page is for.
- The comparison runs as soon as both files are loaded. There are no settings to choose.
- Read the four counts at the top: Matched, Type mismatches, Only in A and Only in B.
- Go through the column-by-column list. Each column has a coloured dot and shows its type in one or both files.
- Drop a new file on either side to compare again. Nothing is downloaded, because the result is an on-screen report.
Your file is processed locally in your browser and is never uploaded. The free limit is 50 MB per file; larger files work if your device has the memory for them.
Worked example
An inventory team loads each monthly stock count into the same database table. April's export came from a new warehouse system and the load failed. File A is March's export, shown below.
Input (Excel)
Excel workbook, first sheet (Sheet1)
| sku | product_name | qty_on_hand | unit_cost | last_counted |
|---|---|---|---|---|
| HB-M8-40 | Hex bolt M8x40 | 420 | 0.12 | 2026-03-31 |
| WS-M8 | Washer M8 | 1150 | 0.03 | 2026-03-31 |
| NT-M8 | Nyloc nut M8 | 610 | 0.05 | 2026-03-30 |
Settings
- File B (April) has the columns sku, product_name, qty_on_hand, unit_cost, warehouse, count_date
- One qty_on_hand value in File B is "12 (est)", so that column loads as text
- No other settings: the diff runs once both files are loaded
Result
| column | file_a_type | file_b_type | status |
|---|---|---|---|
| sku | VARCHAR | VARCHAR | Matched |
| product_name | VARCHAR | VARCHAR | Matched |
| qty_on_hand | BIGINT | VARCHAR | Type mismatch |
| unit_cost | DOUBLE | DOUBLE | Matched |
| last_counted | DATE | NULL | Only in A |
| warehouse | NULL | VARCHAR | Only in B |
| count_date | NULL | DATE | Only in B |
The summary shows 3 matched, 1 type mismatch, 1 only in A and 2 only in B. qty_on_hand is in both files, but one annotated value made the April column text. last_counted and count_date hold the same data under different names. Columns are matched by exact name, so the tool lists them as unrelated. Renaming count_date to last_counted would turn two differences into one match.
Working with Excel files
Excel columns have no declared type. The first sheet of each workbook is turned into text using what each cell displays, and the types are guessed from that text. Cell formatting therefore changes the result. A price column formatted as currency, such as $1,200.00, loads as VARCHAR, while the same numbers in General format load as numbers. Two workbooks with identical values can show a type mismatch for that reason alone. Dates are the exception. Cells with a date format load as DATE however they are displayed, so 3/2/26 and 02-Mar-2026 compare as the same type. A date left in General format loads as a serial number such as 46083, which shows up as a numeric type against DATE.
Header cells are compared as text. A header with a line break typed with Alt+Enter will not match the same words on one line. Merged header cells leave the rest of the range blank, and a blank header gets a placeholder name such as column3. Only the first sheet of each workbook is compared, so extract the sheet you care about first if it is not the first one.
Frequently Asked Questions
Why does the same column show VARCHAR in one workbook and a number type in the other?
Usually cell formatting. Currency, accounting and thousands-separator formats load as text because the loader reads the displayed value. Set both columns to General or Number in Excel, save, and compare again.
Can I compare two sheets from the same workbook?
Not in one step, because the tool reads the first sheet of each file. Save each sheet as its own workbook, or use the Excel Sheet Extractor, and drop one on each side.
Does schema diff compare the data in the rows?
No. It compares column names and types only. The row count of each file is shown under its drop area, but values are never compared. Use Compare Files to find rows that differ.
Are column names matched case-sensitively?
Yes. Email and email count as two different columns, one only in A and one only in B. Column position does not matter: a column is matched by name wherever it sits.
Why is INTEGER against BIGINT reported as a mismatch?
Types are compared by their exact names. INTEGER and BIGINT, or DECIMAL(10,2) and DECIMAL(18,2), count as mismatches even though the values fit together. A wider type in the new file is usually safe to load. Text where a number used to be usually is not.
Related Tools
Rename Columns in Excel Files Online
Rename columns in Excel files instantly in your browser. No upload, no server — your data stays on your device.
Cast Column Types in Excel Files Online
Change column data types in Excel files directly in your browser. Cast text to numbers, dates to timestamps, or any supported type conversion — no upload required.
Merge Excel Files Online
Merge and concatenate multiple Excel files into one, directly in your browser.
Compare Schema of CSV Files Online
Compare the schemas of two CSV files directly in your browser. See which columns exist in each file and spot type mismatches — no upload required.
Compare Schema of Parquet Files Online
Compare the schemas of two Parquet files directly in your browser. See which columns exist in each file and spot type mismatches — no upload required.
Compare Schema of JSON Files Online
Compare the schemas of two JSON files directly in your browser. See which columns exist in each file and spot type mismatches — no upload required.
Excel Viewer Online
View and inspect Excel files directly in your browser. Browse rows, check column names and data types — no upload required, your data stays on your device.
Convert Excel to Parquet Online
Convert Excel files to Parquet format directly in your browser. No upload required — your data never leaves your device.