diff.json

Compared in this tab, never sent anywhere · Made by musaabk.devالعربية

Paste two JSONs. See only what really changed.

Real changes

3What really changed

    Paste two JSON documents, or load the sample to see how it works.

    Questions

    What does comparing by meaning mean?

    Key order, spaces and line breaks never count as changes, and 1 equals 1.0. A type change does count: 1 and "1" are different, and a key set to null is different from a missing key.

    How are arrays compared?

    With Ignore array order on, items are matched by an id field (id, uuid, key, slug, sku or name) when every item has a unique one, so a change reads like $.items[id=2].qty. Without such a field, whole items are matched and duplicates are counted. Turn it off to compare items by position.

    Do you track the JSON I paste?

    No. Both documents are parsed and compared inside this browser tab. Nothing is uploaded or stored.

    What is the crossed-out number?

    How many lines a plain line-by-line diff, like git diff, would flag for the same two inputs. The gap between that number and the real changes is noise from reordering and formatting.

    Why does it warn about some numbers?

    JavaScript stores every number as a 64-bit float, so integers above 2^53, decimals with more than about 17 digits and exponents like 1e400 change when parsed. Two different values could then look equal, so the tool lists them instead of hiding it.