Compare API responses the way developers actually need to
Text diffs light up on key order and whitespace. A structural diff compares meaning: which fields were added, which disappeared, and which values changed — each with its exact JSONPath. Perfect for checking a staging response against production, or a new API version against the old one.
How to use JSON Diff
- Paste the original JSON on the left and the changed JSON on the right.
- Add noisy keys (like
updatedAt) to Ignore keys and choose how arrays are compared. - Review Changes by path, or switch to Side by side.
- Copy the change list as JSON or download it as CSV.
Private by design
JSON Diff runs entirely in your browser. Your data is parsed and converted on your device with JavaScript — it is never sent to a server, logged or used for analytics. Recent inputs are kept in your browser’s own storage so you can come back to them, and they disappear when you clear cookies and site data (or press Clear history). You can verify this in your browser’s network tab.
Frequently asked questions
Does key order matter?
No. Objects are compared by key, so {"a":1,"b":2} equals {"b":2,"a":1}. Arrays compare by position by default; switch to "ignore order" to treat them as collections.
How do I ignore fields like timestamps or request IDs?
Type their names into "Ignore keys" (comma separated). They are skipped everywhere in both documents, which keeps the diff focused on real changes.
Is either document uploaded?
No. The comparison runs in your browser, so you can safely compare production responses.
What is the side-by-side view?
It formats both documents with sorted keys and shows a line-by-line diff, useful for reviewing changes in context. For very large differences use the Changes list instead.