JSON Comparer
Matching rules, limits and privacy
Object names and strings are case-sensitive ordinal text; escaped equivalent strings match, without Unicode normalization. Whitespace outside strings and object property order do not matter. Duplicate property names (including escaped equivalents), comments and trailing commas are rejected.
Arrays are ordered and match by zero-based index, never by ID or value identity. Reordering and insertion can produce multiple changes; there is no move detection or unordered mode. Added/removed subtrees and type changes are shown once at their enclosing path, not expanded into leaf changes.
Numbers compare as exact decimal coefficient/exponent pairs without floating-point rounding. 1, 1.0 and 1e0 match; -0 matches 0. Number tokens are limited to 256 characters, including exponent digits. Huge exponents are compared without expanding their values.
Each document: 4,096 UTF-16 characters, 1,024 JSON values, maximum depth 32. The input safety guard clips oversized pastes at 4,097 characters, which comparison rejects; shorten the original document and paste it again. This keeps ordinary input events within the website's server-interactive transport limit. At most 200 differences are displayed; additional differences are explicitly disclosed. Each before/after preview is limited to 1,024 characters and marked when truncated. Missing is distinct from JSON null. JSON Pointer paths escape ~ as ~0 and / as ~1; (root) means the empty pointer. Results are a report, not an executable JSON Patch.
Comparison runs in the current .NET host with no hosted comparison API or new dependency. On this website, Interactive Auto may send inputs to the server over the Blazor connection; WebAssembly runs on your device. These documents and results are not automatically saved, included in usage events or put in URLs. Avoid sensitive data in a server-interactive session. This tool is currently enabled on Web only; installed extension and Android behavior is not qualified.
JSON Comparer guide
Compare JSON structure, not formatting.
Input and limitations
Two strict JSON documents. Object key order and number spelling are ignored; arrays match by index.
Check the selected options before using the result. Formatting and conversion do not establish that data is safe or suitable for your application.
How to use JSON Comparer
- Paste the original into Before JSON and the replacement into After JSON.
- Choose Compare JSON to see changed JSON Pointer paths and before/after values.
- Read matching rules and limits before interpreting array changes.
- Clear removes both documents and results.
Example
Compare Before JSON {"count":1} with After JSON {"count":2}: /count changes from 1 to 2. Reordering object keys or writing 1.0 instead of 1 does not change the structure. Arrays match by index, not by ID.
Privacy on the website
The website uses Blazor Auto: interactive processing can run on the server or in your browser, depending on the current session. Do not assume pasted input stays on your device. Use non-sensitive sample data, and never place passwords, tokens or personal data in page URLs.
Search indexing covers public tool descriptions, not your input or generated output. See the privacy policy for website analytics and other data handling.
Related tools
Browse Helpers tools- CIDR / IPv4 Subnet Calculator - Calculate IPv4 networks and bounded subnet splits.
- Color Picker - Pick a color and view its HEX, RGB, and HSL values.
- CSS Bundler - Minify pasted CSS into a compact bundle.
- HTTP Header Analyzer - Inspect pasted HTTP response headers without fetching a website.
- HTTP Status Code Reference - Search a curated offline HTTP status reference.
- URL Parser / Query Builder - Inspect URLs and edit ordered query parameters without visiting them.
Install and offline help
Use your browser's install action, if available. Installation is optional; you can keep using this website normally.
Tools need an internet connection. Offline support provides a connection information page, not all-tools offline use.
Reset keeps favorites and preferences. It does not restore unsaved tool content.