Free JSON Diff
Compare two JSON documents and see what changed.
What is the JSON Diff?
Two JSON payloads that should be identical rarely announce their differences — a flipped boolean, a renamed key, an extra element buried three levels down. Eyeballing them line by line is slow and easy to get wrong, especially once the objects are large.
This JSON diff tool compares two documents structurally and tells you exactly what was added, removed or changed, and where.
Last updated: Aug 13, 2026
What does this tool do?
You paste an original and a changed JSON document, and the tool parses both and walks them together.
It matches object keys and array indexes, then lists every difference with its path — additions, removals and changed values — ignoring cosmetic differences like key order.
Key features
Structural diff
Compares by keys and indexes, not text.
Path for each change
Shows exactly where it differs.
Add / remove / change
Classifies every difference.
Order-insensitive keys
Reordering keys isn't a change.
Private
Runs in your browser — nothing uploaded.
Example
Common use cases
- Developers — Spot what changed between API responses.
- QA engineers — Compare expected vs actual JSON.
- Backend engineers — Diff config or payload versions.
- Data engineers — Check records before and after a transform.
- Reviewers — Understand a JSON change in a PR.
- Integrators — Debug why two payloads behave differently.
- Support teams — Compare a working vs broken config.
- Anyone with two JSONs — Find the differences fast.
Benefits
- It finds differences you'd miss by eye.
- It pinpoints each change with a path.
- It ignores key order, so only real changes show.
- It keeps your data in the browser.
Tips
- Format both documents first if you're also eyeballing them.
- Key order doesn't matter — focus on the reported changes.
- Arrays are compared by position, so inserts shift later indexes.
- For array-of-objects, a stable sort before diffing reduces noise.
- Use it to build assertions for tests from real diffs.
- Large diffs are easier to scan by path prefix.
- Validate each side is real JSON if comparison fails.
- Keep the original handy to confirm intended changes.
Common mistakes to avoid
Expecting array reorders to be smart
Fix: Arrays compare by index; sort both sides first if order isn't meaningful.
Comparing invalid JSON
Fix: Fix syntax on both sides — the tool needs valid JSON to parse.
Worrying about key order
Fix: Key order is ignored; only value and structure changes are reported.
Diffing huge unformatted blobs by eye
Fix: Let the tool report changes by path instead of scanning manually.
How it works
- 1
Paste both versions
Original on the left, changed on the right.
- 2
Compare
It diffs them key by key.
- 3
Review changes
See additions, removals and edits by path.
Frequently asked questions
It walks both documents recursively, matching object keys and array indexes, and reports each addition, removal and changed value with its path.
No. Objects are compared by key, so reordering keys isn't reported as a change.
It parses both documents and walks them recursively, matching object keys and array indexes, then reports each difference with its path.
No. Objects are compared by key, so reordering keys is not reported as a change.
Arrays are compared by index, so an inserted element shifts and changes the positions after it.
A key present in one document but not the other (added/removed), or a differing value at the same path (changed).
It runs in your browser, so very large documents depend on your device, but typical payloads compare instantly.
No. Both documents stay in your browser.
Conclusion
A JSON diff tool turns 'something changed' into a precise list of what and where, so you can review changes with confidence. Pair it with the JSON formatter to tidy each side first.