FreeOnlineQR

JSON Compare

Paste two JSON documents and see precisely what differs between them. A normal line diff is close to useless on JSON, because reformatting or a different key order rewrites every line without changing a single value. This compares the parsed data instead and reports differences by path — so you get `~ user.address.city: "Leeds" → "York"` rather than “lines 4 to 19 changed”.

Sorts arrays of primitives before comparing, so [1,2] and [2,1] match. Arrays of objects are left alone.

Result

Nothing is uploaded — this tool runs inside your browser, so your files never leave your device.

Help us improve

Why use this tool

  • Compares values, not text — key order and indentation are ignored
  • Reports every difference by its full path from the root
  • Optionally ignores the order of arrays of simple values
  • Names the line and column when either document fails to parse

How it works

  1. 1Paste the first JSON document on the left.
  2. 2Paste the version you want to compare into the second box.
  3. 3Read the differences: ~ changed, + only in the second, - only in the first.

JSON Compare — frequently asked questions

Because JSON has no meaningful line structure. The same object written by two different libraries can differ on every line — different indentation, different key order, different escaping — while holding identical data. A path-based comparison answers the question you actually have, which is what changed in the data.

Explore the other tools

Same deal everywhere on the site — free, no sign-up, and no watermark on anything you download.

Or see every tool on one page.