Formatear JSON

Pega tu JSON para formatearlo, validarlo o minificarlo. Si el JSON no es válido te indicamos la línea y la columna exactas del error. Todo ocurre en tu navegador: no se sube nada. Última revisión: 2026-06-19.

Cómo formatear JSON en cuatro pasos

  1. Pega tu JSON en el cuadro JSON de entrada.
  2. Pulsa Formatear / Embellecer para obtener una sangría limpia (2 espacios, 4 espacios o tabulación), Minificar para quitar todos los espacios sobrantes, o Validar si solo quieres comprobarlo.
  3. Si el JSON no es válido, el mensaje te dice la línea y la columna exactas del error.
  4. El resultado se puede copiar o descargar como archivo.

Formatear, validar y minificar: en qué se diferencian

Validar solo comprueba si el texto es JSON bien formado. Formatear (o embellecer) vuelve a sangrar un JSON válido para que una persona pueda leer las estructuras anidadas. Minificar elimina todos los espacios y saltos de línea innecesarios, de modo que los datos ocupen lo mínimo posible, algo útil justo antes de enviarlos por la red o de incrustarlos en otro sitio. Ninguna de las tres operaciones cambia los datos: las claves, los valores, los tipos y el orden en que escribiste las claves se conservan tal cual; lo único que cambia son los espacios en blanco.

Qué es JSON y qué norma lo define

JSON (JavaScript Object Notation) es un formato ligero de texto para intercambiar datos estructurados. Le dio nombre y lo popularizó Douglas Crockford, que en 2002 registró el dominio json.org y publicó allí su gramática. La sintaxis viene de los literales de objeto y de arreglo de JavaScript, pero JSON en sí es independiente del lenguaje: existen analizadores para prácticamente cualquier lenguaje de programación, y por eso se ha convertido en la forma habitual en que un navegador, una aplicación de teléfono y un servidor se hablan entre sí.

JSON se escribió por primera vez como especificación del IETF en la RFC 4627 (2006). En octubre de 2013 recibió una gramática formal de un organismo de normalización con ECMA-404, y la especificación vigente hoy es la RFC 8259 (2017), publicada también como estándar de Internet STD 90. La RFC 8259 aclaró una regla que los documentos anteriores dejaban difusa: el texto JSON que se intercambia entre sistemas debe estar codificado en UTF-8. Cuando alguien dice «JSON válido», se refiere a esta norma.

JSON válido frente a JSON inválido

Un documento JSON válido contiene un único valor, y ese valor pertenece a uno de solo seis tipos: objeto, arreglo, cadena, número, booleano y null. No hay nada más. Las claves de un objeto tienen que ser cadenas entre comillas dobles; las cadenas admiten secuencias de escape como \n, \t o \uXXXX; los números son decimales corrientes como 42 o -3.14, sin ceros a la izquierda y sin NaN ni Infinity; y las palabras true, false y null se escriben siempre en minúsculas, porque distinguen mayúsculas de minúsculas.

Estas son las causas más frecuentes de que un JSON no sea válido:

  • Coma final{"a":1,} no es válido: después del último elemento no puede quedar una coma.
  • Comillas simples — las cadenas y las claves exigen comillas dobles, nunca '.
  • Claves sin comillas{name:"x"} tiene que escribirse como {"name":"x"}.
  • Comentarios — en JSON no existen ni // ni /* */.
  • Palabras clave mal escritasTrue o NULL dan error; van en minúsculas.
  • Llaves o corchetes sin cerrar — cada llave de apertura y cada corchete de apertura necesita su pareja.

Por qué falla una coma final

La coma sobrante es, con diferencia, el error más común, y merece una explicación porque desconcierta a quien viene de JavaScript. En JSON la coma es un separador, no un terminador: su gramática dice que una lista de elementos es «un elemento, y opcionalmente una coma seguida de otro elemento». Después de la coma el analizador tiene que encontrar otro valor, así que al toparse con la llave o el corchete de cierre falla de inmediato. JavaScript sí tolera esa coma desde ES5, y muchos editores la dejan pasar, por eso el código que la escribe parece correcto hasta que el servidor rechaza los datos.

