JSON Diff – Compare JSON Side by Side

Compare two JSON documents side-by-side. See exactly what changed, was added, or removed.

Left (Original)
Right (Modified)

What is JSON Diff?

A JSON diff compares two JSON documents and shows exactly what changed — added, removed, and modified values — highlighted side by side with their exact paths. Unlike a text diff, this tool is semantic: it understands JSON structure, so reordering object keys or reformatting whitespace produces no false changes. Paste both documents, click Compare, and read the result in seconds. Everything is computed client-side — your documents never leave your browser.

Why use a semantic JSON diff?

Every difference is reported at its JSON path (for example $.items[2].price: 49 → 59), so you can see not just that a value changed but where and from what. That makes it ideal for spotting what an API changed between versions, confirming a config edit did only what you intended, or verifying test fixtures before and after a migration. Results can be copied as a structured JSON array for tickets or scripts. Because comparison runs in your browser, sensitive payloads are never sent to a server.

How to use the diff tool.

  1. Paste the original JSON in the left editor
  2. Paste the modified JSON in the right editor
  3. Click "Compare" to see all differences highlighted below
  4. Copy the diff as JSON, or hand the document to another tool via "Open in"

You can also drag & drop a .json file, or fetch JSON from a URL using the toolbar.

Related JSON tools.

Before comparing, you may want to validate both documents. After diffing, common next steps:

FAQ.

What is the difference between a semantic and a text diff?

A text diff compares lines of characters, so reformatting or reordering JSON keys shows up as changes. A semantic diff, like this one, understands JSON structure — it compares objects, arrays, and values by their position in the data, so only real changes are reported.

Does key order matter?

No. The diff is semantic — it compares structure and values, not text. Reordering keys in an object won't produce false changes.

What do the colors mean?

Green/cyan means a value was added. Red means a value was removed. Yellow means a value was changed (old and new values are shown).

Can I copy the diff results?

Yes — click 'Copy diff as JSON' to copy the structured diff array to your clipboard.

Is my data uploaded to compare it?

No. Both documents are compared locally in your browser; nothing is uploaded or stored. Your data never leaves the device.

Looking for a different transformation? Explore thefull JSON toolkit— 11 free, private, in-browser tools that never upload your data.