About this tool
This is a structural diff: it compares the data rather than the text, so formatting and key order never show up as changes. Each difference is reported with its path, such as address.city or users[1].role.
How the JSON diff works
This is a structural diff. It compares the parsed data instead of the raw text, so differences in whitespace or key order never show up as changes. Each difference is reported with its path.
~ 0.name: "Asha Rao" -> "Asha R." + 1.role: "admin" - 1.temp: true ~ changed value + added in the second JSON - removed from the first
When to compare JSON
A JSON diff is useful for checking what changed between two API responses, reviewing edits to a configuration file, comparing test fixtures, and confirming that a migration did not alter data it should not have.
Tips
Array order matters, so the same items in a different order are reported as changes. Sort the arrays first, for example with the JSON editor, when order is not meaningful.
How to use it
- Paste the original JSON on the left and the changed JSON on the right.
- Each difference appears with its path. Click one to jump to that spot in your JSON.
- Green lines were added, red were removed and purple were changed.
Frequently asked questions
Does key order matter?
No. Objects are compared by key. Array order does matter.
What do + - and ~ mean?
+ exists only in the second JSON, - only in the first, and ~ means the value differs.
Is this a text diff?
No. It compares the parsed data, so whitespace differences are ignored.