Skip to content
Back to Blog
format-comparisons

CSV vs. XLSX vs. JSON: Escolhendo o Formato de Dados Certo

2026-05-17 9 min read

Por Que o Formato Que Você Escolhe Realmente Importa

Escolher o formato de dados errado leva a uma dor de cabeça real e evitável. Horas gastas limpando importações problemáticas, lutando com erros de codificação ou explicando a um colega perplexo por que as fórmulas da planilha dele quebraram de repente. Isso não é um problema técnico raro; é o atrito diário que desgasta projetos para analistas, desenvolvedores e equipes de operações. Você quase sempre estará trabalhando com um destes três formatos: CSV, XLSX ou JSON. Eles parecem semelhantes na superfície, mas resolvem problemas completamente diferentes. CSV é um burro de carga de texto simples com 50 anos de idade que quase todas as ferramentas do planeta conseguem ler. XLSX é o poderoso contêiner da Microsoft para planilhas, guardando muito mais do que apenas dados brutos. JSON é a língua nativa da web, alimentando APIs e aplicações modernas. Nenhum é 'melhor' que o outro. Um catálogo de produtos com 10 colunas do Shopify? Exporte como CSV e ele chegará no Google Sheets em 30 segundos, sem drama. Esse mesmo catálogo, entregue via API? Tem que ser JSON. E se sua equipe financeira precisa de tabelas dinâmicas, formatação condicional e intervalos nomeados, só o XLSX dará conta do recado. Este guia oferece uma estrutura prática para escolher o formato certo para o trabalho que você está realmente fazendo, e não com base em algum debate técnico abstrato.

CSV: Pontos Fortes, Fracos e Quando é a Escolha Certa

CSV, ou Comma-Separated Values (Valores Separados por Vírgula), é o formato de dados mais simples que existe. Cada linha é apenas uma linha de texto, e os campos são separados por uma vírgula (ou às vezes um tab ou ponto e vírgula). Sem fórmulas, sem fontes, sem tipos de dados. Apenas texto. Essa simplicidade radical é ao mesmo tempo seu maior poder e sua fraqueza mais frustrante. O poder é inegável. Arquivos CSV são minúsculos. Um conjunto de dados de 500.000 linhas que ocupa 45 MB como XLSX pode encolher para apenas 8 MB como CSV. Melhor ainda, tudo consegue lê-lo. O comando COPY do PostgreSQL, o módulo csv nativo do Python, o read.csv() do R — todos eles lidam com CSV nativamente, sem necessidade de bibliotecas especiais. Para trabalhos de ETL, migrações de dados ou uploads em massa para ferramentas como Salesforce ou Mailchimp, o CSV é o campeão indiscutível. Mas as fraquezas são bem reais. O CSV não tem ideia do que é um 'tipo de dado'. Um CEP como 00147 se tornará 147, a menos que sua ferramenta de importação seja inteligente o suficiente para tratá-lo como texto. Datas são um pesadelo; qualquer um que já tentou mesclar dados de fontes americanas (MM/DD/YYYY) e europeias (DD/MM/YYYY) conhece essa dor. 04/05/2026 é 5 de abril ou 4 de maio? Com CSV, é uma aposta. E ainda há o caos de vírgulas ou quebras de linha incorporadas, que exigem um uso perfeito de aspas que muitos exportadores simplesmente não acertam. E não se esqueça da codificação de caracteres, onde uma incompatibilidade entre UTF-8 e Windows-1252 cria aquele famoso texto ilegível. Então, aqui está a regra: use CSV quando seus dados forem uma tabela simples e plana, você precisar de compatibilidade máxima ou o tamanho do arquivo for crítico. Se precisar preservar a formatação, forçar tipos de dados ou lidar com dados aninhados, procure outro formato.

XLSX: Mais Que Uma Planilha, Menos Que Um Banco de Dados

