CoreJSON

JSON Diff / Compare

The JSON Diff tool compares two JSON documents side by side. Additions, deletions and modifications are colour-coded, and you can optionally ignore key order and array order to focus on real changes. Comparison runs entirely in your browser, so payloads and configs stay private, and large documents remain smooth.

Open in the workbench Runs locally · nothing is uploaded

How to use it

  1. 1

    Paste both documents

    Put the original JSON on the left and the updated JSON on the right, or upload one from each side.

  2. 2

    Set comparison options

    Choose whether to ignore key order and array order, so cosmetic reordering does not show up as a change.

  3. 3

    Read the diff

    Added, removed and changed nodes are highlighted in distinct colours so you can scan for the meaningful differences.

  4. 4

    Copy or act on changes

    Copy either side, or turn the diff into a JSON Patch to apply the change programmatically.

Key features

Side-by-side view

Both documents stay visible and aligned, so you always know which side a change came from.

Colour-coded changes

Additions, deletions and modifications each get their own colour for fast scanning.

Order-insensitive mode

Ignore key and array ordering when only the values matter.

Privacy by default

Diffing runs locally in the browser; nothing is uploaded.

Handles large JSON

Worker-based parsing and virtualised rendering keep big documents responsive.

Feeds into patches

Turn the result into an RFC 6902 JSON Patch instead of editing by hand.

Common errors & troubleshooting

  • ! If a diff is far larger than expected, check whether key order changed — enable ignore key order to see only value changes.
  • ! Arrays compared by index will report many changes if an item is inserted at the front; enable ignore array order where semantics allow.
  • ! Formatting differences (indent, whitespace) do not affect the comparison — the tool compares parsed values.
  • ! For huge files, run each side through the formatter first to confirm they parse before diffing.

Frequently asked questions

Is my data uploaded when I compare JSON?

No. Both documents are compared locally in your browser; nothing is sent to a server.

Can I ignore the order of keys and array items?

Yes. Enable ignore key order and ignore array order to treat reordered-but-equal documents as identical.

Does it show the exact path of each change?

Yes, each difference is tied to its location in the document, so you can jump straight to the affected field.

Can I generate a patch from the diff?

Yes. The result can be exported as an RFC 6902 JSON Patch you can apply to the original document.

Related tools