Skip to content
FizzKit

JSON Diff

Highlight additions, deletions and modifications between two JSON documents. The structural diff ignores key order, can ignore chosen keys or paths, string case and small numeric differences, and can match array items by an id field instead of position. View the changes as a list, a line-aligned side-by-side comparison, an RFC 6902 JSON Patch or an RFC 7386 Merge Patch.

Runs locally in your browser
For large JSONs, open fullscreen to compare comfortably
JSON A (original)
0 chars · 1 line
JSON B (compared)
0 chars · 1 line
Paste both documents to compare them.

The structural diff ignores key order. With an array key (e.g. id) items are matched by that field instead of position, so a reordered or inserted item is not reported as a change to every later item. JSON Patch indices are exact for positional diffs and approximate for keyed arrays.

How to use JSON Diff

  1. 1Paste the original document as A and the new one as B (each side reports its own syntax errors).
  2. 2Read the change list, or switch to Side by side, JSON Patch or Merge Patch.
  3. 3Add keys or paths to ignore (updated_at, $.metadata), enable ignore case or a number tolerance, and set an array key such as id to match items instead of comparing positions.
  4. 4Swap A ↔ B to reverse the direction, then copy or download the list or patch.

About JSON Diff

Highlight additions, deletions and modifications between two JSON documents. The structural diff ignores key order, can ignore chosen keys or paths, string case and small numeric differences, and can match array items by an id field instead of position. View the changes as a list, a line-aligned side-by-side comparison, an RFC 6902 JSON Patch or an RFC 7386 Merge Patch.

JSON Diff is part of FizzKit — a collection of focused developer and ad-tech tools. Because everything runs locally, it works offline once loaded and never exposes your data to a remote server.

Frequently asked questions

Structural: reordered keys in an object are equal. Array elements are compared by position by default, by content with "Ignore array order", or by an id field when you set an array key. The Side by side view additionally shows the pretty-printed text with keys sorted so formatting differences never appear as changes.