Saltar al contenido
jsonbeautifiers
Español

Un embellecedor de JSON que nunca ve tu JSON.

Pega un payload y léelo. Todo corre en tu navegador, así que las respuestas de producción, los tokens y los archivos de configuración se quedan en tu máquina.

Filtrar con JSONPath

Sintaxis RFC 9535. El resultado reemplaza el panel desde el que abriste esta ventana.

 

Nada de lo que pegues sale de tu navegador. La lista de permitidos de connect-src convierte eso en una garantía del navegador, no en una promesa. Compruébalo tú mismo

Casi todas las herramientas JSON te piden confianza. Esta te deja comprobar.

En noviembre de 2025, dos de los mayores sitios de formateo filtraron más de 80.000 pegados guardados: credenciales de Active Directory, claves de nube, tokens de acceso y registros bancarios, de organizaciones gubernamentales, sanitarias y aeroespaciales. Su portada decía que tus datos se manejaban en el navegador. Su subida de archivos los enviaba a un servidor.

La cabecera de la derecha es la que este sitio envía en cada respuesta. Su línea connect-src es una lista de permitidos que nombra un único destino, el endpoint de analítica que cuenta las visitas de página. Cualquier otra petición que esta página pudiera intentar se rechaza: ni fetch, ni XHR, ni WebSocket, ni beacon que se lleve tu payload a ninguna parte. No es una afirmación sobre nuestras intenciones. Es una regla que el navegador impone a cualquier código que corra aquí, incluido el que pudiéramos añadir por error más adelante.

Cabeceras de respuesta jsonbeautifiers.com
Content-Security-Policy:
  default-src 'self';
  connect-src https://*.google-analytics.com https://*.analytics.google.com https://*.googletagmanager.com;
  script-src 'self' https://www.googletagmanager.com;
  style-src 'self' 'unsafe-inline';
  img-src 'self' data: https://*.google-analytics.com https://*.googletagmanager.com;
  font-src 'self';
  form-action 'none';
  frame-ancestors 'none';
  base-uri 'self';
  object-src 'none';
  worker-src 'self' blob:

Referrer-Policy: no-referrer
X-Content-Type-Options: nosniff
Permissions-Policy: interest-cohort=(), browsing-topics=()

Hecho para los payloads que rompen otras herramientas.

Cada ejemplo de abajo es salida real de este parser, y cada uno de ellos es algo que un formateador que envuelve JSON.parse hace mal.

Los números grandes sobreviven

El formateo vuelve a emitir los dígitos exactos que pegaste. Una herramienta que parsea a un float y lo serializa de vuelta ya ha cambiado tu ID Snowflake antes de que pulsaras el botón.

Aquí

{ "id": 12345678901234567890 }

Ida y vuelta con JSON.parse

{ "id": 12345678901234567000 }

Caracteres invisibles, nombrados

Pega desde un documento o un cliente de chat y te salen caracteres que no puedes ver. Otras herramientas dicen Unexpected token.

4:8  Invalid whitespace:
     no-break space (U+00A0).

Corchetes sin cerrar, localizados

Cuando un archivo está truncado, la información útil es dónde empezó cada corchete abierto, no que el documento terminó.

