How to Use
- Paste the original JSON on the left and the modified JSON on the right, or load the sample.
- Use โSort and Formatโ when the objects use different key order.
- Review the summary: green means added, red means removed, and yellow means modified.
- Inspect the path list to locate each change; enable unchanged fields when you need the full structure.
- Copy the diff report or download it for API debugging, release notes, or config review.
Core Features
- Semantic JSON diff: Parse JSON first, then compare by path so normal key-order changes do not flood the result.
- Sort by keys: Format both sides and sort object keys alphabetically to remove order-only noise.
- Added / removed / modified highlights: Use green, red, and yellow states to scan API response or config changes quickly.
- Path-level inspection: Show differences by paths such as
profile.cityanditems[0].sku. - Syntax error detection: Validate JSON before comparison and show a clear error when either side cannot be parsed.
- Local secure compare: Tokens, database settings, and private payloads stay in browser memory and are not uploaded.
Related Tools
Secure JSON formatter: format, validate, and fix JSON locally. Beautify/minify, highlight errors, generate TypeScript or Zod, convert to XMLโprivate. Try now.
Free JSONPath tester and evaluator for API JSON. Extract matching nodes in real time, inspect paths, and copy JSON results while parsing stays local in your browser.
Convert JSON objects or arrays to CSV locally in your browser. Flatten fields, preview the result, then copy or download CSV without uploading data.
Convert CSV text or files to JSON arrays locally in your browser. Supports headers, comma/semicolon/tab delimiters, drag-and-drop files, copy, and download with no uploads.
Minify JSON into one line, remove indentation and line breaks, and compare original size, minified size, saved bytes, and saved percentage.
Free online JSON to TypeScript converter. Instantly generate TypeScript interfaces and types from your JSON payloads. 100% private, client-side code generation.
Convert YAML to formatted JSON locally in your browser. This developer tool supports live conversion, multi-document YAML, line-aware errors, copy, and JSON download without storing data.
Convert JSON to YAML locally in your browser with live conversion, strict JSON validation, error details when available, copy, and YAML download. No data is uploaded.
Calculation Logic
The tool runs a local semantic JSON comparison:
JSON.parsevalidates both JSON documents.- Object keys are sorted alphabetically, while array order is preserved.
- The structure is flattened into paths and values, such as
items[0].sku. - Each path is classified as added, removed, modified, or unchanged.
- Data stays inside the current browser session; refreshing the page clears the input and result.
- Arrays are not reordered because array position often carries business meaning, and very large JSON files can still be limited by browser performance.
FAQ
Is my confidential JSON uploaded?
No. Parsing, sorting, and comparison all run locally in your browser. Refreshing the page clears the current input.
Why does a normal diff show everything as changed?
A text diff treats key order changes as line changes. This tool sorts object keys first, then compares JSON paths to reduce order-only noise.
Can JSON diff ignore key order?
Yes. Object keys are sorted alphabetically before comparison, so the same content with different key order shows no semantic difference.
Does it ignore array order?
No. Array order is preserved and compared by index because order often has business meaning.
Can it compare invalid JSON?
No. If either side cannot be parsed, the result area shows a syntax error so you can fix the JSON first.
Can I export the diff?
Yes. You can copy the diff report or download it as a .txt file.