tooly

Convertir JSON a CSV online

Pega un array JSON y obtén un CSV limpio para Excel, Google Sheets o para importar a una base de datos — campos anidados aplanados, comillas escapadas y nada se sube.

Todo funciona en tu navegador — no se envía nada

Cómo se usa

  1. 1

    Pega tu JSON — un array de objetos funciona mejor.

  2. 2

    Elige el delimitador: coma para la mayoría de herramientas, punto y coma para Excel en configuración regional europea.

  3. 3

    Copia el CSV o descárgalo como archivo.

De la respuesta de una API a la hoja de cálculo

JSON es el formato nativo de las API web, pero las personas que necesitan los datos suelen vivir en hojas de cálculo. Casos típicos: una lista de pedidos sacada de la API de una tienda que el contable quiere en Excel, registros de usuarios exportados de una base de datos NoSQL para una tabla dinámica rápida, eventos de analítica para filtrar en Google Sheets, o un lote de registros para importar de golpe en un CRM que solo acepta subidas en CSV. Un archivo CSV es además el formato más fácil de comparar, ordenar y filtrar con grep en la línea de comandos.

La herramienta toma un array de objetos y produce una fila por objeto y una columna por campo, con una fila de cabecera arriba. Un contador bajo la entrada muestra cuántas filas se han generado, una comprobación rápida frente al número de registros que esperabas.

Cómo se construye la tabla

Las filas y columnas se derivan de los propios datos, sin necesidad de esquema:

  • Las columnas son la unión de todas las claves, en el orden en que aparecen por primera vez. Si el primer registro tiene id y name, y el décimo tiene además email, la cabecera termina con email y las nueve primeras filas dejan esa celda vacía.
  • Los objetos anidados se aplanan con puntos, así que {"customer": {"address": {"city": "Lyon"}}} produce una columna customer.address.city. Funciona a cualquier profundidad.
  • Un único objeto en lugar de un array se trata como una tabla de una fila.
  • Los valores simples en el array, como [1, 2, 3] o una lista de cadenas, van a una sola columna llamada value.
  • null se convierte en una celda vacía, y los booleanos se escriben como true y false.

Un objeto anidado vacío como "meta": {} no tiene campos que aplanar, así que no produce ninguna columna.

Arrays dentro de los registros

Las hojas de cálculo no conocen el concepto de lista dentro de una celda, así que un array como "tags": ["red", "sale"] se escribe como su texto JSON, ["red","sale"], en una sola celda. Así los datos no pierden nada: puedes volver a analizarlos más tarde o dividirlos con una fórmula de la hoja de cálculo.

Si lo que de verdad necesitas es una fila por elemento del array, por ejemplo una fila por línea de pedido en lugar de por pedido, reestructura antes los datos. En la mayoría de los lenguajes de scripting basta con un map de una línea sobre los registros padre, copiando el ID del padre en cada hijo. Al pasar al conversor el array reestructurado, obtienes un resultado limpio y totalmente tabular.

Comillas y delimitadores

Una celda se envuelve en comillas dobles solo cuando hace falta: cuando contiene el delimitador, una comilla doble o un salto de línea. Las comillas dentro de un valor se duplican, como exige RFC 4180, así que 6" pipe se escribe como "6"" pipe". Todos los demás valores se escriben sin comillas, lo que mantiene el archivo pequeño y legible.

El delimitador importa sobre todo cuando el archivo se abre con doble clic en Excel:

  • La coma es lo habitual en Google Sheets, LibreOffice, las bases de datos, el módulo csv de Python y casi cualquier herramienta de importación.
  • El punto y coma es lo que espera Excel cuando Windows está configurado con una región que usa la coma como separador decimal, lo que incluye la mayor parte de Europa continental y Latinoamérica. Con un archivo separado por comas en esas regiones, todas las filas acaban en la columna A.

Si tienes dudas, usa la coma y abre el archivo con la importación de Excel Datos, Desde el texto/CSV, que te deja elegir el separador de forma explícita.

Llevarlo a Excel sin problemas

Algunos problemas aparecen después de la conversión, dentro de la hoja de cálculo, y son fáciles de evitar:

  • Las letras acentuadas se convierten en símbolos. El archivo es UTF-8 sin marca de orden de bytes, y algunas versiones de Excel suponen una codificación antigua al abrirlo con doble clic. Usa la importación Desde el texto/CSV y elige UTF-8, o abre el archivo en Google Sheets.
  • Los ceros a la izquierda y los IDs largos se estropean. Excel convierte 00042 en 42 y pasa los números de 16 dígitos o más a notación científica. En el diálogo de importación, define esas columnas como Texto.
  • Las fechas cambian de formato. Las cadenas ISO como 2026-03-01T10:00:00Z pueden interpretarse a medias. Importa la columna como Texto si necesitas el valor original.

Ten en cuenta que los números por encima de 9 007 199 254 740 991 ya pierden precisión cuando el navegador analiza el JSON, así que guarda los IDs muy grandes como cadenas en el JSON de origen si tienen que conservarse exactos.

Revisar antes la entrada

Si el conversor indica que el JSON no es válido, pega los datos en el formateador de JSON, que muestra la línea y la columna exactas del problema. Los datos de un archivo de registro suelen estar en formato JSON Lines, un objeto por línea sin corchetes alrededor; envuélvelos en [ y ] y añade comas entre las líneas para convertirlos en un array válido. La conversión inversa está disponible en CSV a JSON. Todo el procesamiento ocurre en la página, así que nada de lo que pegas se envía a ningún sitio.

Preguntas frecuentes

¿Cómo se tratan los objetos anidados?

Se aplanan en nombres de columna con punto, por ejemplo user.address.city. Los arrays se guardan como texto JSON en una sola celda.

¿Qué pasa si los objetos tienen claves distintas?

La cabecera es la unión de todas las claves; los valores que faltan quedan vacíos.

¿Por qué Excel mete todo en una sola columna?

Excel en muchas configuraciones europeas espera punto y coma. Elige el delimitador ; y vuelve a descargar.

¿Se suben mis datos?

No. La conversión se hace en tu navegador.

¿Hay un límite de tamaño?

Archivos de varios megabytes se convierten al instante; los muy grandes solo están limitados por la memoria de tu navegador.

Herramientas relacionadas