What is JSON Diff & Compare?

Free JSON diff and compare tool. Paste two JSON documents to see every added, removed, and changed value with its full key path. Key-aware comparison that ignores key order and whitespace. Runs entirely in your browser. No signup.

No file uploadsNo tracking of inputsNo account requiredWorks offline after first load

JSON Diff runs entirely in your browser using JavaScript (browser). Your data never leaves your device.

Free JSON Diff & Compare

Compare two JSON documents and see exactly what changed. This tool performs a key-aware structural diff — matching object keys by name and array items by index — and lists every value that was added, removed, or changed, with the full dot-path to each one. It ignores cosmetic differences like key order and whitespace, validates both sides, and can pretty-print each document.

Free to embed on your website · No signup required

Key-aware structural comparison — object keys are matched by name, arrays by index. Runs entirely in your browser.

Frequently Asked Questions

A text diff compares line by line and flags cosmetic changes like reordered keys or different indentation. This tool parses both documents and compares the data structurally — matching object keys by name — so it reports only meaningful changes to values, with the exact key path to each.
Arrays are compared by index: position 0 against position 0, position 1 against position 1, and so on. Inserting an item near the start will therefore show the following items as changed, which is the expected behaviour for ordered lists.
Added means the key or array element exists in document B but not A. Removed means it exists in A but not B. Changed means the key exists in both but its value differs. Each is shown with its full path, like user.address.zip or items[2].price.
The only limit is your browser memory. Because everything runs locally, you can compare large payloads that would exceed a chatbot context window, and the comparison is exact rather than estimated.
No. Both documents are parsed and compared entirely in your browser. Nothing is uploaded, so it is safe for API responses, config, and data that contains secrets or personal information.

What This JSON Diff Tool Does

Paste two JSON documents and this tool computes a structural diff: it matches object keys by name and array items by index, then reports every value that was added, removed, or changed, with the full dot-path to each one (for example user.address.zip or items[2].price). Unlike a plain text diff, it ignores cosmetic differences like key order and whitespace and focuses on what actually changed in the data.

Common Uses

Compare an API response before and after a deploy, verify a config change, review what a migration script altered, check two package.json files, or confirm that a refactor produced byte-for-byte equivalent output. The Beautify buttons also pretty-print each side so you can eyeball the raw structure.

Why a Tool Beats Pasting Into a Chatbot

Large JSON payloads blow past chat context limits and LLMs frequently miscount or hallucinate differences on big objects. A deterministic diff is exact, instant, handles deeply nested structures, color-codes every change, and — critically — never sends your data anywhere. Your JSON often contains customer records, tokens, or internal config, so keeping it in the browser matters.

How Matching Works

Objects are compared key-by-key regardless of order. Arrays are compared position-by-position, so inserting an element near the start will show the later items as "changed" — this is the standard index-based behaviour and is ideal for diffing ordered lists like config arrays or ordered API results.