Emojar – free online tools

JSON Diff

Compare two JSON documents and see exactly what changed — added, removed and changed values with their paths, like $.settings.theme. Key order and formatting are ignored, and you can ignore the order of array items too.

This tool runs entirely in your browser.

Loading tool…

How to use the JSON Diff

  1. 1Paste the original JSON on the left and the changed JSON on the right.
  2. 2Read the list of differences — each one shows its path and the old and new value.
  3. 3Tick “Ignore the order of items in arrays” if order doesn’t matter, then copy the report.

What is the JSON Diff?

A text diff compares lines, so reformatting or reordering keys makes everything look different. A structural diff parses both documents first and compares values, so {"a":1,"b":2} and {"b":2,"a":1} are equal. Each difference is reported with a JSONPath-style location: $ is the root, .name is a key and [2] an array index.

Arrays are compared position by position by default, which is right for ordered lists. With “ignore order” on, items are matched by value instead — useful for tag lists or sets of IDs.

Frequently asked questions

Why do I see many changes when only one item was inserted in an array?

Position-by-position comparison shifts every later item. Turn on “Ignore the order of items in arrays” to match items by value instead.

Is 1 the same as 1.0?

Yes — both are the same JSON number. "1" (a string) and 1 (a number) are different and are reported as a change.

Is the JSON Diff free and private?

Yes. The JSON Diff is free, needs no account, and runs entirely in your browser. What you type is never sent to a server or stored.