Formateador y validador de JSON
FormatoTodo se ejecuta en tu navegador: no se sube nada
Pega JSON a la izquierda: aquí aparecerá un árbol plegable
Este documento anida más de 2000 niveles, así que no se puede generar el texto (el árbol sigue visible; la edición y la exportación están en pausa)
Convierte un JSON comprimido en una línea en un árbol plegable a la derecha: haz clic en un triángulo para desplegar cada nivel, y las claves y los valores van coloreados por tipo para que la estructura se vea de un vistazo. El editor de la izquierda lleva números de línea y el mismo resaltado, así que la línea y la columna del error se cotejan directamente. Puedes buscar claves y valores, copiar la ruta o el valor de cualquier nodo, cambiar un valor en su sitio, borrar el nodo que no necesites, reordenar los elementos de un array y, con un clic, pasar todo a escapes Unicode, a una cadena escapada, a un dict de Python o a parámetros de una petición GET. Si pegas algo que ya es un literal de dict de Python (comillas simples, True, None), se reconoce y se convierte a JSON solo. Cuando la sintaxis falla, el error indica la línea y la columna exactas y señala el punto, y te ahorra contar paréntesis a mano. ⚠️ La reparación solo toca la sintaxis y nunca adivina la intención (un identificador suelto como valor se deja tal cual); además detalla qué cambió y cuántas veces, para que lo revises. Todo se ejecuta en tu navegador: no se sube nada.
Funciones
- Vista de árbol: pliega y despliega cada nodo con un clic; al plegarlo se ve cuántos hijos tiene
- Claves y valores coloreados por tipo: clave de objeto, cadena, número, booleano y null, con la misma paleta en el editor y en el árbol
- El editor lleva números de línea y resaltado, a juego con la línea y la columna del error
- Busca claves y valores: resalta y cuenta las coincidencias, o muestra solo las rutas que coinciden
- Acciones por nodo: doble clic para editar un valor en su sitio, copiar la ruta ($.a.b[0]) o el valor, borrar el nodo y mover elementos del array
- Conversiones de un clic: escapes Unicode en ambos sentidos, escapar a cadena, pasar a dict de Python y a parámetros de una petición GET
- Un literal de dict de Python pegado (comillas simples, True / None) se convierte a JSON solo, sin arreglar comillas a mano
- Reparación: comas finales, comillas simples, comentarios `//` y `/* */`, claves sin comillas, comillas tipográficas, True/False/None, NaN — el JSON sacado de un log, arreglado de una vez
- ⚠️ La reparación solo toca la sintaxis y no adivina la intención (no pone comillas a un identificador suelto), y enumera qué cambió y cuántas veces para que lo compruebes
- Aplanar / desaplanar: lleva el anidamiento a un solo nivel con claves como `a.b.0.c`, listo para un CSV, una hoja de cálculo o un formulario; avisa si una clave ya contiene un "."
- Deshacer y rehacer: un borrado o una edición se revierten paso a paso con Ctrl/⌘ + Z
- Validación de sintaxis: el error se sitúa en la línea y la columna exactas y se marca el punto
- Formato y minificado: sangrado con 2 espacios, 4 espacios o tabulador, o sin ningún espacio
- Arrastra un archivo .json para abrirlo y descarga el resultado como .json
- Un JSON enorme no bloquea la página
Cómo se usa
- Pega el JSON en el editor de la izquierda (con números de línea y resaltado), o arrastra un archivo .json
- El árbol aparece al instante a la derecha: haz clic en un triángulo para plegar o desplegar cualquier nodo
- Haz doble clic en un valor para editarlo en su sitio, o selecciona una fila y usa la barra de abajo para copiar su ruta o su valor, borrarla o moverla
- Para cambiar de forma, usa los botones de «Conversión» de arriba (Unicode, escape, dict de Python, parámetros GET); todo se puede deshacer
Preguntas frecuentes
- ¿Mi JSON se sube a algún servidor?
- No. El análisis y el formato ocurren enteros en la memoria de tu navegador: la página no hace ninguna petición y sigue funcionando sin conexión.
- ¿Por qué avisa de un «carácter inesperado después de un número»?
- La gramática de números de JSON es más estricta que la de JavaScript: no admite +1, .5, 01, 1. ni Infinity / NaN. Si tus datos los usan, conviértelos antes a números JSON válidos.
- ¿Se pueden deshacer los borrados y las ediciones del árbol?
- Sí. Borrados, ediciones, movimientos y ordenaciones se escriben enseguida de vuelta en el cuadro de la izquierda, y Ctrl/⌘ + Z los revierte paso a paso, hasta 50 pasos.
- ¿Ordenar las claves afecta a los arrays?
- No. El orden de un array tiene significado y ordenarlo lo destruiría, así que solo se reordenan las claves de los objetos; los arrays se dejan siempre igual. El paso también se puede deshacer.
- ¿Qué tamaño de JSON aguanta?
- Unos cuantos MB van bien. A partir de cierto tamaño se pausa el análisis automático: pulsa Ctrl/⌘ + Enter para analizar una vez a mano. Si superas el límite de entrada, verás un mensaje claro en lugar de una página que no responde.
- ¿La fila «Convertir» cambia mi texto original?
- Sí. El resultado se escribe de vuelta en el editor, así que Ctrl/⌘ + Z lo revierte paso a paso. Si el resultado no es JSON válido (un dict de Python o una cadena de consulta, por ejemplo), el árbol se detiene y lo avisa; la vista de texto muestra entonces el resultado convertido, listo para copiar o descargar.
Herramientas relacionadas
JSON a código
FormatoConvierte una muestra JSON en interfaces de TypeScript, structs de Go, clases de Java o structs de Rust; las claves que faltan salen opcionales.
JS: minificar y embellecer
FormatoMinifica JavaScript (quita comentarios y espacios, conserva las licencias /*!) o lo embellece reindentando por llaves y puntos y coma. Nada se sube.
JWT (decodificar y verificar)
CifradoDivide un JWT en cabecera, payload y firma, verifica firmas HS256/384/512 con tu secreto y traduce exp y nbf a fechas. Todo en tu navegador.
Comparar texto
TextoCompara dos textos línea a línea y resalta las líneas añadidas, borradas y sin cambios, alineando cada edición por diferencia mínima. Todo local.
Formateador SQL
FormatoFormatea SQL en línea: una cláusula por línea, palabras clave con el mismo estilo y subconsultas sangradas. El minificador quita los comentarios.
Conversor JSON5
FormatoPasa JSON5 a JSON estricto: comentarios, claves sin comillas, comillas simples, comas finales, hexadecimal e Infinity, con errores por línea y columna.