What is JSON Diff?
JSON Diff — A JSON diff tool compares two JSON values and lists the paths where data was added, removed, or changed.
Loading your tools...
Compare JSON objects, arrays, and primitive values with path-level added, removed, and modified results.
JSON Diff: Paste the first JSON value on the left and the JSON to compare on the right. The tool parses both inputs and lists each changed path, marked as added, removed, or modified.
Loading Tool...
JSON Diff — A JSON diff tool compares two JSON values and lists the paths where data was added, removed, or changed.
Paste the baseline JSON into the first input.
Paste the updated JSON into the second input.
Review the list of added, removed, and modified paths.
Click a path to copy it when you need to reference a field in a bug report or test.
Fix any JSON parse errors shown below the inputs before relying on the diff.
Compare production and staging API responses
Review config changes between environments
Debug webhook payload changes
Inspect JSON fixture and snapshot updates
Compare before/after records from a data transform
This tool parses JSON first, then compares values by structure. That means object key order does not create a false difference when the same keys have the same values. The output focuses on paths where values were actually added, removed, or modified.
Object keys are shown with dot notation, such as user.profile.email. Array entries are shown with bracket indexes, such as items[2].price. You can copy a path from the result list when you need to reference the exact changed field in documentation, tests, or a bug report.
Arrays are compared by index. If an item is inserted at the beginning of an array, many later indexes may appear changed because each position is compared against the same position in the other array. For arrays of objects where identity matters, normalize or sort the data before comparing.
JSON types matter. A string value "1" and a number value 1 are different. A missing key and a key with null are also different. The result list preserves those distinctions so API and config changes do not get hidden.
The current output is a visual path list. It does not generate RFC 6902 JSON Patch files, JSON Merge Patch documents, ignore-path rules, or match-by-key array diffs. Use a dedicated JSON Patch library when you need an applyable machine patch.
Comparison runs in the browser, so very large JSON payloads depend on browser memory and device speed. For recurring checks in CI or production pipelines, use a command line JSON diff library with explicit test expectations.
Paste JSON in both fields to compare. Differences update automatically.