Format, indent, validate, and beautify JSON with custom spacing.
Validate JSON syntax and view exact error line, column, and diagnostic tips.
Edit JSON files with a real code editor, tree view, validation, and syntax highlighting.
Sort JSON keys alphabetically in ascending or descending order.
Visualize JSON hierarchy with collapsible outline tree view.
Minify JSON by stripping whitespace and formatting for production.
Diffing JSON as plain text is misleading: reordering keys or reindenting a file produces a wall of red and green that says nothing about whether the data actually changed. This JSON compare tool diffs the parsed structure instead of the raw characters, so it reports what genuinely differs — keys that were added, keys that were removed, and values that changed — while ignoring formatting and key order. That makes it useful for the everyday cases where text diff falls down: checking whether an API response changed between two deploys, confirming a config migration preserved every setting, or working out why one environment behaves differently from another. Paste the two documents, and the differences are listed by path so you can jump straight to the field that matters. Both documents are parsed and compared locally in your browser, so nothing is uploaded and you can safely compare payloads that contain tokens or customer data.
A text diff compares characters, so reordering keys or changing indentation shows as a difference. This tool parses both documents and compares the resulting structures, so only genuine data changes are reported.
No. JSON objects are unordered by specification, so two documents with the same keys in a different order are treated as identical.
Arrays are ordered in JSON, so elements are compared by position. Moving an item to a different index is reported as a change at both positions.
No. Both documents are parsed and compared in your browser. Nothing is uploaded, stored, or logged, so comparing payloads containing secrets is safe.
The tool reports the parse error and the location it was found, so you can fix the malformed document first. A comparison only runs when both inputs parse successfully.
Values are compared after parsing, so 1.0 and 1 are equal as numbers, while "1" as a string is different from 1 as a number.