All guides
Developer

Compare JSON without the key-order noise

Reordered keys can hide a one-value change. Compare the data while keeping array order meaningful.

Two JSON responses can contain the same data but look completely different because one exporter changes the order of their keys. Format both sides and ignore object-key order to make actual value changes easier to spot.

In Text & JSON compare, select JSON, paste the first response into Original and the second into Updated, then leave Ignore object key order on. The comparison updates automatically.

Remove key-order noise

Try these two versions:

{"name":"Launch","settings":{"public":true,"retries":3},"steps":["draft","review","publish"]}
{"steps":["draft","review","publish"],"settings":{"retries":3,"public":true},"name":"Launch"}

The keys have moved both at the top level and inside settings. With the option on, the result is No differences. Switch it off and those moves become visible again. JSON mode formats both sides either way, so indentation alone does not create a change.

You can download the original, the reordered response and the normalised version. Key sorting affects the comparison display; it does not overwrite what you pasted.

Keep arrays in their original order

An object is a collection of named values; an array is an ordered sequence. That distinction is part of the JSON specification.

Replace the array in Updated with:

["review","draft","publish"]

The tool now shows Changes, even while ignoring object-key order. Moving review ahead of draft is a meaningful change to this workflow. The array-reordered response lets you try it without editing the larger example.

Do not sort an array just to remove a difference unless your application explicitly treats it as an unordered collection. Display order, priority and processing order may depend on it.

Look for changed values next

Load the value-changed response into Updated. Its keys are reordered, but it also changes retries from 3 to 4. With key-order noise removed, the remaining difference is that setting.

Use Side by side when you have enough screen space. Inline keeps removed and added lines in one column and is usually easier to read on a phone. The minus and plus markers help distinguish changes without relying on colour alone.

Sorting does not remove spaces inside strings. A value such as "Launch " is still different from "Launch".

Know what “No differences” means here

This is a formatted text comparison, not a universal test of JSON equivalence. It preserves number spelling and string escapes: 1 and 1.0 still differ, as do "a" and "\u0061", even though many applications interpret each pair as the same value.

Duplicate keys stop the JSON comparison rather than silently discarding one value. Use the JSON formatter to locate and resolve them before comparing again. An error beside Original or Updated identifies which input needs attention.

On 12 October 2026, we checked the samples with the same JSON parser and formatter used by the tool: reordered keys match when sorting is on; changed arrays, values, number spelling and escape spelling do not. The results file records all six comparisons and the file hashes.