Developer tool

JSON Diff

Compare two JSON documents and inspect added, removed, and changed values.

Practical guide

How to use JSON Diff

JSON Diff compares data by structure rather than by visual line wrapping. It is useful when an API response, configuration file, or saved object has changed and you need the exact property path for each difference.

Step by step

  1. Paste valid JSON into the Original and Updated editors.
  2. Select Compare JSON.
  3. Review added, removed, and changed paths together with their before and after values.

Example

InputOriginal: {"status":"draft","count":2}
ResultUpdated: $.status → ready; $.count → 3

How it works

Objects are compared by key, arrays by index, and primitive values by type and value. The $ symbol represents the document root, with dot and bracket notation identifying nested data.

Important limitations

  • Array reordering appears as changes at multiple indexes.
  • Both documents must already be valid JSON; use JSON Fix first when parsing fails.

Real workflows

When this tool is useful

Release comparison

Compare configuration snapshots before and after a deployment to locate the exact property paths that were added, removed, or changed.

API contract review

Inspect two response examples when a consumer reports a regression and distinguish value changes from harmless formatting or key reordering.

Fixture maintenance

Review updated test fixtures without reading two large nested objects side by side or relying on line wrapping in an editor.

Review the result

What to check before using the output

Interpret array changes carefully because the comparison is index-based. One inserted element can make several later entries appear changed even when their values only moved to a new position.

  • Confirm both inputs are valid JSON.
  • Separate reordering from value changes.
  • Review added and removed paths first.
  • Do not treat a clean diff as schema validation.

Choose the right method

When another tool is better

Use a source-control diff for files where comments, whitespace, or key order are meaningful. Use a semantic patch format when the differences must be applied automatically rather than reviewed by a person.

Privacy and browser behavior

Both documents remain in browser memory. Clear the editors before sharing the screen or leaving a managed workstation, especially when payloads contain account identifiers or internal URLs.

Frequently asked questions

Is key order treated as a difference?

No. Object properties are compared by key, so formatting and key order do not create false changes.

Can it compare very large responses?

It runs locally and can handle ordinary API payloads, but extremely large documents may be constrained by the device's memory.