Lección de historia: ¿Qué es un archivo .csv? Por qué Excel cambia tus datos al abrirlo
Valores separados por comas: la tabla en texto plano que nació del FORTRAN de los años setenta y de las primeras hojas de cálculo, no se documentó hasta el RFC 4180 de 2005 y todavía pierde ceros iniciales y nombres de genes cada vez que una hoja de cálculo adivina qué significa el texto.

TL;DR
Un archivo .csv contiene valores separados por comas (comma-separated values): una tabla escrita como texto plano, un registro por línea, con comas entre los campos y comillas dobles alrededor de cualquier campo que contenga una coma, una comilla o un salto de línea. La idea es anterior al PC: los compiladores FORTRAN de IBM leían entradas separadas por comas desde terminales y tarjetas perforadas en 1972, y en 1983 el software de hojas de cálculo ya guardaba archivos con la extensión .CSV. Nadie escribió las reglas formalmente hasta el RFC 4180 de octubre de 2005, que además registró el tipo MIME text/csv. Como un CSV no lleva tipos de columna, ni fórmulas, ni etiqueta de codificación, cada programa que lo abre tiene que adivinar, y las suposiciones de Excel explican por qué desaparecen los ceros iniciales, los nombres de genes se convierten en fechas y a veces todo el archivo acaba en una sola columna.
¿Qué es un archivo .csv?
Abre un CSV en el Bloc de notas y no hay nada oculto: filas de texto, cada línea un registro, cada coma un salto de columna. Un campo que necesita una coma dentro va entre comillas dobles, y una comilla dentro de ese campo se escribe dos veces. Ese es todo el formato. No hay bloque de cabecera, ni lista de tipos de columna, ni fórmulas, ni formato: solo los valores, tal como los escribió algún programa. Esa sencillez explica que casi todas las bases de datos, hojas de cálculo, programas de contabilidad, bancos y lenguajes de programación lean y escriban CSV, y que sea el formato al que todavía recurren la mayoría de las exportaciones e importaciones de datos.
¿Por qué Excel estropea mi CSV?
Como un CSV no puede decir qué son sus valores, Excel decide por su cuenta. La propia documentación de Microsoft enumera las conversiones automáticas que Excel aplica de forma predeterminada al escribir, pegar o cargar texto: quita los ceros iniciales y convierte el resto en número (00123 pasa a 123, y así pierden su primer dígito códigos postales e identificadores de empleado); conserva solo los primeros 15 dígitos de los números largos y puede mostrarlos en notación científica (los últimos dígitos de un número de tarjeta o de cuenta se vuelven ceros); trata los dígitos alrededor de la letra E como un exponente (123E5 pasa a 1,23E+07); y convierte texto con aspecto de fecha, como JAN1, en una fecha. Si después guardas la hoja de nuevo como CSV, se escriben los valores ya convertidos.
La segunda sorpresa es el delimitador. Al guardar o abrir un CSV, Excel usa el separador de listas de la configuración regional de Windows. En gran parte de Europa continental la coma es el separador decimal (3,14), así que el separador de listas es el punto y coma, y las instrucciones de Microsoft confirman el vínculo: poner la coma como separador decimal «obliga a Excel a usar punto y coma como separador de listas». Un archivo guardado en Madrid puede estar lleno de puntos y comas, y un archivo separado por comas de un sistema estadounidense puede abrirse allí con cada fila apretada en la columna A. La codificación del texto añade una tercera trampa: Microsoft señala que un CSV en UTF-8 solo se abre con normalidad si se guardó con marca de orden de bytes (BOM), unos pocos bytes invisibles al principio que anuncian la codificación; sin ella, las letras acentuadas pueden volverse ilegibles salvo que importes el archivo y elijas UTF-8.
Abrir un CSV sin conjeturas
En lugar de hacer doble clic, usa Datos > Obtener datos > Desde texto/CSV en Excel, comprueba el delimitador y el origen del archivo (la codificación) y define como Texto columnas como códigos postales, números de cuenta o símbolos de genes antes de cargar. Las versiones actuales de Excel también permiten desactivar conversiones concretas en Archivo > Opciones > Datos > Conversión automática de datos.
1972: comas en lugar de columnas de tarjeta
Antes de tener nombre, el CSV tuvo un motivo. Los datos de los programas de mainframe de los años sesenta se perforaban normalmente en columnas fijas de tarjetas de 80 columnas, y un programa FORTRAN necesitaba una instrucción FORMAT que indicara exactamente qué columnas contenían cada número; un valor perforado una columna fuera de sitio se leía mal. Los productos de programa FORTRAN IV de IBM para los sistemas operativos OS y VM/370, descritos en un manual de información general fechado en julio de 1972, ofrecían una alternativa llamada entrada/salida dirigida por lista. El manual explica que «las entradas se separan con espacios o comas, y las comas sucesivas indican valores que se omiten», y que con ella desaparece la preocupación del programador «por la disposición de los datos y las posiciones concretas de las columnas de la tarjeta». IBM la incluía entonces entre sus extensiones al lenguaje estándar.
La entrada dirigida por lista pasó a formar parte del lenguaje estándar con FORTRAN 77, aprobado en 1978. Aceptaba comas o espacios como separadores, así que un texto sin comillas no podía contener ninguno de los dos: el mismo problema que más tarde tendrían que resolver las comillas del CSV. Nada de esto era todavía un formato de archivo. Era una forma de dejar que la gente escribiera números en fila, separados por comas, y que el ordenador averiguara dónde empezaba cada uno.
1983: una hoja de cálculo da extensión a los archivos
Las hojas de cálculo de los microordenadores convirtieron la costumbre en archivos. La guía de referencia de 1983 del Osborne Executive, un ordenador portátil de oficina que venía con SuperCalc de Sorcim, describe una utilidad de conversión que asigna «.CSV a los archivos de valores separados por comas» y detalla la estructura: filas de datos, cada una terminada con un retorno de carro y un salto de línea, valores separados por comas, cadenas entre comillas dobles —que pueden contener comas— y un Control-Z que marca el final del archivo. La guía añade que esos datos también podían generarse en un mainframe y descargarse al escritorio.
La misma guía expone el compromiso que aún define el formato. Las fórmulas no se envían a un archivo CSV; «solo se envían los valores que aparecen en pantalla en el momento de la conversión». Convierte una hoja a CSV y de vuelta, y las fórmulas habrán desaparecido. El CSV nunca pretendió sustituir a una hoja de cálculo. Era el mínimo común denominador que permitía que una hoja de cálculo, una base de datos, un programa en BASIC y un mainframe se pusieran de acuerdo sobre filas y columnas.
Cómo funcionan los bytes
Un CSV son solo caracteres. Cada registro es una línea, terminada en la forma clásica con un retorno de carro y salto de línea (CRLF, los dos caracteres de control con los que DOS y Windows terminan una línea), aunque algunos programas escriben solo un salto de línea. Los campos se separan con comas. Un campo puede ir entre comillas dobles, y debe ir así si contiene una coma, una comilla doble o un salto de línea; una comilla dentro de un campo entrecomillado se duplica (""). La primera línea puede ser una cabecera con los nombres de las columnas, pero nada en el archivo dice si lo es. Y nada dice qué significan los valores: 00123, 1-2 y MARCH1 son solo texto hasta que un programa decide otra cosa.
El archivo tampoco dice qué codificación de caracteres usa, es decir, la correspondencia entre bytes y letras. Los CSV antiguos solían escribirse en una página de códigos de un byte de Windows o DOS acorde con el idioma del ordenador; los más recientes suelen estar en UTF-8, la codificación Unicode sobre la que funciona la web. El programa que lee el archivo tiene que adivinar, y por eso la BOM importa a Excel y por eso los nombres con tildes, diéresis o escrituras asiáticas son lo primero que se rompe cuando un CSV pasa de un sistema a otro.
2005: el RFC 4180 pone las reglas por escrito
A principios de los años 2000 el CSV estaba en todas partes y no estaba especificado en ninguna. En octubre de 2005 el IETF (Internet Engineering Task Force, el grupo que elabora los estándares de Internet) publicó el RFC 4180, «Common Format and MIME Type for Comma-Separated Values (CSV) Files», escrito por Yakov Shafranovich. Su introducción es directa: «Sorprendentemente, aunque este formato es muy común, nunca se ha documentado formalmente». El memorando describe «el formato que parece seguir la mayoría de las implementaciones» —saltos de línea CRLF, una línea de cabecera opcional, comas, reglas para las comillas dobles— y registra text/csv ante la IANA, el organismo que mantiene la lista de tipos de medios, con los parámetros opcionales charset y header. Incluso señala que «algunos programas, como Microsoft Excel, no usan comillas dobles en absoluto».
El RFC 4180 es un RFC informativo; declara que «no especifica ningún estándar de Internet de ningún tipo». El trabajo posterior se construyó a su alrededor sin sustituirlo: en 2014 el RFC 7111 definió cómo apuntar con una dirección web a filas, columnas o celdas concretas de un archivo text/csv, y un grupo de trabajo del W3C llamado CSV on the Web, que se cerró en 2016, publicó recomendaciones para describir las columnas de un CSV —incluidos sus tipos— en un archivo de metadatos aparte. El CSV en sí sigue sin llevar ninguno.
Cuando la conjetura sale mal: genes, fechas y filas perdidas
La víctima mejor documentada es la biología. En 2004 Barry Zeeberg y sus colegas informaron en BMC Bioinformatics de que las conversiones predeterminadas de Excel estaban cambiando nombres de genes: el supresor tumoral DEC1 se convertía en «1-DEC», y los identificadores de clones RIKEN como 2310009E13 pasaban a ser el número 2,31E+13, conversiones que calificaron de irreversibles. En 2016 Mark Ziemann, Yotam Eren y Assam El-Osta analizaron archivos Excel suplementarios de 18 revistas publicados entre 2005 y 2015 y hallaron errores en nombres de genes en archivos de 704 artículos, el 19,6 % de los artículos con listas de genes en Excel. En 2020 el Comité de Nomenclatura Génica de HUGO (HGNC), que aprueba los símbolos de los genes humanos, publicó directrices que confirmaban que se habían cambiado todos los símbolos que se convertían automáticamente en fechas, un proceso llevado a cabo durante 2019: SEPT1 es ahora SEPTIN1 y MARCH1 es ahora MARCHF1.
El CSV también estuvo en el origen de un fallo de salud pública. Entre el 25 de septiembre y el 2 de octubre de 2020, 15.841 casos positivos de COVID-19 en Inglaterra quedaron fuera de las cifras diarias. Public Health England (PHE) dijo que algunos archivos habían superado el tamaño máximo admitido por el proceso que cargaba los resultados en los sistemas centrales. La BBC informó de que las empresas de análisis habían enviado sus resultados como archivos CSV sin problemas, y de que el proceso automático de PHE los volcaba en plantillas de Excel en el antiguo formato XLS, que solo admite unas 65.000 filas; con varias filas por prueba, cada plantilla llegaba a su límite en unos 1.400 casos, y el resto se quedaba fuera.
Al final, Microsoft cambió el software en lugar de los valores predeterminados. En octubre de 2023 el equipo de Excel anunció la disponibilidad general de la configuración de Conversión automática de datos para Windows (versión 2309 o posterior) y Mac (16.77 o posterior), con casillas para los ceros iniciales, el truncado a 15 dígitos, la letra E y las «letras y números continuos» convertidos en fechas, además de un aviso opcional cuando un archivo .csv o .txt está a punto de convertirse. Las conversiones siguen activadas salvo que las desactives.
Conserva el CSV original
Cuando Excel ha convertido una columna y guardas encima del archivo, el CSV contiene los valores cambiados; el texto original no puede recuperarse de él. Trabaja sobre una copia y guarda la exportación intacta junto a lo que edites.
Por qué siguen quedando archivos .csv en los discos en 2026
El CSV sobrevivió a los sistemas que lo producían porque era la puerta de salida. Los bancos ofrecen los extractos en CSV, los viejos programas de contabilidad y de gestión de socios exportan así sus registros, los instrumentos de laboratorio y los registradores de datos lo escriben, y décadas de migraciones de bases de datos pasaron por él. Muchos de esos archivos son hoy archivos heredados: exportaciones de programas que ya no funcionan, escritas en una página de códigos antigua, con puntos y comas o comas según dónde se configuró el PC, y llenas de códigos postales, referencias de piezas e identificadores que una hoja de cálculo moderna reinterpretará en silencio al primer doble clic.
Legacy File Converter incluye los valores separados por comas (.csv) entre las hojas de cálculo de su página de tipos de archivo compatibles y los convierte en tu propio PC con Windows a XLSX, PDF, Markdown o HTML; no se sube nada, algo importante cuando la exportación contiene datos bancarios o de socios. Después, compara con el archivo original columnas como códigos postales, identificadores largos y fechas. Para otras formas tempranas de intercambiar datos entre hojas de cálculo, consulta Lección de historia: ¿Qué es un archivo .dif? y Lección de historia: ¿Qué es un archivo .slk?; para el libro binario de la historia de la COVID-19, consulta Lección de historia: ¿Qué es un archivo .xls?.
Lecturas relacionadas
¿Listo para abrir tus archivos antiguos?
Empieza gratis y luego desbloquea las conversiones ilimitadas con una licencia Standard de pago único de $79.95. Descarga el instalador para Windows: todas las funciones para hasta 10 archivos.
Prueba gratuita
Todas las funciones de la aplicación · hasta 10 archivos
Windows 10 u 11
Prueba gratis: convierte hasta 10 archivos. Descarga el instalador para Windows y convierte en tu PC.
Instalador directo para Windows · MSI sin conexión
¿Es seguro? — editor, instalador y ayuda con SmartScreen
Requiere Windows 10 u 11. Sin suscripciones.