JSON Diff / Compare
Paste two JSON objects to see the differences between them. Get a structured list of additions, deletions, and changes with full JSONPath locations. Useful for comparing API responses, config files, or database records.
advanced options
Ignore element ordering when comparing arrays
returns
- data.changes
- Each change with its JSONPath, type, and old and new values.
- data.summary
- Counts of added, removed and changed fields.
- data.is_identical
- True when both documents match.
- data.total_changes
- Total number of changes.
Fill in the fields and send a request. The response lands here.
Run it from your code
A temporary key takes one request and lasts seven days at 20 calls a day. Register and it becomes 75 a day, still free.
$ curl -sX POST "https://apixies.io/api/v1/json-diff" \ -H "X-API-Key: $APIXIES_KEY" \ -H "Content-Type: application/json" \ -d '{"original":"...","modified":"..."}' | jq '.data.changes'
questions
How are arrays compared?
By default, arrays are compared by position (index 0 vs index 0, etc.). Enable "Ignore Array Order" to sort arrays before comparing, which treats [1,2,3] and [3,1,2] as identical.
What is JSONPath notation?
JSONPath uses dot notation to describe the location of a value. For example, $.user.name means the "name" field inside the "user" object at the root level.
Can I compare deeply nested objects?
Yes. The diff algorithm recursively walks both JSON trees and detects changes at any depth. Each change includes the full path from root to the changed field.