Json To Csv LogoJson To Csv

Cómo convertir JSON a CSV: 3 métodos fiables (guía 2026)

Tres formas fiables de convertir JSON en CSV listo para hojas de cálculo: un convertidor online gratuito, Power Query de Excel y un breve script de Python.

Actualizado: 2026-10-027 min de lectura

Qué significa convertir JSON a CSV

JSON es jerárquico: los objetos se anidan dentro de otros objetos y los arrays contienen listas de valores. CSV es plano: solo filas y columnas. Convertir significa asignar cada objeto de un array JSON a una fila, y cada clave a una columna.

Lo complicado es el anidamiento. Un valor como {"address": {"city": "Berlin"}} no tiene una columna CSV directa, así que los convertidores lo aplanan a address.city. Los arrays dentro de objetos (tags: ["a", "b"]) suelen unirse en una sola celda, por ejemplo "a; b".

Método 1: convertidor online gratuito (el más rápido)

Para una conversión puntual, una herramienta online es la vía más rápida — sin instalaciones ni código. Todo se ejecuta en tu navegador, así que tus datos nunca salen de tu dispositivo.

  • Pega tu JSON (o arrastra un archivo .json) en el convertidor.
  • Elige un delimitador: coma para la mayoría de herramientas, punto y coma si tu Excel lo espera.
  • Revisa la vista previa en tabla y haz clic en Descargar .csv.

Probar el convertidor gratuito de JSON a CSV

Método 2: Microsoft Excel (Power Query)

Si trabajas en Excel y conviertes archivos a menudo, Power Query procesa JSON de forma nativa — sin pegar nada en sitios de terceros.

  • Abre Excel → pestaña Datos → Obtener datos → Desde un archivo → Desde JSON.
  • Selecciona tu archivo .json. Power Query muestra los datos como una lista de registros.
  • Haz clic en A tabla y expande las columnas que necesites con el icono de expansión.
  • Cerrar y cargar, y luego guarda como CSV en Archivo → Guardar como → CSV UTF-8.
  • Consejo: elige «CSV UTF-8 (delimitado por comas)» para que los acentos se conserven.

Método 3: script de Python (repetible)

Para desarrolladores y tareas recurrentes, un breve script de Python con pandas es la opción más repetible. Aplana los objetos anidados con json_normalize y escribe en UTF-8 con BOM para que Excel abra el archivo correctamente.

Python
import pandas as pd

# Flat or list-of-objects JSON
df = pd.read_json("data.json")

# Nested objects? Flatten them to dot-notation columns first
df = pd.json_normalize(df.to_dict("records"))

# utf-8-sig adds a BOM so Excel detects the encoding correctly
df.to_csv("data.csv", index=False, encoding="utf-8-sig")

Ejecútalo con python convert.py. El CSV resultante se abre directamente en Excel, Google Sheets o cualquier herramienta de importación de bases de datos.

Cómo tratar JSON anidado y arrays

Los objetos anidados se aplanan de forma limpia con notación de punto: user.profile.email se convierte en la columna user.profile.email. Los arrays anidados son el caso límite — el convertidor debe decidir entre unir los valores en una celda o dividirlos en varias filas. Para análisis, unirlos (por ejemplo "red; blue") mantiene una fila por registro y es lo más habitual.

Si tu JSON es un solo objeto en lugar de un array, enciérralo primero entre corchetes [ ... ] — cada fila del CSV debe provenir de un objeto dentro de una lista.

Delimitadores: coma vs. punto y coma

CSV significa «separado por comas», pero muchas aplicaciones de hojas de cálculo europeas esperan un punto y coma, porque la coma es el separador decimal allí. Si tu CSV se abre con todo apretado en una columna, el delimitador es incorrecto — vuelve a exportar con punto y coma. Nuestro convertidor ofrece coma, punto y coma, tabulación y barra vertical.

Problemas comunes y soluciones rápidas

La mayoría de los dolores de cabeza se reducen a cuatro problemas:

  • Comas o comillas dentro de un campo: un CSV válido encierra el campo entre comillas dobles y duplica las comillas internas ("She said ""hi"""). Cualquier buen convertidor lo hace automáticamente (RFC 4180).
  • Caracteres extraños en Excel: guarda con codificación UTF-8 (con BOM) para que Excel la detecte.
  • Ceros iniciales que desaparecen (códigos postales, IDs): Excel trata la columna como número. Importa con Datos → Desde texto/CSV y define el tipo de columna como Texto.
  • Archivos enormes que congelan el navegador: divide el array JSON en fragmentos más pequeños o usa el método de Python.

Guías relacionadas

Preguntas frecuentes

¿Es seguro convertir JSON a CSV online?

Sí, si el convertidor se ejecuta por completo en tu navegador — como este. Tu archivo se procesa localmente en tu dispositivo y nunca se sube a un servidor. Evita herramientas que exijan subir datos sensibles a un servidor desconocido.

¿Cómo convierto JSON anidado a CSV en Excel?

Usa Power Query: Datos → Obtener datos → Desde un archivo → Desde JSON, y luego usa el icono de expansión en las columnas anidadas para aplanarlas antes de cargar. Para archivos muy anidados, un convertidor online con aplanamiento en notación de punto suele ser más rápido.

¿Por qué mi CSV se abre con todo en una sola columna?

Desajuste de delimitador. Probablemente tu archivo usa comas mientras tu hoja de cálculo espera puntos y comas (habitual en Europa), o viceversa. Vuelve a exportar con el otro delimitador, o usa Datos → Desde texto/CSV en Excel y elige el delimitador manualmente.

¿Se puede convertir CSV de vuelta a JSON?

Sí. Las mismas herramientas funcionan al revés: la mayoría de los convertidores online lo hacen, y un script de Python de una línea (pd.read_csv("f.csv").to_json("f.json", orient="records")) convierte las filas del CSV de nuevo en un array JSON.

¿Necesito instalar algo para convertir JSON a CSV?

No. Un conversor en el navegador hace todo el trabajo: pega, revisa y descarga. Instalar software solo compensa para tareas por lotes que ejecutas a diario, donde un script de Python o Power Query ahorra tiempo de verdad.

¿Se pierden datos al convertir JSON a CSV?

Los valores se conservan intactos, pero la estructura cambia: los objetos anidados se aplanan a columnas con notación de punto, los arrays se unen en una sola celda y el formato de los números, como los ceros iniciales o finales, puede perderse. Revisa siempre una fila complicada antes de importar el CSV a tu flujo real.

¿Cómo convierto un archivo JSON que es un solo objeto y no un array?

Envuélvelo entre corchetes [ ... ] para convertirlo en un array de un elemento: cada fila del CSV necesita un objeto del que partir. La mayoría de los conversores online también aceptan un objeto suelto y lo tratan como una sola fila automáticamente.

Convierte tu JSON ahora — gratis

Pega tu JSON y descarga un CSV limpio en segundos. Sin registro, sin subidas, 100 % privado.

Abrir el convertidor
Todas las guías