O XLSX tem sido o formato padrão do Microsoft Excel desde 2007, e é falado fluentemente pelo Google Sheets, LibreOffice Calc e todas as ferramentas de BI sérias. Uma curiosidade: um arquivo XLSX é, na verdade, um arquivo ZIP cheio de arquivos XML. Você pode comprovar isso renomeando qualquer arquivo .xlsx para .zip e explorando seu conteúdo. Essa arquitetura é o que dá poder ao XLSX. Diferente da abordagem 'tudo é texto' do CSV, o XLSX armazena tipos de dados verdadeiros. Uma data é armazenada como um número de série (como 46188 para 17 de maio de 2026) com um código de formato separado, para que sempre seja exibida corretamente para o usuário. Números são números, com até 15 dígitos significativos de precisão. Booleanos são TRUE/FALSE, não strings ambíguas. Além disso, o XLSX inclui suporte para múltiplas planilhas, intervalos nomeados, fórmulas, gráficos, tabelas dinâmicas e regras de validação de dados, tudo em um único arquivo. Para qualquer relatório que será entregue a um colega não técnico — especialmente nas áreas financeira ou de operações — o XLSX é a única escolha profissional. Enviar um CSV para eles é apenas criar mais trabalho. Mas não é um banco de dados. Analisar programaticamente um XLSX de 200.000 linhas com pandas pode levar de 10 a 15 segundos, enquanto os mesmos dados em formato CSV carregam em menos de dois. E esteja avisado: o XLSX tem um limite rígido de 1.048.576 linhas por planilha. Se você exportar um conjunto de dados maior, ele será silenciosamente truncado. A complexidade do formato, com coisas como células mescladas e linhas ocultas, também pode causar grandes dores de cabeça para scripts automatizados. Escolha o XLSX quando seu público for um humano usando software de planilha, você precisar de formatação rica ou múltiplas planilhas, e quiser que os tipos de dados sejam preservados perfeitamente, sem complicações.

JSON: O Padrão dos Desenvolvedores e Suas Reais Desvantagens

JSON, ou JavaScript Object Notation, é a linguagem da web moderna. É o formato padrão para APIs REST, arquivos de configuração e bancos de dados NoSQL como o MongoDB. Seu recurso matador, e a razão pela qual ele domina, é sua capacidade de representar dados hierárquicos e aninhados nativamente. Um único objeto JSON pode descrever um pedido que contém um array de itens, onde cada item tem sua própria lista de atributos de produto. Tentar modelar isso em CSV exigiria pelo menos três arquivos separados e um monte de chaves de junção. É por isso que, quando você recebe dados do Stripe, Twilio ou da API do Google Maps, você recebe JSON. Quando envia dados para um webhook, você envia JSON. É o padrão por um motivo. O JSON também preserva os tipos de dados de forma limpa: strings estão entre aspas, números não, booleanos são true/false e null é um valor distinto. Não há ambiguidade. Mas esse poder tem um custo, especialmente para dados tabulares simples. Uma tabela plana de 100.000 linhas armazenada como um array de objetos JSON repetirá cada nome de campo 100.000 vezes. Esse inchaço significa que um CSV de 4 MB pode facilmente se tornar um arquivo JSON de 18 MB. Também é extremamente hostil para humanos em grande escala; um blob JSON minificado é apenas uma parede de texto. Embora o Excel e o Google Sheets possam importar JSON, o processo é doloroso. Você precisa navegar por menus (Dados → Obter Dados → Do Arquivo → Do JSON) e depois brigar com o editor do Power Query para achatar a estrutura. É uma bagunça. Use JSON para APIs, dados hierárquicos e fluxos de trabalho centrados em JavaScript. Para dados planos que uma pessoa precisa analisar, quase sempre é a ferramenta errada para a tarefa.

Comparação Lado a Lado: Uma Tabela de Decisão Prática

Vamos colocar esses formatos frente a frente nos critérios que importam no mundo real. Quando se trata de tamanho de arquivo e desempenho, as diferenças são gritantes. Para uma tabela de 100.000 linhas e 15 colunas, um CSV pode ter de 12 a 20 MB. O JSON equivalente pode ter de 25 a 50 MB devido às chaves repetidas, enquanto o XLSX pode variar de 8 a 25 MB, às vezes superando o CSV se os dados forem majoritariamente numéricos, graças à sua compressão ZIP interna. Para velocidade de processamento em Python, o CSV é o vencedor claro, carregando de 2 a 5 vezes mais rápido que o XLSX. O JSON fica em algum lugar no meio. Para compatibilidade universal com ferramentas, nada supera o CSV. É o menor denominador comum da melhor maneira possível. O XLSX fica em segundo lugar, suportado por todas as ferramentas de planilha e BI, mas requer bibliotecas dedicadas para acesso programático. O JSON é nativo da web e do JavaScript, mas parece desajeitado e estranho em aplicativos de planilha. E quanto à estrutura de dados? Se seus dados são hierárquicos, com objetos dentro de objetos, JSON é sua única opção real aqui. CSV e XLSX são fundamentalmente planos. Para preservar tipos de dados sem nenhuma configuração, tanto XLSX quanto JSON são excelentes, armazenando números, strings e booleanos de forma distinta. O CSV, por outro lado, trata tudo como uma string, deixando a interpretação para a ferramenta receptora. Meu conselho sincero? Na dúvida, comece com CSV. É o doador universal da troca de dados. Algo, em algum lugar, sempre será capaz de lê-lo.

