JSON Diff Checker
Paste two JSON objects to find semantic differences — added keys, removed keys, and changed values — ignoring whitespace and formatting. Fully private, runs in your browser.
Original JSON
Changed JSON
Semantic Comparison
Parses both inputs as JSON and compares the object structures. Whitespace differences and key order do not produce false positives.
Fully Private
Your JSON is never uploaded anywhere. All parsing and diffing happens locally in your browser.
Validates First
Both inputs are validated before comparison. Syntax errors are shown inline on the relevant panel so you can fix them before diffing.
How to compare two JSON objects
- Paste your original JSON in the left panel and the changed JSON in the right panel.
- Use the Format button on either panel to prettify before comparing if needed.
- Click Compare JSON. If either side has a syntax error, it is shown inline — fix and retry.
- The results list shows each difference with its path, type (added/removed/changed), and before/after values.
Privacy — processed in your browser
JSON parsing and diffing runs entirely in your browser. Your data is never uploaded to any server. This tool is safe to use with API responses, configuration files, environment variables, and other sensitive JSON data.
Frequently Asked Questions
Does this upload my JSON?
No. All JSON parsing and comparison happens locally in your browser. Your data is never sent to any server, stored, or logged. You can safely compare production API responses, credentials objects, or any sensitive configuration.
Does this ignore whitespace?
Yes — this is a semantic diff. Both inputs are parsed as JSON objects before comparison, so indentation differences, extra spaces, and different line endings do not produce false positives. Only structural differences (added keys, removed keys, changed values) are reported.
Can this validate JSON before comparing?
Yes. Both inputs are validated with JSON.parse() before comparison begins. If either side has a syntax error, the error message is shown inline on that panel. The Compare button will not proceed until both sides are valid JSON.
What is a semantic JSON diff?
A semantic diff compares the parsed data structures rather than the raw text. Two JSON objects like {"a":1,"b":2} and { "b": 2, "a": 1 } are semantically identical — same keys and values — even though the raw strings differ. A text diff would report both as changed; a semantic diff correctly identifies them as equal. This tool does not guarantee ordered key comparison for objects, as JSON objects are unordered by specification.
Can I compare API responses or config files?
Yes. Common use cases include comparing API responses between environments, spotting config drift between staging and production, reviewing changes to package.json or tsconfig, and checking what changed between two versions of a data export. For comparing plain text or non-JSON formats, use the Text Diff Checker.