JSON Compare
Structural diff — ignores formatting and key order
Paste JSON into both panes to compare them.
Everything runs in your browser. Your data never leaves your device.
Related tools
How to use
A text diff on JSON reports noise: reindent a file or reorder two keys and every line appears changed. This tool parses both sides first and compares the resulting values, so only real differences are reported.
Paste both documents
The left pane is treated as the original and the right as the changed version. The labels matter only for how additions and removals are described.
Read the paths
Each difference shows the path to the value, such as user.roles[2] or limits.burst, so you can navigate straight to it in your source file.
Interpret the three kinds
Added means present only on the right, removed means present only on the left, and changed means both sides have the key with different values.
Examples
Comparing two config versions
Between two config files the tool reports version changed from 1 to 2, features[2] added with the value "i18n", and limits.burst added with 20 — three precise facts instead of a wall of changed lines.
Proving two payloads are equivalent
Two API responses with keys in different orders and different indentation are reported as structurally identical, which a line-based diff would have flagged as entirely different.
About this tool
Compare two JSON documents by value rather than by text. Every difference is listed with its full path, marked as added, removed or changed. Because the comparison works on parsed data, reordered keys and reformatted whitespace are correctly treated as identical — which a line-based diff cannot do.