How to compare two JSON files online
- Paste the original JSON on the left and the modified JSON on the right.
- Choose how arrays are compared: by index or as unordered lists.
- Read the list of added, removed and changed values, each with its exact path, or copy the JSON Patch.
What the JSON diff detects
- Added: keys or array items that exist only in the modified document.
- Removed: keys or array items that exist only in the original document.
- Changed: values that differ, including type changes such as a string becoming a number.
Key order is ignored: two objects with the same keys and values are identical even if the keys appear in a different order.
Array comparison modes
With by index, the item at position 0 is compared with the item at position 0, and so on, which is ideal when order is meaningful. With unordered lists, only the items matter, so reordering an array produces no difference.
Example
Original: {"name":"app","version":"1.0.0","tags":["api"]}
Modified: {"name":"app","version":"1.1.0","tags":["api","node"],"private":true}
Changed: version "1.0.0" → "1.1.0"
Added: tags[1] "node"
Added: private true
Common use cases
- Reviewing changes between two versions of a configuration file.
- Comparing API responses before and after a deployment.
- Checking what changed in
package.jsonor translation files. - Generating a JSON Patch to apply the same change elsewhere.
Frequently asked questions
How does the JSON diff tool work?
It compares the two documents structurally and lists every value that was added, removed or changed, together with its exact path.
Does key order matter when comparing JSON?
No. Objects are compared key by key, so two objects with the same keys and values in a different order are considered identical.
How are arrays compared?
You can compare arrays by index, where position matters, or as unordered lists, where only the items matter.
What is JSON Patch?
JSON Patch (RFC 6902) is a standard format that describes how to turn one JSON document into another. The tool can export one when arrays are compared by index.
Is my JSON uploaded anywhere?
No. The comparison runs entirely in your browser and your data is never sent to a server or stored.