os formatos, dos filosofías
CSV y JSON son los dos formatos de datos más utilizados en el mundo del software para intercambiar información entre sistemas, exportar datos y configurar aplicaciones. Aunque ambos almacenan datos estructurados, su diseño, fortalezas y casos de uso son fundamentalmente diferentes.
Elegir el formato correcto para cada situación puede ahorrarte horas de trabajo, mejorar el rendimiento de tu aplicación y facilitar la colaboración con otros equipos. Esta guía te ayuda a tomar esa decisión con criterio.
SV: el campeón de lo tabular
CSV (Comma-Separated Values) es texto plano donde cada línea representa un registro y los campos se separan por un delimitador, generalmente una coma:
nombre,email,edad,ciudad
Ana García,ana@ejemplo.com,28,Madrid
Carlos López,carlos@ejemplo.com,35,Barcelona
María Ruiz,maria@ejemplo.com,42,Valencia
entajas de CSV
Extremadamente ligero y compacto. Sin etiquetas, sin llaves, sin corchetes. Solo datos y delimitadores. Un dataset de 1 millón de registros en CSV puede pesar 5 veces menos que su equivalente en JSON.
Universal en hojas de cálculo. Excel, Google Sheets, LibreOffice Calc, Numbers — todas las herramientas de hoja de cálculo abren CSV nativamente.
Fácil de leer para humanos cuando los datos son tabulares y uniformes.
Ideal para datasets grandes y homogéneos. Exportaciones de bases de datos, logs, series temporales, datos científicos.
Fácil de generar. Cualquier herramienta de reporting puede exportar CSV. Incluso se puede crear manualmente en un editor de texto.
Streaming natural. Puedes procesar un CSV línea por línea sin cargar todo el archivo en memoria.
imitaciones de CSV
No soporta datos anidados o jerárquicos. No puedes representar un array de roles dentro de un registro de usuario sin hacks como concatenar valores con un separador secundario.
No tiene tipado. Todo es texto. Un "42" podría ser un número, un string o un código postal.
Los campos con comas, comillas o saltos de línea requieren entrecomillado especial según RFC 4180, y muchas implementaciones lo manejan mal.
Sin esquema explícito. La primera fila suele ser el encabezado, pero no siempre. No hay forma estándar de indicar tipos de columnas.
Variación regional. En países donde la coma es separador decimal (España, Francia, Alemania), muchos programas usan punto y coma como delimitador CSV, generando incompatibilidades.
SON: el rey de lo jerárquico
JSON permite estructuras anidadas con tipos de datos nativos:
[
{
"nombre": "Ana García",
"email": "ana@ejemplo.com",
"edad": 28,
"ciudad": "Madrid",
"roles": ["admin", "editor"],
"activo": true
},
{
"nombre": "Carlos López",
"email": "carlos@ejemplo.com",
"edad": 35,
"ciudad": "Barcelona",
"roles": ["viewer"],
"activo": true
}
]
entajas de JSON
Soporta objetos anidados y arrays. Puedes representar estructuras de datos complejas de cualquier profundidad.
Tiene tipado nativo. Distingue entre strings, números, booleanos y null. "42" (string) y 42 (número) son diferentes.
Estándar para APIs REST. El 90%+ de las APIs modernas usan JSON como formato de intercambio.
Fácil de parsear. JSON.parse() en JavaScript, json.loads() en Python, y equivalentes nativos en todos los lenguajes modernos.
Auto-descriptivo. Las claves actúan como etiquetas que documentan qué contiene cada campo.
Soporte nativo en navegadores. Los métodos JSON.parse() y JSON.stringify() son nativos y extremadamente rápidos.
imitaciones de JSON
Más verboso que CSV para datos tabulares simples. Las claves se repiten en cada objeto.
No se abre cómodamente en hojas de cálculo sin conversión previa.
No soporta comentarios. Para configuración, esto es una limitación real (JSON5 y JSONC lo resuelven).
No tiene tipo fecha nativo. Las fechas se representan como strings, normalmente en ISO 8601.
abla comparativa
| Característica |
CSV |
JSON |
| Datos tabulares |
Excelente |
Bueno |
| Datos jerárquicos |
No soporta |
Excelente |
| Tamaño de archivo |
Mínimo |
Mayor |
| Tipado de datos |
No |
Sí |
| Hojas de cálculo |
Nativo |
Requiere conversión |
| APIs web |
Poco común |
Estándar |
| Legibilidad humana |
Alta (tabular) |
Alta (jerárquico) |
| Streaming |
Natural |
Complejo |
| Esquema |
Implícito |
Autodescriptivo |
Cuándo usar cada uno?
Usa CSV cuando:
Exportas datos para Excel o Google Sheets
Trabajas con datasets tabulares grandes y uniformes
Necesitas compatibilidad con herramientas legacy o de reporting
El tamaño del archivo es crítico (logs, big data)
Los datos no tienen estructura jerárquica
Usa JSON cuando:
Construyes o consumes APIs REST
Los datos tienen estructura anidada o variable
Necesitas tipado explícito de datos
Trabajas con configuración de aplicaciones
Intercambias datos entre servicios web modernos
onvertir entre formatos
A menudo necesitas transformar datos de un formato a otro. Los escenarios más comunes:
API → Excel: recibes JSON de una API y necesitas exportarlo a un spreadsheet. Primero conviertes JSON a CSV.
Excel → API: tienes datos en una hoja de cálculo que necesitas enviar a una API. Exportas CSV y conviertes a JSON.
Migración de datos: mover datos entre sistemas que usan formatos diferentes.
En GarTools puedes hacer ambas conversiones directamente en tu navegador:
CSV a JSON — con detección automática del separador y soporte para campos entrecomillados
JSON a CSV — con detección automática de columnas y descarga directa del archivo .csv
onclusión
No hay un formato objetivamente mejor que otro — cada uno es óptimo para su contexto. CSV domina en datos tabulares y hojas de cálculo; JSON domina en APIs y datos jerárquicos. Conocer las fortalezas y limitaciones de cada formato te permite elegir correctamente y trabajar de forma más eficiente.