What does JSON Diff Tool do?
Quickly compare two JSON objects and see exactly what changed—ideal for debugging APIs and configs.
Quickly compare two JSON objects and see exactly what changed—ideal for debugging APIs and configs.
Loading tool…
A JSON diff tool compares two JSON documents side-by-side and highlights exactly where they differ — added keys, removed keys, changed values, and structural differences. It parses both inputs before
A JSON diff tool compares two JSON documents side-by-side and highlights exactly where they differ — added keys, removed keys, changed values, and structural differences. It parses both inputs before comparing, so formatting differences (whitespace, key order) are ignored unless you enable strict mode. Useful for comparing API responses, reviewing configuration changes, and debugging data pipeline transformations.
Concise answers for common searches — definitions, steps, and comparisons.
Quickly compare two JSON objects and see exactly what changed—ideal for debugging APIs and configs.
JSON Diff Tool (/json-diff) runs in your browser when supported—inputs are not uploaded to EverydayTools servers.
This is the 'original' or 'expected' document. It can be a full JSON object, array, or any valid JSON value.
This is the 'modified' or 'actual' document. The diff shows what changed from left to right.
The tool parses both documents and shows a colour-coded diff: green for additions, red for deletions, yellow for changed values. Unchanged lines are collapsed by default.
Expand sections to see context around changes. Use the summary panel to see a count of: added keys, removed keys, and changed values.
Copy the diff report as text or export it as a JSON patch (RFC 6902 format) showing the minimal set of operations to transform document A into document B.
Common real-world scenarios where this tool saves time.
Back-end developers
Compare the JSON response from two API endpoints, two API versions, or before/after a code change. Instantly see which fields changed, were added, or were removed.
DevOps and infrastructure engineers
Compare JSON config files (package.json, tsconfig.json, AWS CloudFormation, Terraform plan outputs) between branches, environments, or deployment versions.
QA and test engineers
When an API test fails, paste the expected and actual JSON into the diff tool to see the exact discrepancy — faster than reading a raw test failure output.
Input
Left: { "status": "ok", "count": 5, "data": [1,2,3] } · Right: { "status": "ok", "count": 6, "data": [1,2,3,4] }Output
Changed: count 5→6 · Added in data: 4Quickly confirms that an API response changed only in the count field and data array — a single new record was added. No other fields were touched.
Input
Left: production.json · Right: staging.jsonOutput
Added: debug:true · Changed: log_level 'error'→'debug' · Changed: db_host 'prod-db'→'staging-db'Diffing environment config files reveals exactly which settings differ between environments, preventing configuration-drift bugs.
How this EverydayTools page compares for typical use.
| Aspect | EverydayTools | Typical alternative |
|---|---|---|
| Cost | Free | Paid apps or trials |
| Privacy | Browser-local when supported | Often requires cloud upload |
| Signup | Not required | Often required |
Advertisement
In semantic mode (default), key order does not matter. {"a":1,"b":2} and {"b":2,"a":1} are considered identical. In strict mode, key order is respected and reordering counts as a change. Use semantic mode for comparing data; strict mode for comparing serialised payloads where order is significant.
RFC 6902 defines a JSON Patch format: an array of operations (add, remove, replace, move, copy, test) that describe how to transform one JSON document into another. Example: [{"op":"replace","path":"/count","value":6}]. JSON Patch is used in REST APIs for partial resource updates (HTTP PATCH method).
Yes. The diff recurses into nested objects and arrays. Array comparison is done by index — a change at index 0 shows as a change at [0], not a remove+add. Enable the 'unordered array' option to compare arrays as sets (ignoring order) when element order is not significant.
JSON diff shows what changed. JSON Merge Patch (RFC 7396) is a format for expressing updates: a Merge Patch document containing only the changed fields is applied to the original. It is simpler than JSON Patch but cannot express deletions easily (uses null for deletion). JSON diff tools can often export in either format.
Quickly compare two JSON objects and see exactly what changed—ideal for debugging APIs and configs.
JSON Diff Tool keeps typical inputs on your device—nothing is uploaded to EverydayTools servers for core calculations.
Part of Developer Tools
More free tools for the same workflow.
Format and validate YAML in your browser—fix indentation, catch syntax errors with line numbers, export JSON. Kubernetes, Docker Compose, and CI/CD YAML.
Free JSON path finder — click any value in a formatted JSON tree to instantly copy its JSONPath expression. Ideal for navigating deep API payloads and config files. No signup. Runs locally in your browser when supported—no upload required for normal use.
Paste JSON and see syntax errors with line and column numbers. Auto-validate in your browser—fix trailing commas and comments locally. No upload, no signup.
Advertisement
Reviewed by EverydayTools Editorial Team on 2026-05-28.
Structural diff
See added, removed, and modified keys in tree or side-by-side views.
RFC 6902 patch
Copy JSON Patch, markdown summary, or download diff artifacts.
Runs locally
Diff runs in a Web Worker in your browser—JSON is not uploaded.