Developer Tools
JSON Diff Checker
Compare two JSON values structurally in your browser. Paths for added, removed, and changed entries plus a side-by-side annotated view.
Compare
Two JSON values, structurally
Summary
4 differences found.
Differences
- Changed$.role
Left
"engineer"
Right
"lead engineer"
- Changed$.skills[2]
Left
"punch cards"
Right
"compilers"
- Added$.address.postcode
"SW1"
- Changed$.score
Left
100
Right
110
Side-by-side view
Lines highlighted by status: added, removed, changed.
Left (original)
{"name": "Ada Lovelace","role": "engineer","active": true,"skills": ["math","logic","punch cards"],"address": {"city": "London","country": "UK"},"score": 100}
Right (compared)
{"name": "Ada Lovelace","role": "lead engineer","active": true,"skills": ["math","logic","compilers"],"address": {"city": "London","country": "UK","postcode": "SW1"},"score": 110}
How to use
- Paste the original JSON into the Left input and the JSON you want to compare into the Right input.
- Use Load sample to see a small example, or Swap sides to flip which side counts as the original.
- Toggle Treat arrays as sets if array order does not matter, or Ignore case and Ignore whitespace to normalize string scalars before comparing.
- Read the Differences list to see every added, removed, or changed path; use the All / Added / Removed / Changed filter to focus on one type at a time.
- Use the Side-by-side view to scan structure and content together, then click Copy patch to grab the full diff as plain text or Copy path on a single entry.
About this tool
JSON Diff Checker compares two JSON values structurally and shows every difference between them. Paste an original on the left and a compared version on the right; the tool parses both with the browser's native JSON parser, walks the two trees in parallel, and classifies every leaf path as added (only on the right), removed (only on the left), or changed (same path, different value). Object keys are matched by name, and arrays are compared positionally by default because order is part of the structure of a JSON array. A 'Treat arrays as sets' toggle switches to multiplicity-based comparison for cases where you only care whether each value exists on both sides, regardless of position. Two extra options, ignore case and ignore whitespace, normalize string scalars before comparing so cosmetic differences do not show up as content changes. Results are presented in three layers: a summary with counts for added, removed, changed, and equal entries; a filterable list of differences keyed by JSONPath-style paths with the before and after values for each change; and a side-by-side annotated render that pretty-prints both sides with each line tagged by status so you can see structure and content at the same time. Built for API debugging, config drift detection, test fixture comparison, GraphQL response auditing, schema migration review, JSON patch authoring, log payload triage, and any situation where you need to know exactly what differs between two JSON values without eyeballing them line by line. Parsing and diffing happen entirely in your browser, so the JSON you paste never leaves your device.
Free to use. Works in your browser. No signup, no login.
Related tools
You may also like
Text Diff
Side-by-side line, word, and character diff with a unified patch.
Open tool
DeveloperJSON Formatter
Format, minify, and validate JSON in your browser.
Open tool
ConverterYAML to JSON Converter
Two-way YAML and JSON converter with anchors, flow, and block scalars.
Open tool
DeveloperJWT Decoder
Decode header, payload, and claims of a JWT with expiry checks.
Open tool