Detrás de esto hay una decisión de diseño deliberada: JSON es un subconjunto estricto de la sintaxis de JavaScript, más estricto incluso que los objetos que escribes en el código. Esa rigidez es una virtud, porque garantiza que cualquier analizador conforme lea el mismo documento de la misma manera, sin margen de interpretación. De ahí salen también las otras reglas incómodas: los comentarios se eliminaron a propósito para que nadie pudiera esconder instrucciones dentro de un archivo de datos, y solo se admiten comillas dobles para que no haya dos formas de escribir lo mismo. Si necesitas comentarios o comas finales en un archivo que editas a mano, existen variantes como JSONC y JSON5, pero no son intercambiables con el JSON estricto: un servidor que espera RFC 8259 las rechazará.

Minificar o embellecer: depende de quién lo lea

El JSON embellecido, con sangría y saltos de línea, está pensado para un lector humano; el JSON minificado, sin un solo espacio de más, está pensado para la red. La regla práctica es sencilla: embellece todo lo que vayas a leer — respuestas que estás depurando, archivos que guardas en el control de versiones, fragmentos que pegas en un informe de error — porque una estructura bien sangrada delata a simple vista una llave que falta o un valor fuera de sitio. Y minifica lo que vayas a enviar, para transmitir menos bytes.

Conviene, eso sí, no exagerar la ganancia: las respuestas HTTP casi siempre viajan comprimidas con gzip o Brotli, y la compresión ya reduce muy bien los espacios repetidos, de modo que la diferencia de tamaño una vez comprimido suele ser modesta. Ni embellecer ni minificar alteran el contenido, así que puedes ir y venir entre ambas formas cuantas veces quieras sin perder nada. Un detalle que sorprende: JSON no tiene un tipo propio para fechas, por lo que por convención viajan como cadenas en formato ISO 8601, y los enteros muy grandes conviene enviarlos como cadenas, porque la mayoría de los analizadores solo representan enteros con seguridad hasta 253 − 1.

Preguntas frecuentes

¿Cómo formateo un JSON que está en una sola línea?
Pega el texto en el cuadro de entrada, elige la sangría que prefieras (2 espacios, 4 espacios o tabulación) y pulsa «Formatear / Embellecer». El resultado aparece abajo, listo para copiar o descargar. Si el JSON tiene algún fallo, primero verás el mensaje de error con su línea y su columna.
¿Por qué me dice que mi JSON no es válido si parece correcto?
Las causas más habituales son una coma después del último elemento, comillas simples en lugar de dobles, claves sin comillas, comentarios o palabras clave con mayúsculas. Todas son válidas en JavaScript, pero no en JSON según la RFC 8259. El mensaje de error te señala la línea y la columna donde falla.
¿Cuál es la diferencia entre minificar y embellecer?
Embellecer añade sangría y saltos de línea para que una persona pueda leer el documento; minificar quita todos los espacios sobrantes para que ocupe menos al enviarlo. Ninguna de las dos operaciones modifica las claves, los valores ni el orden, así que puedes alternar entre ellas sin perder información.
¿Es seguro pegar datos confidenciales aquí?
Sí. La herramienta usa JSON.parse y JSON.stringify dentro de tu propio navegador: no se sube nada a ningún servidor y no se registra nada. Puedes pegar respuestas de API internas, tokens o archivos de configuración con tranquilidad, y la página sigue funcionando sin conexión una vez cargada.

Herramientas para desarrolladores relacionadas

Ver todas las conversiones para desarrolladores y datos →

Sources and standards

This tool follows the published specification for what it does, rather than a hand-written approximation. The references below are the primary documents it implements — each one is the authority for the rules applied on this page.

Descubre más herramientas

Ver las 90 herramientas →