Semantic structural comparison

JSON Diff & Compare

Compare two JSON values structurally in your browser. Object key order is ignored, array order is preserved, and added, removed, and changed values are labeled with readable paths.

Enter JSON to begin.

Semantic object comparison

Object member ordering does not create a difference. Keys are traversed safely as owned properties, including __proto__, constructor, and prototype.

Arrays and types

Array order matters by default. Numbers, strings, booleans, and null are distinct types, so 1 differs from "1".

Readable bounded results

Added, removed, and changed rows include text labels and JSON paths. Results stop at 5,000 rows to avoid uncontrolled DOM growth. Comparing plain line-by-line values instead? Use Compare Two Lists.

Practical input limit

Each input is limited to 6 MB. Ordinary 10 KB, 1 MB, and 5 MB payloads are supported locally; very large work should use a streaming or command-line workflow.

Related developer tools

Browse all Developer Tools.