JSON Toolkit

JSON o YAML

En resumen: JSON delimita con llaves y YAML con indentación: las máquinas reciben JSON, las personas que editan configuración reciben YAML. Los comentarios, las anclas y la estructura multidocumento no sobreviven.

Principiante~4 min de lecturaPublicado el 2026-10-30Actualizado el 2026-10-30
Cuándo usar JSON y cuándo usar YAML

En resumen: usa JSON para datos entre máquinas y YAML para configuración que editan personas; prefiere YAML cuando necesites comentarios, texto multilínea o anclas, y JSON cuando todos los lenguajes deban analizar la misma carga útil sin ambigüedad.

Comparación directa

{
  "server": {
    "host": "127.0.0.1",
    "port": 8080
  }
}
server:
  host: 127.0.0.1
  port: 8080

Misma estructura. YAML elimina la puntuación y gana un lugar para un comentario.

En qué se diferencian

JSON YAML
Estructura Llaves y comas Indentación
Comentarios Ninguno Sí
Cadenas Comillas dobles, escape obligatorio Normalmente sin comillas
Texto multilínea Secuencias \n o arrays Escalares de bloque `
Reutilización Ninguna Anclas & y alias *
Varios documentos Envolver en un array Separadores ---
Velocidad de análisis Rápida Más lenta, reglas de indentación
Ambigüedad Muy baja no se analiza como booleano, indentación desfasada

Esa última fila es el coste real de YAML. En YAML 1.1, country: NO produce el booleano false, y version: 1.0 puede convertirse en un float. JSON no tiene tipado implícito en absoluto.

Elección

JSON: cuerpos de petición y respuesta, mensajes entre servicios, columnas JSON en bases de datos, cualquier cosa que deba analizarse de forma idéntica en todos los lenguajes.

YAML: ecosistemas donde es el valor predeterminado (Kubernetes, Ansible, GitHub Actions, Docker Compose); configuración que necesita explicación; archivos dominados por texto largo como certificados, scripts o SQL.

Qué se pierde en la conversión

YAML → JSON: todos los comentarios, la reutilización por anclas (expandida en duplicados), todos los documentos salvo el primero, y la ortografía original de fechas y booleanos.

JSON → YAML: la distinción entre cadena y número se debilita, así que tanto "8080" como 8080 necesitan comillas explícitas para mantenerse seguros.

Convierte para migraciones e inspecciones puntuales. No mantengas el mismo archivo en dos formatos como vistas paralelas.

FAQ

¿Cómo debo decidir entre JSON y YAML?

Empieza por quién lee y mantiene el archivo: usa JSON cuando lo genera un programa, cruza fronteras de lenguaje y debe analizarse de forma predecible; usa YAML cuando lo edita una persona y necesita explicaciones de campos o texto largo multilínea. Se convierten entre sí, pero no mantengas la misma configuración en ambos formatos a largo plazo.

¿Por qué YAML produce más ambigüedad de tipos?

YAML tiene tipado implícito, así que valores como NO, on o 1.0 pueden convertirse en booleanos, fechas o números. JSON solo tiene tipos explícitos: una cadena debe ir entre comillas, lo que hace que el análisis sea más predecible entre lenguajes.

¿Deberían sobrevivir los comentarios y las anclas al convertir YAML a JSON?

No. Los comentarios, anclas y múltiples documentos de YAML no pueden representarse en JSON; las anclas se expanden en contenido duplicado. Si necesitas conservarlos, usa una biblioteca YAML con una API de documentos en lugar de una ida y vuelta por objetos.

Lectura adicional