Free JSON diff (pretty-printed)
Validate JSON locally, optionally ignore key order, then diff formatted lines — ideal for API responses and config drift.
How to use this tool
- 1
Open JSON diff
Use it for this task: JSON comparison, line-level highlights, parse-error feedback, pretty-printed diff - in-browser.
- 2
Add both versions
Paste the old and new content into the two input panels so the tool can compare them side by side.
- 3
Review the differences
Use the highlighted changes to copy the final version, fix mismatches, or share the diff.
Quick facts
| Runs offline? | Yes — after load, processing stays in your browser. |
|---|---|
| Uploads data? | No. Your JSON never leaves this tab. |
| Account required? | No signup or login. |
| Locales? | UI in 7 languages; diff logic is locale-agnostic. |
Top use cases
- JSON comparison, line-level highlights, parse-error feedback, pretty-printed diff - in-browser.
- Runs offline?: Yes — after load, processing stays in your browser.
- Uploads data?: No. Your JSON never leaves this tab.
- Account required?: No signup or login.
- Locales?: UI in 7 languages; diff logic is locale-agnostic.
FAQ
Does my data leave this device?▾
No. Parsing and diff run locally; we do not receive your JSON.
Does this validate JSON?▾
Yes — both sides must be strict JSON (ECMA-404). Invalid input shows the parser error before any diff.
What does sort keys do?▾
When enabled, object keys are sorted recursively before pretty-printing so reordering keys alone does not show as a change.
Is this a semantic JSON diff?▾
No — after formatting, we show a line diff like git diff. Good for configs and API payloads; not a tree-level patch format.
How large can inputs be?▾
Limited by device memory; very large documents may slow the tab.
How to report issues?▾
Use the Contact link in the site footer.