Skip to content
ToolFarmToolFarm
Data

JSON Diff: Compare Two JSON

Compare two JSON documents online and see exactly what was added, removed or changed. Semantic diff, free, no upload and in your browser.

2 min read

Paste JSON into both sides to see the differences.

What this tool does

Paste two JSON documents and get a clean, structural diff. Unlike a plain text compare, JSON Diff parses both sides and walks the value tree, so reordered keys and different formatting are ignored and only real differences show up. Everything runs in your browser, so your data stays with you.

Need to tidy the input first? Clean it up with JSON Formatter, or diff raw text instead with Text Compare.

What you can use it for

  • Spot what changed between two versions of an API response.
  • Compare a config file before and after an edit.
  • Check that a refactor did not change the data your code emits.
  • Find the one field that differs between two records.

How to use it

  1. Paste the original JSON on the left.
  2. Paste the changed JSON on the right.
  3. Read the added, removed and changed paths.
  4. Copy the diff as text if you need to share it.

Everything runs inside your browser. No file is uploaded to any server. See more tools in this field.

Other tools people reach for in the same flow.

Data

Frequently asked questions

How is this different from Text Compare?

Text Compare diffs lines of raw text, so reordering keys or changing indentation shows up as a difference. JSON Diff parses both sides first, so it only reports real structural and value changes.

Does key order matter?

No. Objects are compared by key, not by position, so the same keys in a different order count as equal. Array order does matter, since position is meaningful in arrays.

Is my JSON sent anywhere?

No. Parsing and comparison happen entirely in your browser. Nothing is uploaded, which keeps sensitive payloads private.

How are arrays compared?

Arrays are compared element by element, by position. The first item is matched against the first, the second against the second, and so on. If one side is longer, the extra items show up as added or removed. Because position matters, inserting an item near the start can shift everything after it and read as many changes.

Can it handle deeply nested or very large JSON?

Yes. The diff walks the whole value tree, however deep the nesting goes, and reports each change with its full path. There is no fixed size limit, since the comparison runs in your browser, so the practical ceiling is your device's memory, not a server quota.