JSON Diff Checker
JSON Diff Checker compare two JSON objects find changed JSON properties structural JSON differenceCompare data instead of formatting
Paste valid original and revised JSON documents, then choose Compare JSON. Results use paths beginning with $ and identify added properties, removed properties, changed values, and array positions.
Structural comparison
The checker parses both documents before comparing them. Whitespace and object property order therefore do not count as differences. Value type does matter: the JSON number 2 differs from the string "2", and null differs from a missing property. Arrays remain ordered sequences.
Worked example
Compare {"name":"Maple","ports":[80,443]} with {"name":"Maple","ports":[8080,443],"active":true}. The result reports $.ports[0] changing from 80 to 8080 and $.active being added. The unchanged name and second array element are omitted.
Objects and arrays behave differently
Object keys are matched by name regardless of their written order. Array entries are matched by numeric position, so inserting one item near the beginning can make many later positions appear changed. The page does not attempt identity matching, move detection, set comparison, or domain-specific ordering rules.
Useful review workflow
Format and validate questionable inputs first, then compare the accepted documents. Read paths from left to right: dots introduce object properties and brackets identify array indexes. Treat the output as a review aid rather than an executable patch because it does not encode test conditions or safe update operations.
Privacy and limitations
Both documents stay in the browser. The tool does not accept comments, JSON5, YAML, JSON Lines, or malformed data. It does not generate JSON Patch, merge changes, ignore selected paths, compare numbers with tolerances, or protect against every extremely deep object. Large documents may consume significant memory and produce lengthy results.
JSON Diff FAQ
Does property order matter?
No. Parsed object keys are compared by name.
Does array order matter?
Yes. Array entries are compared by position.
Can this compare invalid JSON?
No. Both sides must parse successfully before structural comparison begins.