JSON Compare
Diff two JSON documents and see every added, removed, and changed value.
Original (izquierda)
Modificado (derecha)
Diferencias
Escribe JSON en ambos lados para compararlos.
¿Qué es JSON Compare?
JSON Compare is a structural diff tool that takes two JSON documents and reports exactly which values were added, removed, or changed, each identified by its path (for example items[2].name). It parses both inputs and compares the resulting values, so whitespace and key ordering are ignored and only actual differences in keys and values surface. Arrays are compared positionally by index, which means inserting an element in the middle shows every element after it as changed rather than a single insertion. It runs entirely in your browser, so nothing you paste is transmitted anywhere.
Cómo usar JSON Compare
- Paste the original JSON into the left box and the changed JSON into the right box.
- The difference list updates instantly, showing every added, removed, and changed value by its path.
- Object keys are compared regardless of order — only actual value differences are reported.
- Array elements are compared by index; extra trailing elements on either side show up as added or removed.
Ejemplos
Changed value
Entrada
Left: {"a":1} Right: {"a":2}
Salida
a: changed 1 → 2
Added key
Entrada
Left: {"a":1} Right: {"a":1,"b":2}
Salida
b: added (2)
Nested path
Entrada
Left: {"user":{"name":"Ada"}} Right: {"user":{"name":"Grace"}}
Salida
user.name: changed "Ada" → "Grace"
Errores comunes
- Assuming this does a "smart" line-based diff like a text/git diff — it's a structural JSON diff, so reordering array elements shows up as changes even if the same values are still present.
- Comparing minified JSON against pretty-printed JSON and expecting whitespace to matter — only the parsed values are compared, not formatting.
- Forgetting that JSON has no "undefined" — a key that's genuinely missing shows as added/removed, while a key explicitly set to null is a real value and will show as changed if the other side differs.
Por qué usar esta herramienta
- Path-based diff output tells you exactly where a difference is, not just that the documents differ.
- Ignores key ordering, focusing only on actual structural and value differences.
- Clear, separate error messages when either side fails to parse, instead of one generic failure.
- Runs entirely client-side — nothing you paste is sent anywhere.