JSON Diff Checker

Paste two JSON documents to compare. Added, removed and changed keys are listed with paths and shown side by side with highlighting.

Last updated: 2026/10/16 Developer Feedback & bug reports
Original JSON (old)
Compared JSON (new)

How to Use

1

Paste Two JSON Documents

Paste the original JSON on the left and the JSON to compare on the right. No need to format them first.

2

Click "Compare"

The tool parses both JSON documents and recursively detects added, removed and changed keys. Invalid JSON is reported as an error.

3

Review the Differences

See a path-based list of changes plus a color-coded, formatted side-by-side view. Each panel can be copied with one click.

About the JSON Diff Checker

A web tool that compares two JSON documents and recursively detects which keys were added, removed or changed, then highlights them. It handles nested objects and arrays and lists every difference with its JSON path (e.g. $.user.address[0].city). All processing happens in your browser, so even sensitive API responses and config files can be compared safely.

Features

  • Recursive Deep CompareTraverses nested objects and arrays recursively to extract exactly what changed.
  • Path-Based Diff ListEach change is shown with a JSON path like $.a.b[0], so you instantly see where it occurred.
  • Side-by-Side HighlightFormatted JSON is placed side by side: added = green, removed = red, changed = amber.
  • Fully Client-SideYour JSON is never sent to any server. Compare privately and securely.

Use Cases

  • Diff API responses before and after a change
  • Compare config files (package.json, tsconfig.json, etc.)
  • Verify environment variables and settings across deploys
  • Detect missing or added keys in i18n translation JSON
  • Compare expected vs. actual output in tests

FAQ

Is the JSON diff checker free to use?
Yes, it is completely free. No registration or installation is required—just open it in your browser.
Is my JSON sent to a server?
No. All comparison happens locally in your browser using JavaScript. Your JSON is never uploaded or stored, so sensitive data stays safe.
Can it compare nested arrays and objects?
Yes. It traverses objects and arrays recursively and detects deep differences, listing each one with a path such as $.user.tags[2].
How are arrays compared?
Arrays are compared by index. If the order changes, the shifted positions are reported as changed, added or removed elements.
What happens if I enter invalid JSON?
Invalid JSON is reported with an error message and, when possible, the line and column of the problem. Fix it and click "Compare" again.
Does a different key order count as a difference?
No. Object keys are order-independent—if the keys and values match, they are treated as equal. Only different values are reported as "changed".