STRUCTURED DIFF

JSON Compare

Find changes by JSON path. Object key order is ignored.

Your text and files are processed locally in your browser.
0 characters
0 characters
ArraysUse identity for arrays of objects with unique IDs.
Paste two JSON values or choose local files, then compare.

RESULT

Differences

StatusJSON PathOld ValueNew Value

The comparison result will appear here.

How to compare JSON

  1. Paste two JSON values or choose local .json files.
  2. Choose how arrays should match, then select Compare.
  3. Review each status, JSON path, old value, and new value.

What JSON Compare checks

The comparison follows nested objects and arrays. It labels paths as Added, Removed, Changed, or Type Changed. Object key order does not count as a difference.

Arrays and identity fields

By default, array items match by position, so reordering can appear as changes. For arrays of objects, choose an identity field such as id to match items by a unique value. Every item in each compared array must have that field with a unique string, number, or boolean value; missing or duplicate values produce an error. This rule also applies to nested arrays.

JSON Compare vs text diff

Use JSON Compare when keys, value types, and nested paths matter. For line-by-line changes in plain text, use Text Compare.

FAQ

Are my JSON files uploaded?

No. Files are read and compared in your browser; the tool does not send their contents to a server.

Why did identity matching fail?

Check that every array item is an object with the selected field and that its value is unique. For arrays of strings or numbers, use position matching.

What are the input limits?

Each file can be up to 10 MB, and each input can contain up to 10 million characters. Format JSON is limited to 2 million characters per input.