Compare JSON Files Online
Compare two JSON files directly in your browser. See rows only in file A, only in file B, and rows common to both — no upload required.
How to compare JSON files
- Drop the older file into the File A box and the newer file into the File B box. Each box shows the row and column count once the file has loaded.
- Click Compare. The tool first lists every column with a coloured dot: green for columns that match by name and type, yellow for a type mismatch, and blue or purple for columns found in only one file.
- Read the three summary cards: Only in File A, Only in File B, and In both files. Each card shows the full row count. Click a card or tab to preview up to 500 rows of that set.
- Click Download while a tab is active to save that set as a new file in the same format, for example prices_only_in_file_a.csv.
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
A supplier sends a new price list each month. You want to see which lines were dropped or repriced since last month, and which products are new.
Input (JSON)
[
{
"sku": "KB-101",
"product": "Wireless keyboard",
"price": 49.99
},
{
"sku": "MS-220",
"product": "Ergonomic mouse",
"price": 34.5
},
{
"sku": "HD-310",
"product": "USB-C hub",
"price": 59.99
},
{
"sku": "CB-015",
"product": "HDMI cable 2m",
"price": 12.99
}
]Settings
- File A: last month's price list (shown above)
- File B: this month's list. KB-101 and HD-310 are unchanged, MS-220 is now 32.0, CB-015 is gone, and DS-400 Laptop stand at 44.95 is new
- Active tab: Only in A
Result
| sku | product | price |
|---|---|---|
| MS-220 | Ergonomic mouse | 34.5 |
| CB-015 | HDMI cable 2m | 12.99 |
Rows are compared on every shared column at once, so a repriced product counts as a different row. MS-220 appears in Only in A with its old price and in Only in B with its new price. Only in B also holds DS-400. In both holds KB-101 and HD-310. Row order within each set is not guaranteed.
Working with JSON files
A JSON array of objects becomes a table with one column per key. Key order inside each object does not matter, and an object that is missing a key gets NULL for that column. If a key exists in only one file, it is listed as blue or purple in the schema panel and the rows are compared on the remaining keys.
Nested objects become struct columns. They are part of the comparison only when their shape is identical in both files. If File B added a field to an address object, the whole address column counts as a type mismatch and is skipped. A number stored as 42 in one file and "42" in the other is also a type mismatch. The downloaded result is a JSON array of objects containing only the compared keys. Arrays of plain values, such as a list of tags, are compared as whole lists, so the same tags in a different order count as a change.
Frequently Asked Questions
Does key order matter when comparing two JSON files?
No. Each object is loaded into columns by key name, so {"id":1,"name":"A"} and {"name":"A","id":1} are the same row.
Can I compare JSON files where one has extra keys?
Yes. Keys found in only one file are shown in the schema panel and left out of the comparison. Rows are matched on the keys both files share with the same type.
How does the comparison decide two rows are the same?
It uses only the columns that exist in both files with the same name and type, and treats two rows as equal when every one of those values matches. Rows only in A are found with a set difference, and rows in both with a set intersection. A changed value makes the row appear once in each Only set.
What happens to duplicate rows?
Each result set lists distinct rows. If a row appears three times in File A and never in File B, it appears once in Only in A. Use Find Duplicates first if the number of copies matters.
Can I match rows on a key column and see which fields changed?
No. The tool compares whole rows, not rows joined on an ID. To see field-level changes, load both files in the SQL workspace and join them on the key column.
Related Tools
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.
Deduplicate JSON Files Online
Remove duplicate rows from JSON files instantly in your browser. No upload, no server — 100% private.
Merge JSON Files Online
Merge and concatenate multiple JSON files into one, directly in your browser.
Compare CSV Files Online
Compare two CSV files directly in your browser. See rows only in file A, only in file B, and rows common to both — no upload required.
Compare Excel Files Online
Compare two Excel files directly in your browser. See rows only in file A, only in file B, and rows common to both — no upload required.
Compare Parquet Files Online
Compare two Parquet files directly in your browser. See rows only in file A, only in file B, and rows common to both — no upload required.
JSON Viewer Online
View and inspect JSON files directly in your browser. Browse rows, check column names and data types — no upload required, your data stays on your device.
Convert JSON to Parquet Online
Convert JSON files to Parquet format directly in your browser. No upload required — your data never leaves your device.