Skip to content
NSNormandin SystemsTHE EVERYDAY TOOLBOXMain site
{ }

Data / YOUR EVERYDAY TOOLBOX

JSON diff

Compare two JSON objects and get the differences between them.

✓ Free to use✓ No account neededHow to use this tool ↓
YOUR WORKSPACESee an example ↗

Opening your tool…

Runs in your browser. Check important results and keep a copy of your original files.

THE PRACTICAL GUIDE · NORMANDIN SYSTEMS

Get more from JSON diff

JSON diff helps you compare two documents in JSON. A structural comparison helps distinguish additions, deletions, and changed values from differences in indentation. This is useful when the information is already available but its structure, presentation, or consistency makes it difficult to inspect. Work with a representative sample first so that you can recognize the expected result before applying the same operation to a larger document. Array order can be meaningful, and a number such as 1 differs from the string "1". Review comparison options before interpreting a large diff. Keep the original input available while reviewing the output. The important check is whether the result still has the intended values and relationships, rather than whether it merely looks neater. Check nested values and array positions when investigating a changed API response.

Guide updated October 13, 2026

How to use this tool

  1. Place the JSON input in the relevant editor. If the tool compares or combines documents, keep each document in its own input.
  2. Select the available settings for the operation you need. Check nested values and array positions when investigating a changed API response.
  3. Review any syntax errors before interpreting the result. A valid document with the wrong structure needs a different fix from malformed input.
  4. Inspect the changed portion and at least one unchanged portion. Keep a copy of the original JSON until the result has been checked in its destination.

SEE IT IN PRACTICE

A worked example

EXAMPLE INPUT
Left: {"count":1}; right: {"count":2}
RESULT / WHAT TO EXPECT
The count property changes from 1 to 2.

The property name stays the same while its numeric value differs. Whitespace-only reformatting should be considered separately from a value change.

Compare structure before presentation

Object key order and indentation can generate noisy text diffs without changing the intended data. Arrays usually carry order, so moving one item can be a substantive change. For a useful review, identify whether records have a stable ID and inspect the changed record’s fields. A removed value and a value replaced by null should be reviewed separately.

Missing, null, and changed type

The objects {}, {"count":null}, {"count":0}, and {"count":"0"} express four different states. A useful comparison should help you notice the missing property, explicit null, numeric zero, and string zero rather than treating them as similar-looking values. When an API response changes, determine whether the consumer distinguishes those states before dismissing the diff as formatting noise.

When this tool is useful

  • Review API response changes while keeping the underlying structure visible.
  • Reproduce a configuration discrepancy with a compact, reproducible sample.
  • Inspect a proposed data update before copying data into another application.

Tips for a better result

  • Array order can be meaningful, and a number such as 1 differs from the string "1". Review comparison options before interpreting a large diff.
  • Check nested values and array positions when investigating a changed API response.
  • Use a small JSON example to isolate an unexpected result. Add nested objects, arrays, quoted text, and empty values only as needed to reproduce the behavior.

Frequently asked questions

Does this establish that my JSON is correct?

It checks or transforms the aspects covered by this operation. It cannot establish whether the values match your business rules, whether required records are missing, or whether the receiving application accepts the same structure.

Why do visually similar inputs behave differently?

Value types, nesting, array order, duplicate names, and invisible whitespace inside strings can carry meaning. Compare the parsed structure and exact values, rather than judging only the way the document appears on screen.

What is a useful review process?

First resolve syntax errors, then inspect the specific result this tool produces. Check nested values and array positions when investigating a changed API response. Finally, test a representative result with the application that will consume it.

What happens to the information I enter?

The utility processes your input in this browser. Some tools retain field values in browser storage or the URL; avoid entering secrets in shareable fields. Page and asset requests still go to the hosting provider. Read the privacy and offline-use notes for details.