JSON Compare

Compare JSON documents or model responses with structural diff view

Left (Original)

Loading editor...

Right (Modified)

Loading editor...

See exactly what changed between two JSON payloads

Eyeballing a diff between two long JSON files is painful and error-prone. A structural compare ignores key order, normalizes whitespace, and shows you only what actually changed — added keys, removed keys, value differences — with the full path to each change so you can act on it instead of hunting for it.

Use the comparer when you need to

Diff two API responses

Confirm whether a backend change altered the response shape or values between deploys, environments, or versions.

Spot regressions in fixtures or snapshots

Find the field that drifted in a test fixture or snapshot file without manually re-reading the whole document.

Compare model outputs across runs

Diff structured AI responses to see which fields are stable and which fluctuate between prompts or model versions.

How to compare JSON quickly

  1. 1

    Paste the first JSON document on the left and the second on the right.

  2. 2

    Click Compare to see additions, removals, and value differences with full paths.

  3. 3

    Copy or share the diff to discuss the change with a teammate.

Common compare workflows

Investigate an unexpected staging response

Paste prod and staging payloads side-by-side to find the exact field that drifted.

Validate an API migration

Confirm the new endpoint returns the same structure and values as the legacy one before flipping clients.

Audit a model upgrade

Compare structured output from two model versions on the same prompt to verify downstream code still works.

Related Tools

Frequently Asked Questions

Paste the first JSON on the left and the second on the right, then click Compare. The tool shows a structural diff highlighting added, removed, and changed values with their full paths.

The tool performs a semantic comparison, meaning it compares the actual data regardless of key order. {"a":1,"b":2} and {"b":2,"a":1} are treated as equal because they represent the same data.

Yes, that's one of the most common uses. Paste the expected API response on one side and the actual response on the other. The diff output immediately shows any discrepancies in structure or values.

Yes. Paste one model response on the left and another on the right to see exactly which fields changed between prompts, model versions, or tool runs. This is especially useful when both outputs look similar but break downstream code differently.

Green lines with a + sign indicate values present only in the second JSON. Red lines with a - sign indicate values present only in the first JSON. Yellow/orange lines indicate values that exist in both but differ.