Convertendo Entre Formatos: O Que o CocoConvert Faz e Onde Ele Falha

O CocoConvert oferece conversões diretas e de mão dupla entre CSV, XLSX e JSON. Para dados tabulares padrão, nossa ferramenta é rápida e confiável. Você pode enviar um CSV de 50.000 linhas e receber um arquivo XLSX perfeitamente estruturado em menos de 10 segundos. Cobrimos todos os seis caminhos de conversão: CSV→XLSX, CSV→JSON, XLSX→CSV, XLSX→JSON, JSON→CSV, JSON→XLSX. O principal desafio na conversão vem da complexidade do JSON. Nossos conversores de JSON para CSV e JSON para XLSX são projetados para a saída de API mais comum: um array de objetos planos. Se o seu JSON tiver alguns níveis de aninhamento, o CocoConvert tentará achatá-lo para você. No entanto, para estruturas profundamente aninhadas ou irregulares (como arrays dentro de arrays dentro de objetos), a saída pode ficar incompleta. Nesses casos avançados, você obterá resultados mais limpos pré-processando o arquivo você mesmo com uma ferramenta de linha de comando como o jq (ex: jq '.[] | {id: .id, name: .customer.name, total: .order.total}' input.json > flat.json) antes de fazer o upload. Existem alguns outros comportamentos específicos de cada formato que você precisa conhecer. Ao converter de XLSX para CSV, o CocoConvert exporta apenas a planilha ativa. Se sua pasta de trabalho tiver cinco planilhas, você precisará executar cinco conversões. Além disso, as fórmulas do XLSX são avaliadas para seu último valor calculado; as fórmulas em si não são preservadas no CSV ou JSON resultante. Isso é o esperado, mas é um ponto comum de confusão. Finalmente, recursos de exibição como gráficos, tabelas dinâmicas и formatação condicional serão perdidos, pois não têm equivalente em CSV ou JSON. Se você precisa reestruturar um arquivo XLSX mantendo todos os seus recursos, o CocoConvert não é a escolha certa — uma macro ou um script Python com openpyxl é melhor. Acreditamos em ser transparentes sobre os limites da nossa ferramenta para que você não perca seu tempo.

Tomando a Decisão Final: Um Checklist de Formatos

Então, como você toma a decisão final? Pare de pensar em 'melhores práticas' abstratas e faça algumas perguntas diretas sobre sua tarefa específica. Em primeiro lugar: quem ou o que vai usar este arquivo? Se a resposta for uma pessoa que vive no Excel ou no Google Sheets, envie um XLSX, a menos que o arquivo seja muito grande. Se for para um desenvolvedor, um pipeline automatizado ou uma API web, então CSV ou JSON são suas melhores apostas. Em seguida, observe o formato dos seus dados. É uma grade simples e plana onde cada linha tem as mesmas colunas? CSV e XLSX são perfeitos. Tem estruturas aninhadas, como uma lista de tags para cada post de blog? Você absolutamente precisa de JSON. Depois, considere os aspectos práticos. O arquivo precisa ser legível em um editor de texto básico? Vá de CSV. Você precisa preservar formatação especial, fórmulas ou manter várias planilhas em uma única pasta de trabalho? Esse é um trabalho para o XLSX e apenas para o XLSX. E se o tamanho do arquivo for uma grande preocupação? Para conjuntos de dados realmente enormes (mais de 500.000 linhas), o CSV costuma ser o mais gerenciável. O JSON ficará inchado, e o XLSX pode atingir seu limite rígido de linhas. Por fim, uma pergunta para os desenvolvedores: este arquivo viverá em um repositório Git? Formatos de texto simples (CSV, JSON) são muito superiores para controle de versão porque suas alterações são fáceis de rastrear. Um arquivo XLSX binário é um pesadelo para comparar versões (diff). Depois de responder a essas perguntas, a escolha certa geralmente se torna óbvia. As guerras de formato são uma distração. Cada uma dessas ferramentas tem um propósito claro, e o truque é simplesmente combinar a ferramenta com seu fluxo de trabalho.