The document ends while 3 brackets
are still open: { opened at line 1,
column 1; [ opened at line 2, column 8;
{ opened at line 3, column 5.

Reparaciones que se explican solas

El modo permisivo arregla el casi-JSON y enumera cada cambio, separando los seguros de las decisiones opinables.

2:3  Converted a single-quoted string
     to a double-quoted JSON string.
5:11 Quoted 02134 as the string
     "02134", because dropping the
     leading zero would change a
     zip code.

Claves duplicadas avisadas

La RFC 8259 deja los duplicados sin definir y casi todos los parsers se quedan con el último en silencio.

3:3  Duplicate key "email",
     first defined at line 2,
     column 3.

Archivos grandes sin congelar la pestaña

El parseo y el formateo corren en un Web Worker, así que la interfaz sigue respondiendo mientras se procesa un documento grande. Las cifras de abajo son tiempo de formateo, medido en dos ejecuciones sobre una máquina de escritorio, así que tómalas como un rango y no como un benchmark. A 10 MB eso es trabajo suficiente para bloquear del todo un hilo principal, que es justo por lo que aquí no ocurre en uno.

9 to 13 ms

100 KB

70 to 119 ms

1 MB

0.6 to 0.8 s

10 MB

Todas las herramientas

Formatear y comprobar

Transformar

Convertir

Lo que obtienes en vez de "Unexpected token"
{
  "user": "priya",
  "roles": ["admin",],
}

3:20 Coma final antes de ].

Quita la coma antes del corchete de cierre. Las comas finales son legales en JavaScript y en JSON5, pero no en JSON.

Todos los errores de JSON, explicados como es debido.

V8 reescribió casi todos sus mensajes de error de JSON en 2022, y la mayoría de lo que se escribe sobre ellos en internet sigue enseñando la redacción antigua. Estas páginas llevan las cadenas actuales exactas, medidas ejecutando los parsers, con las causas reales ordenadas por la frecuencia con que ocurren de verdad.

Todos los explicadores de errores

Vale la pena saberlo

Qué hace realmente un JSON beautifier

Un JSON beautifier lee un documento, lo parsea hasta convertirlo en un árbol de objetos, arrays, cadenas, números, booleanos y nulos, y vuelve a escribir ese árbol con un valor por línea y una sangría constante. La palabra importante es parsea. No está insertando saltos de línea después de cada coma con una expresión regular, que es como lo hacen muchos fragmentos de código que circulan por la web, y que destruye en silencio cualquier cadena que contenga una coma o una llave.

Eso tiene una consecuencia que aparece de inmediato: un documento que no es JSON válido no se puede embellecer. No hay árbol que imprimir. Por eso aquí embellecer y validar son la misma operación y no dos botones, y por eso un pegado inválido te devuelve una línea, una columna y una descripción de lo que se esperaba, en lugar de un panel de salida vacío.

Los espacios en blanco fuera de las cadenas no significan nada en JSON. El RFC 8259 permite espacio, tabulador, retorno de carro y salto de línea entre dos tokens cualesquiera, así que reformatear no puede cambiar lo que un documento significa. El espacio dentro de una cadena es dato y se deja exactamente como estaba. Un formateador que trabaja sobre texto y no sobre un árbol sintáctico no distingue esos dos casos, y esa es la forma más común de corromper un payload al formatearlo.

El orden de las claves se conserva. La especificación considera los objetos como no ordenados, así que nada debería depender de ello, pero el orden en el que pegaste es casi siempre el que espera un diff, una revisión de código o una persona leyendo, y reordenar claves vuelve ruidosa cualquier comparación posterior sin ganar nada.

Usar el JSON beautifier online

Pega en el panel izquierdo y pulsa Embellecer. El documento formateado aparece a la derecha, listo para copiar o descargar. No hay cuenta, ni paso de subida, ni cuota diaria, ni muro de pago en ninguna parte, que es lo que casi todo el mundo busca cuando escribe JSON beautifier online gratis y no la prueba de un producto de escritorio.

La sangría por defecto son dos espacios, que es donde acaban la mayoría de ecosistemas y guías de estilo. Cuatro espacios y tabuladores también están disponibles si tu repositorio ya tomó esa decisión por ti, y la elección se recuerda en tu navegador y no en un servidor, porque no hay ningún servidor donde recordarla.

Todo corre en un Web Worker, así que la interfaz sigue respondiendo mientras se parsea un documento. Un payload de 100 KB se formatea en unos 9 a 13 ms, 1 MB en 70 a 119 ms, y 10 MB en unos 0,6 a 0,8 segundos, medido en una máquina de escritorio a lo largo de dos ejecuciones. Tómalo como un rango y no como un benchmark, pero la forma es lo que importa: 10 MB son trabajo suficiente para congelar un hilo principal por completo, y aquí no corre en uno.

Después de la primera visita la página queda en caché, así que este JSON beautifier online sigue funcionando con la red desconectada. No es un truco de service worker. Es el resultado natural de una página estática que hace su trabajo en local: sin red, el ping de analítica simplemente falla, y todas las herramientas siguen adelante, porque ninguna necesitaba un servidor para empezar.

Un JSON beautifier y editor, no una caja de un solo sentido

La mayoría de los formateadores son un área de texto y un botón. Entra lo pegado, sale texto formateado, y si el documento estaba roto vuelves a tu propio editor a adivinar. El panel de aquí es un editor de código real, con resaltado de sintaxis, emparejado de corchetes, plegado de código, búsqueda incremental y marcadores de error en línea, así que puedes arreglar lo que pegaste y reformatearlo sin salir de la página.

El plegado importa más de lo que parece. Un archivo de configuración de 4.000 líneas no es legible solo porque esté sangrado. Lo que lo vuelve legible de verdad es colapsar todas las ramas menos la que te interesa, y eso es una propiedad del editor, no del formateador.

Si quieres el mismo documento como árbol plegable en lugar de como texto, el visor de JSON lo muestra así. La validación informa de todos los problemas en vez de detenerse en el primero. La reparación se ocupa del casi-JSON, como comillas simples, comas finales y claves sin comillas, y enumera cada cambio que hizo para que puedas rechazar los que fueron decisiones discutibles y no arreglos.

Quien busca el mejor visor y JSON beautifier online normalmente no está preguntando por la sangría, que todas las herramientas hacen bien. Está preguntando por los documentos que rompen las herramientas: enteros más grandes de lo que JavaScript puede guardar, claves duplicadas y caracteres invisibles pegados desde un cliente de chat o un procesador de textos. Eso se maneja aquí, está descrito arriba con salida real, y es la única parte sobre la que vale la pena discutir.

Embellecer JSON en Notepad++, Sublime Text y VS Code

Una pestaña del navegador no siempre es donde quieres que esto ocurra. Si el archivo ya está abierto en tu editor, el JSON beautifier más rápido es el que tienes atado a una tecla ahí.

Notepad++ no trae formateador de JSON. La respuesta habitual es el plugin JSTool: abre Plugins, luego Plugins Admin, busca JSTool, instálalo, reinicia, y el comando aparece en Plugins, JSTool, JSFormat. Funciona, y para payloads del día a día es la herramienta correcta. Ten en cuenta que JSTool parsea los números como flotantes de 64 bits, así que un ID estilo Twitter o Snowflake por encima de 9007199254740991 vuelve con dígitos distintos de los que entraron, sin avisar.

Sublime Text usa el paquete Pretty JSON, instalado con Package Control y asignado a Ctrl+Alt+J por defecto. Formatea a través de Python, lo que significa que los enteros grandes sobreviven exactos, una ventaja real frente a las opciones basadas en JavaScript. Lo que sí hace es descartar claves duplicadas sin decir nada, quedándose con la última.

VS Code no necesita ningún plugin. Formatear documento, que es Mayús+Alt+F en Windows y Linux y Mayús+Opción+F en macOS, formatea cualquier archivo que el editor reconozca como JSON. También hay un comando Format JSON en la paleta.

Lo que ninguno de ellos te da es un diagnóstico. Formatean un documento válido y rechazan uno inválido, lo cual está bien hasta que el documento es inválido y tiene 40.000 líneas. Ese es el caso para el que está hecha esta página, y también el de una máquina donde no te dejan instalar plugins.

Chrome, Firefox y por qué no hace falta ninguna extensión

Una extensión de JSON beautifier para Chrome hace algo realmente útil: intercepta las respuestas servidas como application/json y las muestra formateadas y plegables en la barra de direcciones, así que una API que estás tocando se lee sin pasar por un formateador. Firefox hace eso de forma nativa desde la versión 44 y no necesita extensión alguna.

Vale la pena leer el coste antes de instalar una. Para reescribir la página de cualquier API que visites, la extensión tiene que pedir permiso para leer y cambiar tus datos en todos los sitios web, que es el permiso más amplio que concede Chrome. Ese permiso cubre tu banco, tu correo y la consola de administración de tu empresa, y persiste a través de cada actualización silenciosa que la extensión publique después. Una extensión de JSON beautifier es algo razonable de instalar si viene de alguien en quien tienes motivos para confiar, y algo malo de instalar porque era el primer resultado.

Esta página no necesita nada de eso. Funciona igual en Chrome, Firefox, Safari y Edge, no instala nada y no tiene permisos sobre ningún otro sitio que visites, porque una página no es una extensión: puede leerse a sí misma y nada más. Pegar es una tecla más que una extensión que intercepta, y es toda la diferencia.

Embellecer JSON en tu propio código: HTML y React

Para esto no necesitas una librería. JSON.stringify acepta un tercer argumento que controla la sangría, y está en todos los runtimes de JavaScript: JSON.stringify(valor, null, 2) sangra con dos espacios, y pasar una cadena en vez de un número, como en JSON.stringify(valor, null, "\t"), sangra con tabuladores.

Volcar el resultado en una página es donde un JSON beautifier en HTML se tuerce. La salida tiene que ir dentro de un elemento <pre> o cada secuencia de espacios se colapsa y habrás deshecho el formato, y hay que escaparla antes de insertarla como HTML. Si no, un valor de cadena que contenga </script> o un ángulo se le está entregando al parser como marcado, que es un agujero de cross site scripting con pasos extra.

En React ese escapado ya está hecho por ti. <pre>{JSON.stringify(datos, null, 2)}</pre> es todo un JSON beautifier en React a efectos de depuración, y como React escapa el texto interpolado por defecto, es seguro con entrada no confiable. La regla es simplemente no recurrir nunca a dangerouslySetInnerHTML para renderizar JSON, que es la única manera de perder esa garantía.

La advertencia que vale para todos estos casos es la precisión numérica. JSON.parse convierte cada número en un double, así que un identificador por encima de 2^53-1 ya es el número equivocado antes de que JSON.stringify lo vea, y ningún formateo devuelve esos dígitos. Si tu payload lleva IDs grandes, lee antes qué le pasa a un entero por encima de 2^53-1. El beautifier de esta página vuelve a emitir los dígitos exactos que pegaste, que es la razón por la que su salida y una ida y vuelta por JSON.parse no siempre coinciden.

Preguntas sobre el JSON beautifier

¿Qué es un JSON beautifier?
Un JSON beautifier parsea un documento JSON y lo reescribe con sangría constante y un valor por línea, de modo que un payload que llegó como una sola cadena continua se vuelve legible. Como parsea en lugar de reescribir texto, también te dice cuándo el documento no es JSON válido, y dónde.
¿Cómo se usa un JSON beautifier?
Pega o escribe tu JSON en el panel izquierdo y pulsa Embellecer. El documento formateado aparece a la derecha con una sangría de dos espacios, cuatro espacios o tabulador, y puedes copiarlo, descargarlo o seguir editándolo allí mismo. Si lo que pegaste no es JSON válido obtienes la línea, la columna y qué se esperaba en ese punto, porque la herramienta tiene que parsear el documento antes de poder imprimir uno.
¿Cuál es la mejor herramienta JSON beautifier?
Todas las herramientas sangran bien, así que esa no es la pregunta que merece la pena. Compáralas por lo que se rompe: si los enteros por encima de 2^53-1 sobreviven sin cambios, si se avisa de las claves duplicadas, si los caracteres invisibles se nombran en lugar de salir como un token inesperado, y si la entrada se envía a un servidor. Esas cuatro respuestas separan a las herramientas equivalentes de las que no lo son.
¿Este JSON beautifier online es gratis?
Sí. No hay cuenta, ni registro, ni límite diario, ni plan de pago. Todas las herramientas del sitio corren en tu navegador, así que no hay un coste de servidor que haya que recuperar ni nada que medir.
¿Se sube mi JSON a algún sitio?
No. La página envía una cabecera Content Security Policy cuya línea connect-src es una lista de permitidos, y el único destino que hay en ella es Google Analytics, que cuenta las visitas de página y nunca toca el editor. Cualquier otra petición saliente la rechaza el navegador: ni fetch, ni XMLHttpRequest, ni WebSocket, ni beacon que pudiera llevarse tu documento. Lo impone el navegador en vez de prometerlo nosotros, y puedes comprobarlo tú mismo en la pestaña Red de las herramientas de desarrollo.
¿Puedo embellecer JSON en Notepad++?
Notepad++ no trae formateador de JSON. Instala el plugin JSTool desde Plugins, luego Plugins Admin, reinicia y usa Plugins, JSTool, JSFormat. Un aviso: JSTool parsea los números como flotantes de 64 bits, así que los IDs enteros por encima de 9007199254740991 vuelven con los dígitos alterados.
¿Cómo embellezco JSON en Chrome?
Tres maneras, ordenadas por lo poco que tienes que instalar. Pégalo en esta página, que no necesita nada. Abre la petición en las herramientas de desarrollo y mira la pestaña Vista previa del panel Red, que ya formatea sola una respuesta JSON. O instala una extensión que reformatee automáticamente las respuestas application/json, que es la única de las tres que te cuesta un permiso sobre todos los sitios que visitas.
¿Necesito una extensión de JSON beautifier para Chrome?
Para JSON pegado, no. Una extensión sirve para algo que esta página no puede hacer, que es formatear automáticamente una respuesta de API en la barra de direcciones, pero para eso tiene que pedir permiso para leer y cambiar tus datos en todos los sitios que visites. Si solo necesitas embellecer JSON que ya tienes, una página que no tiene ningún permiso es el riesgo más pequeño.
¿Funciona como JSON beautifier en Firefox?
Sí, y en Chrome, Safari y Edge. Firefox además formatea las respuestas JSON de forma nativa en su propio visor desde la versión 44, así que para respuestas de API abiertas directamente en el navegador tampoco necesitas instalar nada allí.
¿Cómo embellezco JSON en VS Code?
VS Code no necesita ninguna extensión para esto. Abre el archivo, comprueba que el modo de lenguaje en la barra de estado dice JSON y ejecuta Formatear documento: Mayús+Alt+F en Windows y Linux, Mayús+Opción+F en macOS. Para un fragmento suelto en vez de un archivo guardado, pégalo en una pestaña nueva sin título, pon el lenguaje en JSON y formatea eso.
¿Cómo embellezco JSON en Sublime Text?
Instala el paquete Pretty JSON con Package Control y pulsa Ctrl+Alt+J. Formatea a través de Python, así que los enteros grandes conservan sus dígitos exactos, pero descarta en silencio las claves duplicadas y se queda solo con la última.
¿Cómo embellezco JSON en HTML o React?
Usa JSON.stringify(valor, null, 2) y renderízalo dentro de un elemento pre para que se conserve el espaciado. En HTML plano tienes que escapar el resultado antes de insertarlo, o una cadena que contenga marcado se convierte en un agujero de cross site scripting. En React basta con escribir la expresión dentro de un elemento pre, porque React escapa el texto interpolado automáticamente.
¿Puedo usarlo como JSON beautifier y editor?
Sí. El panel de entrada es un editor de código completo, con resaltado de sintaxis, emparejado de corchetes, plegado, búsqueda incremental y marcadores de error en línea, así que puedes arreglar un documento roto ahí mismo y reformatearlo sin llevarlo a otra herramienta.
¿Funciona como JSON beautifier y visor?
Las dos cosas, en dos páginas. Esta formatea el documento como texto dentro de un editor. El visor de JSON muestra el mismo documento como un árbol plegable, que es la vista mejor cuando buscas un valor dentro de algo muy anidado en lugar de leer el payload entero.
¿Hay una descarga del JSON beautifier?
Aquí no hay instalador y no lo necesitas. La página es estática y queda en caché tras la primera visita, así que sigue funcionando con la red apagada, que es para lo que normalmente se quiere una descarga. Si quieres un embellecedor que viva en tu máquina, VS Code ya trae uno, y jq o python -m json.tool lo hacen desde una terminal.
¿Hay algún JSON beautifier de código abierto en GitHub?
Varios, y son la respuesta correcta cuando el formateo tiene que ocurrir en una compilación y no en un navegador. jq formatea desde la línea de comandos con jq . archivo.json, Prettier formatea JSON junto con todo lo demás de un repositorio, y Python incluye json.tool en su biblioteca estándar, así que no requiere instalar nada.
¿Qué tamaño de archivo aguanta este JSON beautifier?
Diez megabytes se formatean en unos 0,6 a 0,8 segundos en una máquina de escritorio, y los archivos mayores funcionan hasta que el navegador se queda sin memoria, lo que ocurre cerca de los 512 MB con cualquier herramienta. El parseo corre en un Web Worker, así que la página sigue respondiendo mientras trabaja.