⇆
JSON DiffCompare two JSONs · Added / Removed / Changed · Path-level diff
All tools run in your browser · Free to use

JSON Diff — Compare JSON Online

A plain text diff is a poor fit for JSON: reordering keys or changing indentation makes everything look different even when the data is identical. JSON Diff compares the parsed structure instead, so it reports only real changes — keys that were added, keys that were removed, and values that changed.

Every difference is listed with its full JSON path (for example $.user.address.city), which makes it fast to compare two API responses, check a configuration change before deploying, or verify that a data migration produced the expected output.

How to use

  1. Paste the original JSON into the JSON A panel and the updated JSON into the JSON B panel.
  2. Optionally click Format Both to tidy both documents first.
  3. Click Compare. Additions are shown in green, removals in red and changed values in amber.
  4. Click any result row to jump to that line in the diff view.
  5. Use Edit to go back and adjust either side, or Copy Report to copy a plain-text summary of every difference.

Example

Comparing {"name":"Alice","age":30,"city":"Paris"} with {"name":"Alice","age":31,"country":"FR"} reports:

  • ~ Changed $.age : 30 → 31
  • − Removed $.city : "Paris"
  • + Added $.country : "FR"

Frequently asked questions

Does key order matter?
No. Objects are compared key by key, so {"a":1,"b":2} and {"b":2,"a":1} are treated as identical.
How are arrays compared?
Arrays are compared position by position, because order is meaningful in JSON arrays. Inserting an element near the start will therefore show changes for the elements after it.
Is my data uploaded?
No. Both documents are parsed and compared in your browser.

Privacy

This tool runs entirely in your browser. The data you paste or open is processed locally and is never uploaded to or stored on our servers.

Related tools