Studio ↗

Compare two JSON payloads and see exact differences.

Side-by-side or unified diffs for any two JSON objects or arrays. Toggle key sorting to ignore property order, inspect semantic path changes, and verify equivalence instantly.

Δ

8 Differences

+2 added · -1 removed · ~5 modified

Original (Left)valid
308 B · 18 lines
Modified (Right)valid
327 B · 19 lines
Diff Result (split)8 changes
Original
1{
2 "config": {
3 "debug": false,
·
4 "region": "us-east-1",
5 "retryCount": 2,
6 "timeoutMs": 3000
7 },
8 "deprecated": false,
9 "endpoints": [
10 "/v1/charge",
11 "/v1/refund",
12 "/v1/status"
·
13 ],
14 "environment": "production",
15 "replicas": 3,
16 "service": "payments-api",
17 "version": "1.4.0"
18}
Modified
1{
2 "config": {
3 "debug": true,
4 "rateLimit": 1000,
5 "region": "us-east-1",
6 "retryCount": 3,
7 "timeoutMs": 2500
8 },
·
9 "endpoints": [
10 "/v1/charge",
11 "/v1/refund",
12 "/v1/status",
13 "/v1/webhooks"
14 ],
15 "environment": "production",
16 "replicas": 5,
17 "service": "payments-api",
18 "version": "1.5.0"
19}
⚡

JSONGlow's JSON Compare is a free online diff tool that compares two JSON objects or arrays side-by-side with semantic key-order invariance and zero data transmission.

Semantic Comparison Engine

Why semantic JSON diffing outperforms textual line diffs.

Comparing two JSON documents using generic text diffing tools often produces confusing, noisy results. In the official JSON specification (RFC 8259), object keys are defined as an unordered collection of name/value pairs. Two JSON responses with different key ordering contain identical data, yet textual diffs will flag every single line as a conflict.

JSONGlow's JSON Compare engine addresses this problem at the Abstract Syntax Tree level. By enabling 'Ignore Key Order', the engine recursively sorts keys across all nested objects before computing differences, completely eliminating false positives. To learn more about this technique, read our in-depth guide on Comparing JSON Ignoring Key Order or format your files beforehand with the JSON Formatter.

You can toggle between three specialized visualization modes: Split View for side-by-side visual code comparison, Unified Diff for a compact Git-style patch representation, and the Changes Table for an itemized, searchable inventory of every modified property path.

Everything runs entirely in your browser sandbox. Whether comparing production environment secrets, sensitive customer payloads, or database snapshots, your proprietary data never leaves your computer. If one of your files has syntax defects, you can fix them using the JSON Repair Tool or validate exact grammar with the JSON Validator.

Workflow Guide

How to compare two JSON documents in 3 steps

1. Paste Both Payloads01

Input original & modified data

Paste your baseline (original) JSON on the left and modified (target) JSON on the right.

2. Choose View & Diff Rules02

Split, unified, or table view

Toggle 'Ignore Key Order' to disregard non-semantic key permutations, and select Split View, Unified Diff, or Changes Table.

3. Inspect & Export Diff03

Identify exact mutations

Examine highlighted additions (green), deletions (red), and modified values, or download the `.diff` patch file.

Practical Demonstration

Semantic Key-Order Invariant JSON Comparison

Notice how JSONGlow detects semantic equivalence even when object keys are ordered differently.

Left Input vs Right Input (Different Key Order + 1 Mutation)
Input
// Original (Left)
{
  "status": 200,
  "service": "auth-service",
  "version": "1.4.0"
}

// Modified (Right - Key Order Changed + Version Updated)
{
  "version": "1.5.0",
  "service": "auth-service",
  "status": 200
}
Semantic Diff Result (Ignore Key Order: ON)
Processed
// 1 Difference Detected (version 1.4.0 -> 1.5.0)
// Key order reordering is ignored

{
  "service": "auth-service",
  "status": 200,
- "version": "1.4.0"
+ "version": "1.5.0"
}
Key Difference:Standard text diff tools flag every line because key ordering shifted. JSONGlow recursively normalizes keys, highlighting only the true semantic change: version 1.4.0 updated to 1.5.0.

Diffing Pitfalls & Edge Cases

Common JSON comparison challenges

!

False diff alarms caused by arbitrary JSON key ordering

Why it happens: Standard Git or text diff engines treat `{ a: 1, b: 2 }` and `{ b: 2, a: 1 }` as different lines even though they represent identical JSON data.

Solution:Keep 'Ignore Key Order: ON' enabled to automatically sort keys before computing differences.
!

Diff failure due to syntax errors in one input

Why it happens: If either Left or Right JSON contains invalid syntax (like a missing comma), semantic diff engines cannot parse the Abstract Syntax Tree.

Solution:The editor badges clearly show which payload has a syntax error with line/column diagnostics so you can correct it.
!

Array element reordering vs object key reordering

Why it happens: In JSON, object key order is unordered, but array element order is strictly ordered (`[1, 2]` is NOT equal to `[2, 1]`).

Solution:JSONGlow strictly preserves array item ordering while sorting object keys to accurately reflect true array index mutations.

Core Capabilities

Precision diffing built for modern engineering

▸

Recursive Key-Order Invariance

Deeply sorts object keys across all nesting levels to eliminate false positive diff noise.

▸

Synchronized Split View

Side-by-side dual editor with synchronized scrolling and red/green visual change highlights.

▸

Git-Style Unified Diff

Generates clean `+` and `-` line patches with one-click `.diff` file download.

▸

Itemized Changes Table

Lists every modified path with searchable before/after values and change categorizations.

▸

Instant Payload Swapping

Swap Left and Right inputs with one click to reverse baseline and comparison directions.

▸

100% In-Browser Privacy

Zero server uploads. Compare confidential configuration files and database exports safely.

Frequently Asked Questions

Common questions answered.

Need more help? Our tools execute entirely in your browser without transmitting any payload to remote servers.

Why do regular text diff tools fail when comparing JSON?+

Standard text diffing tools compare line-by-line character sequences. In JSON, object keys have no intrinsic order (RFC 8259). When two APIs or microservices return the same data with properties in different orders, text diff tools report hundreds of false positive conflicts. JSONGlow normalizes and compares JSON semantically.

How does 'Ignore Key Order' work in JSON Compare?+

When 'Ignore Key Order' is enabled, JSONGlow performs a recursive deep sort on all object keys across both inputs before diffing. This ensures you only see genuine data additions, removals, and value modifications.

What is the Changes Table view?+

The Changes Table view extracts every difference into a structured, searchable table showing the exact dot-notated JSON path (e.g., `config.database.port`), old value, new value, and change type (added, removed, modified).

Can I download a Git-compatible patch file of the diff?+

Yes. Click 'Download .diff' in the toolbar to save a unified `.patch` or `.diff` file compatible with standard Git and command-line patch utilities.

Is my JSON comparison data uploaded to any server?+

Never. All parsing, canonical key sorting, and diff computations execute 100% locally in your browser's memory without sending telemetry or payload bytes over the network.

Explore More Tools & Guides

The JSONGlow developer kit.