Formateador JSON: Formatea, Valida y Depura JSON Online

Pega JSON desordenado, obtén una salida limpia. Esta herramienta formatea, valida y minimiza JSON directamente en tu navegador. Nada se envía a un servidor. Si tu JSON tiene errores, te dice exactamente qué línea está rota y por qué.

JSON de entrada
Pega tus datos JSON aquí
tools.jsonFormatter.output
tools.jsonFormatter.formattedJson
Learn More

JSON en 60 Segundos

JSON (JavaScript Object Notation) es el formato estándar para mover datos entre servidores y navegadores. Cada API REST que hayas llamado devuelve JSON. Cada package.json, tsconfig.json y .eslintrc en tu máquina es JSON.

El formato parece sencillo: objetos usan llaves, arrays usan corchetes, strings necesitan comillas dobles. Pero la simplicidad engaña. No hay sintaxis para comentarios, las comas finales son ilegales, y una sola coma mal puesta rompe todo el documento. Por eso necesitas un formateador con validación.

JSON está definido en RFC 8259 (diciembre 2017). La especificación tiene solo 16 páginas. La regla donde más gente tropieza: las claves de objetos DEBEN ser strings entre comillas dobles. {name: "Juan"} es JavaScript válido pero JSON inválido. Otro detalle: a pesar del nombre, JSON no es un subconjunto estricto de JavaScript. Los caracteres U+2028 y U+2029 son válidos en strings JSON pero eran ilegales en literales JS hasta ES2019.

Cómo Usar

  1. 1Pega o escribe tu JSON en el área de entrada a la izquierda.
  2. 2Elige la indentación: 2 espacios (convención JS/TS) o 4 espacios (convención Python).
  3. 3Haz clic en "Formatear" para pretty-print, o "Minimizar" para eliminar espacios.
  4. 4Copia el resultado. Si hay errores, el validador resalta la línea y carácter exactos.

Cuándo Lo Usarás

Depurando respuestas de API

Tu fetch() devuelve un blob de 2000 caracteres. Pégalo aquí para ver la estructura anidada. Bastante más rápido que console.log(JSON.stringify(data, null, 2)) cuando saltas entre múltiples endpoints.

Validando archivos de configuración antes del deploy

¿Encontraste una coma final en tu template de CloudFormation? Eso es un fallo de deploy de 20 minutos que acabas de evitar. Pega cualquier config JSON aquí antes de hacer push. El validador detecta lo que el resaltado de sintaxis de tu editor no ve.

Limpiando exports de base de datos

Los dumps de MongoDB y exports de Firestore vienen como JSON masivo de una sola línea. Formatea para encontrar ese documento con el campo null que crashea tu script de migración.

Preparando JSON para documentación

Quieres mostrar un ejemplo JSON en tus docs de API o README. Formatea con indent de 2 espacios, copia, pega en tu bloque de código markdown. 5 segundos.

Tips de Experiencia

1

Siempre valida antes de parsear

Envuelve JSON.parse() en try-catch. Siempre. Un error de parseo JSON no capturado en producción crasheará tu proceso Node o mostrará una pantalla blanca a los usuarios.

2

Cuidado con problemas de encoding al copiar-pegar

Comillas inteligentes de Slack/Word (“” en vez de ""), caracteres BOM invisibles de Notepad de Windows, y espacios no-rompibles de páginas web. Todos rompen JSON que parece válido. Si el validador dice error en posición 0, probablemente es un carácter invisible.

3

Sabe cuándo NO usar una herramienta online

Para archivos de más de 10MB, usa jq en la línea de comandos. Para formateo automático en CI, usa prettier o python -m json.tool. Esta herramienta es para depuración manual rápida, no automatización de pipelines.

4

2 espacios vs 4 espacios

La spec de JSON no le importa. Pero proyectos JS/TS usan abrumadoramente 2 espacios. Proyectos Python tienden a usar 4. Elige uno y sé consistente en tu equipo.

Ejemplos Reales

Respuesta API anidada

Una respuesta típica de perfil de usuario, minimizada como llega por la red.

Input

{"id":42,"name":"Juan","email":"juan@example.com","roles":["admin","editor"],"preferences":{"theme":"dark","locale":"es","notifications":{"email":true,"push":false}},"lastLogin":"2026-05-10T14:30:00Z"}

Output

{
  "id": 42,
  "name": "Juan",
  "email": "juan@example.com",
  "roles": [
    "admin",
    "editor"
  ],
  "preferences": {
    "theme": "dark",
    "locale": "es",
    "notifications": {
      "email": true,
      "push": false
    }
  },
  "lastLogin": "2026-05-10T14:30:00Z"
}

JSON inválido: encuentra el error

Parece correcto a primera vista, pero tiene una coma final que rompe el parseo.

Input

{"users": [{"name": "Alice", "age": 30,}, {"name": "Bob", "age": 25}]}

Output

Error en posición 38: Token inesperado '}'. La coma después de "30" no es válida en JSON. Elimina la coma para corregir.

Características

  • Indentación de 2 o 4 espacios, tú decides
  • Valida y señala errores en la línea y carácter exactos
  • Minimiza JSON en un clic para uso en producción
  • Tus datos se quedan en local. Cero peticiones de red tras cargar la página.
  • Probado con dumps de MongoDB de hasta 50MB
  • Sin registro, sin anuncios, sin tracking

Preguntas Frecuentes

Mi JSON parece válido pero el parser dice "unexpected token". ¿Qué pasa?

Nueve de cada diez veces es uno de estos: (1) coma final, como {"a": 1,} que es inválido, (2) comillas simples, porque JSON requiere solo comillas dobles, (3) claves sin comillas, como {name: "Juan"} que es JS pero no JSON, (4) comentarios, porque // y /* */ no están permitidos en JSON estándar. Si necesitas comentarios, mira JSONC o JSON5.

¿Hay límite de tamaño de archivo?

Sin límite duro de nuestra parte. Funciona en la memoria de tu navegador. Chrome maneja hasta ~100MB antes de que las pestañas empiecen a crashear. Para más de 10MB, tendrás mejor rendimiento con jq o fx en la línea de comandos.

¿Esta herramienta envía mis datos a algún servidor?

No. Cero peticiones de red después de que la página carga. Abre DevTools, ve a la pestaña Network, pega tu JSON, haz clic en formatear. Nada se dispara. Toda la herramienta es JavaScript del lado del cliente.

¿Cuál es la diferencia entre JSON y JSONC?

JSONC (JSON with Comments) permite comentarios // y /* */ más comas finales. VS Code lo usa para settings.json y tsconfig.json. Los parsers JSON estándar rechazan JSONC, así que necesitas un parser compatible como el paquete jsonc-parser de npm.

¿Por qué JSON no permite comas finales?

Es una decisión deliberada de la spec para mantener el parseo simple y sin ambigüedad. JavaScript las permite, Python las permite, pero JSON no. La mayoría de errores "JSON inválido" en la práctica vienen de desarrolladores que asumen que JSON sigue las mismas reglas que su lenguaje de programación.

Consejos y flujos de trabajo relacionados

  • ¿Vas a meter JSON formateado en un parámetro de URL? Codifícalo primero con el Codificador de URL.
  • Si tienes un payload JSON codificado en Base64 de una API, decodifícalo con el Codificador Base64.
  • ¿Construyendo un JSON Schema con patrones regex? Pruébalos en el Probador de Regex.
  • Tus objetos JSON necesitan IDs únicos, genera algunos con el Generador de UUID.