Skip to content

Developer Tools

JSON Diff Checker

Compare two JSON objects or arrays and get a clear, path-addressed report of added, removed, and changed values.

Comparison is structural (key order ignored; array order significant) and runs entirely in your browser.

Semantic Diff Is the Point

Line-based diff tools report that two JSON files differ, but not what changed semantically: a reordered array, a reformatted-but-equal object, or a single changed field all look identical in noise. Structural diff compares parsed trees, so key reordering disappears (it never mattered) and the real change — one price field, one added array element — is what shows. The comparison order also matters for arrays, where position is meaningful: if position is not meaningful, sort before diffing to remove the noise.

How the Tool Works

  1. Paste the original JSON in the first panel and the modified JSON in the second.
  2. Both payloads are parsed and validated — syntax errors are reported with the exact problem.
  3. The tool walks both trees recursively and reports every difference with its full path (e.g. user.address.city).
  4. Differences are grouped by type: added, removed, and changed, each showing old and new values.
Formula & Technical Standard
Recursive structural comparison over parsed JSON trees; leaf values compared with strict equality.

Example Input & Output

Compare two API responses
Input: response-v1.json vs response-v2.json
Output: 1 key added, 1 value changed at data.items[3].price
Path-addressed output points exactly at the changed node, even inside deeply nested arrays.
Verify a config migration
Input: old-config vs new-config
Output: Removed: legacy.enabled · Changed: workers 4 → 8
Before deploying a config change, diffing proves nothing else moved unintentionally.

Common Questions

Does the comparison ignore key order?

Yes. Objects are compared by key, not by order — {a:1, b:2} equals {b:2, a:1}. Array order, however, is significant.

Is my JSON sent to a server?

No. Parsing and diffing happen locally, so API payloads with real user data stay on your machine.