Ready to compare.
Comparison Results
Click "Compare JSON" to see differences.
How to compare JSON
- Paste your original JSON into the left editor.
- Paste the updated JSON into the right editor.
- Click Compare JSON to see added, removed, and changed values.
Privacy: Comparison runs locally in your browser. Your JSON is not uploaded by this tool. Avoid entering sensitive data on any website unless you trust it.
What does this tool compare?
It compares JSON objects and arrays recursively. Object key order does not matter. Array order does matter, and array differences are reported by index. Formatting and whitespace are ignored.
Common use cases
JSON Diff Checker can help developers review API responses, inspect configuration changes, compare test fixtures, and check whether data changed after an application update. Paste the earlier version on the left and the newer version on the right, then run the comparison.
Frequently asked questions
Is JSON Diff Checker free?
Yes. You can use this page to compare JSON without creating an account.
Is my JSON uploaded to a server?
The comparison is performed in your browser by this page's JavaScript. The comparison code does not send the JSON inputs to a server. Avoid entering secrets or sensitive information into websites unless permitted by your organization's security policies.
Why is my JSON invalid?
JSON requires double quotes around property names and string values, and does not allow trailing commas or comments. Check the error message and validate both inputs before comparing them.
How are arrays compared?
Array entries are compared by index. Moving an entry to a different position can therefore produce differences even if the same values appear in both arrays.
Read JSON differences with confidence
Paste the earlier JSON on the left and the newer JSON on the right, then select Compare JSON. Each result includes a change type, a path, and the before/after value where applicable. Paths start at $; a dot segment names an object property, while brackets identify an array index. For example, $.user.name points to the name property inside user.
How comparison works
- Object properties are matched by key, so changing the order of keys alone does not create a difference.
- Arrays are compared by index. Inserting or reordering an item can therefore produce several changes at later indexes.
- Whitespace and formatting are ignored after both inputs are parsed as JSON.
- Added and removed properties are shown separately from values that changed.
Example: distinguish an edit from a reorder
If an array changes from ["draft","published"] to ["draft","review","published"], the new value occupies index 1 and the old value at index 1 moves to index 2. The checker reports the changes at those positions. If you are comparing records whose order may change, compare them in a stable order first or use a unique identifier to match records in the system that owns the data.
When an input is invalid
JSON requires double quotes around property names and string values. It does not allow comments or trailing commas. Fix the syntax error reported for the relevant editor and compare again. The comparison runs in this page's JavaScript; the input values are not sent to a comparison server. Avoid entering secrets or data you are not permitted to process in a browser.