๐Ÿ”€
JSON Diff
Compare two JSON documents ยท every change with its path ยท key order and formatting ignored
Ctrl+Enter = compare

JSON Diff โ€” Compare JSON Online

Free online JSON diff. Paste two JSON documents and see every value that was added, removed or changed, with the exact path to it (like $.users[0].email). Key order and whitespace are ignored, and you can ignore the order of array items too. Fully client-side โ€” your data never leaves your browser.

Free No login 100% browser-based Your input never leaves your device

Try these next

What is a JSON diff?

A JSON diff compares two JSON documents by their data, not their text. A normal text diff flags every line that moved, so reordered keys or reformatted files look completely different. This tool parses both documents and walks them together, so it only reports real changes: a value that is different, a key or array item that was added, or one that was removed.

How to compare JSON

1. Paste the original JSON on the left and the changed JSON on the right, or drop a .json file on either box. 2. The differences appear as you type, each with its path, the old value in red and the new value in green. 3. Tick Ignore the order of items in arrays when arrays are sets, such as tags or permissions. 4. Click a path to copy it. If either side is invalid, the tool points to the line and column of the error.

Does key order matter when comparing JSON?
No. JSON objects are unordered, so {"a":1,"b":2} and {"b":2,"a":1} are the same data. This tool ignores key order and formatting and only reports real differences.
What does "ignore the order of items in arrays" do?
By default, arrays are compared position by position, so ["a","b"] and ["b","a"] differ. With this option, arrays are compared as collections: an item only counts as added or removed if it has no match on the other side.
What do the paths like $.users[0].email mean?
They are JSONPath-style locations. $ is the whole document, .name is a key, and [0] is the first item of an array. Click a path to copy it.
Is 1 the same as 1.0 in JSON?
Yes. Both parse to the same number, so they are not reported as a difference. "1" (a string) and 1 (a number) are different, and the tool shows the type change.
Is my JSON uploaded anywhere?
No. Both documents are parsed and compared in your browser. Nothing is sent to a server.
โœ“ Copied!