Json To Csv LogoJson To Csv

Como Fazer JSON to CSV Online: Faça Nesta Aba em 30 Segundos (Guia 2026)

Como fazer JSON to CSV online: cole o seu JSON no conversor desta página, veja o CSV aparecer à direita e clique em Download .csv. Esse é o método inteiro. O resto deste guia mostra o passo a passo clique por clique, apresenta as quatro formas de JSON que funcionam e corrige os três erros que todo mundo comete.

Atualizado: 2026-10-188 min de leitura

O caminho de 30 segundos, clique por clique

Você pesquisou uma consulta abreviada, então aqui está a resposta abreviada, com cada clique nomeado. Passo um: role até o conversor no topo desta página. Você verá duas caixas lado a lado. A da esquerda é rotulada Input JSON, e o texto de exemplo (placeholder) dela diz Paste raw JSON data here or drag and drop a .json file. Clique dentro dela e cole o seu JSON com Ctrl+V ou Cmd+V.

O passo dois não é clique nenhum, porque o Auto Convert já vem ligado por padrão. No momento em que você cola, a caixa da direita, rotulada Output CSV, se enche com o resultado convertido, e o selo de status acima da caixa da esquerda muda de Ready para Valid (N rows), em que N é a sua contagem de linhas. Se você algum dia desligar o Auto Convert, o botão Convert to CSV na barra de configurações faz o mesmo trabalho sob demanda.

Passo três: clique em Download .csv no canto superior direito da caixa Output CSV. O arquivo baixa imediatamente, com o nome data-export-YYYY-MM-DD.csv com a data de hoje, como texto simples em UTF-8. Abra no Excel, no Google Planilhas ou em qualquer editor de texto. Não há cadastro, nem upload, nem sala de espera: a conversão acontece na sua própria máquina, dentro desta aba do navegador.

Esse é o caminho inteiro, e é o certo para uma conversão pontual. O resto deste guia existe para os três momentos em que as pessoas travam: não saber o que conta como JSON colável, não confiar no resultado e encontrar o selo vermelho Invalid JSON. Cada um deles tem uma correção curta e concreta abaixo.

O que colar: quatro formas que funcionam

O conversor aceita mais formas do que a maioria das pessoas espera, e conhecê-las poupa uma rodada de reformatação. A forma mais comum é um array de objetos: uma lista entre colchetes, em que cada item é uma linha. Cole isso e cada objeto vira uma linha, com a linha de cabeçalho formada pela união de todas as chaves encontradas em qualquer parte dos dados.

A segunda forma é um único objeto, sem colchetes. Cole um objeto e você obtém um CSV de uma linha: as chaves viram a linha de cabeçalho e os valores viram a única linha de dados. A terceira forma é a resposta de API embrulhada, em que o array fica sob uma chave, como {"users": [...]}. O conversor encontra o primeiro array de objetos no nível superior e converte esse array, então você pode colar a resposta bruta da API sem desembrulhar à mão.

A quarta forma é JSON Lines, também chamado de NDJSON: um objeto JSON por linha, sem vírgulas nem colchetes externos. Cole isso e cada linha vira uma linha do CSV. E se você colar um array simples de valores, como ["apple", "banana", "cherry"], obtém duas colunas, index e value, numeradas a partir de um. Todas as cinco formas abaixo foram executadas no motor real do conversor antes da publicação deste guia, então os resultados são exatos.

O exemplo trabalhado abaixo é a forma embrulhada, porque é a que mais confunde as pessoas: dois usuários, cada um com um objeto de endereço aninhado e uma lista de tags. Com as configurações padrão, o endereço achata para address.city e address.zip, e a lista de tags se junta em uma única célula com ponto e vírgula e espaço.

Try it: the wrapped users file, and what the converter returns (verified)
{
  "users": [
    { "id": 1, "name": "Ana", "address": { "city": "Lima", "zip": "15001" }, "tags": ["new", "vip"] },
    { "id": 2, "name": "Ken", "address": { "city": "Osaka", "zip": "530-0001" }, "tags": ["new"] }
  ]
}

# Output CSV, default settings (verified):
# id,name,address.city,address.zip,tags
# 1,Ana,Lima,15001,new; vip
# 2,Ken,Osaka,530-0001,new

A verificação de 10 segundos antes de baixar

Antes de clicar em Download .csv, gaste dez segundos em quatro verificações. Elas pegam todas as surpresas comuns enquanto a correção ainda está a um clique de distância. Primeiro, leia o selo de status: ele deve dizer Valid (N rows), com N igual ao número de registros que você colou. Se N for um e você colou cinquenta registros, o conversor viu um objeto, não cinquenta, e você provavelmente colou uma resposta embrulhada com uma forma inesperada.

Segundo, leia a linha de cabeçalho na caixa Output CSV. Ela deve nomear as colunas que você espera. Uma coluna chamada address quando você esperava address.city significa que o Flatten Nested Objects está desligado, o que é tratado na seção de configurações abaixo. Terceiro, leia uma célula aninhada: se uma lista que você esperava ver como new; vip aparece como texto JSON com aspas duplicadas, o achatamento também está desligado.

Quarto, olhe as estatísticas de saída sob a caixa do CSV: linhas, colunas, tamanho do arquivo e tempo de conversão. Linhas e colunas devem bater com a sua imagem mental dos dados, e o tempo de conversão para arquivos comuns é de alguns milissegundos, então um número grande ali significa um arquivo excepcionalmente grande, não uma ferramenta lenta. A saída abre em Table View por padrão, que é a visualização mais fácil para essas verificações; Raw CSV mostra os mesmos dados como texto simples, exatamente como aparecerão no arquivo baixado.

Se as quatro verificações passarem, baixe. Se uma falhar, a correção está nas configurações ou no próprio JSON, e ambas são tratadas a seguir. O hábito a construir é este: verifique primeiro, baixe depois. Leva dez segundos e é a diferença entre um CSV que abre corretamente na primeira tentativa e um que você converte duas vezes.

Configuração 1: Flatten Nested Objects

A barra de configurações acima das duas caixas tem três botões de alternância e um menu suspenso de delimitador, e os três botões já vêm ligados. O primeiro botão, Flatten Nested Objects, é o que mais muda o resultado. Ligado, os objetos aninhados viram colunas com notação de ponto: address vira address.city e address.zip, e cada valor cai em uma coluna de verdade que você pode ordenar e filtrar.

Desligado, os valores aninhados ficam exatamente como estão: o objeto address cai em uma única célula address como texto JSON, e a lista tags cai em uma única célula tags como um array JSON. As aspas duplicadas que você vê nessa saída não são corrupção; são o escape do CSV fazendo o seu trabalho, porque uma célula com aspas precisa duplicá-las e envolver a célula inteira em aspas. Os dados estão intactos, mas não é uma tabela que você consiga filtrar, e é por isso que o achatamento fica ligado em quase todas as conversões.

O mesmo arquivo com o achatamento desligado é mostrado abaixo para que você reconheça a diferença à primeira vista. Se o seu CSV sair cheio de texto {"city": ...}, este botão é a causa, e ligá-lo de novo é a correção inteira. Nosso guia sobre como achatar JSON em CSV documenta o botão célula por célula, incluindo os casos extremos em que deixá-lo desligado é a decisão certa.

Same file, Flatten Nested Objects switched off (verified)
# Output CSV, flattening off (verified):
# id,name,address,tags
# 1,Ana,"{""city"":""Lima"",""zip"":""15001""}","[""new"",""vip""]"
# 2,Ken,"{""city"":""Osaka"",""zip"":""530-0001""}","[""new""]"

Configuração 2: Delimiter

O menu suspenso Delimiter escolhe o caractere entre as colunas: Comma (,), Semicolon (;), Tab ou Pipe (|). Comma é o padrão, e é a escolha certa a menos que a sua planilha espere outra coisa. Mude apenas quando tiver um motivo, porque o delimitador é a configuração com maior chance de produzir um CSV que parece quebrado no próximo programa.

O sintoma clássico é um arquivo que abre no Excel como uma única coluna alta: todas as linhas estão lá, mas todos os valores ficam amontoados na coluna A. Isso significa que o delimitador do arquivo e o delimitador que o Excel espera não batem. A correção é baixar de novo com o Delimiter em Comma, ou abrir o arquivo pelo caminho Excel Dados, De Texto/CSV, em que você pode escolher o delimitador explicitamente em vez de deixar o Excel adivinhar.

Um detalhe vale a pena conhecer. Quando você muda para Semicolon, qualquer célula que contenha ponto e vírgula é envolvida em aspas automaticamente, então o arquivo continua interpretável. A célula de tags new; vip vira "new; vip" na versão com ponto e vírgula abaixo. Essas aspas são CSV correto, e toda planilha as lê de volta como o único valor new; vip. Não remova as aspas à mão; elas sustentam a estrutura do arquivo.

Same file, Delimiter set to Semicolon (verified)
# Output CSV, semicolon delimiter (verified):
# id;name;address.city;address.zip;tags
# 1;Ana;Lima;15001;"new; vip"
# 2;Ken;Osaka;530-0001;new

Configuração 3: Include Headers

O terceiro botão, Include Headers, controla se a primeira linha do CSV nomeia as colunas. Deixe ligado, que é o padrão, e a primeira linha fica id,name,address.city,address.zip,tags. Desligue e o mesmo arquivo retorna apenas as duas linhas de dados, sem nenhuma linha de cabeçalho: 1,Ana,Lima,15001,new; vip e depois 2,Ken,Osaka,530-0001,new.

Cabeçalhos desligados é uma configuração de nicho, e existe para uma situação: acrescentar a um CSV existente que já tem uma linha de cabeçalho. Se você colar um segundo lote de registros em um arquivo que já nomeia as suas colunas, uma segunda linha de cabeçalho no meio corromperia o arquivo, então você converte o novo lote sem cabeçalhos e acrescenta as linhas simples. Para qualquer outra situação, mantenha os cabeçalhos ligados: um CSV sem linha de cabeçalho é uma tabela sem nomes de coluna, e a próxima pessoa a abri-lo terá de adivinhar o que cada coluna significa.

O quarto controle na barra de configurações não é um botão, mas o botão Convert to CSV, e ele só importa quando o Auto Convert está desligado. Com o Auto Convert ligado, que é o padrão, a saída atualiza conforme você digita. Com ele desligado, nada converte até você apertar o botão. Se você colar JSON e a saída ficar vazia, confira o Auto Convert primeiro: é o motivo mais comum para uma caixa da direita em branco, e a correção é um clique.

Quando o selo diz Invalid JSON

Se o JSON que você colar não for JSON válido, o selo de status fica vermelho e diz Invalid JSON, e uma linha de erro vermelha aparece sob a caixa de entrada com a mensagem exata do interpretador. Por exemplo, colar {bad json produz a mensagem Expected property name or '}' in JSON at position 1 (line 1 column 2). Colar nada produz Input is empty. Please paste or upload JSON data. A mensagem diz onde está o problema, então leia-a antes de redigitar qualquer coisa.

Três erros causam quase todo selo Invalid JSON. O primeiro é a vírgula final: uma vírgula depois do último item em um objeto ou array, como {"id": 1,}. O JSON a proíbe, mesmo que o JavaScript a permita, então apague a vírgula. O segundo são aspas simples em torno de chaves ou strings: o JSON exige aspas duplas, então {'id': 1} é inválido e {"id": 1} é válido. O terceiro é um colchete de fechamento faltando: um objeto aberto com { e nunca fechado, ou um array aberto com [ e nunca fechado. Conte os abridores e os fechadores, e a lacuna geralmente se mostra.

Uma quarta causa é invisível: aspas inteligentes. Se você copiou o JSON de uma página web, de um documento ou de uma mensagem de chat, as aspas duplas retas podem ter sido substituídas por aspas curvas, que o JSON não aceita. A correção é redigitar as aspas à mão na caixa de entrada, ou colar por um editor de texto simples primeiro. Quando o JSON fica válido, o selo muda para Valid (N rows) e o CSV aparece, sem nenhum outro passo necessário.

Mais uma saída de emergência: a barra de ferramentas da entrada tem um botão Format que deixa o JSON válido bonito, em forma indentada, o que torna um arquivo grande muito mais fácil de ler e depurar. Ele só funciona em JSON válido, então se o selo diz Invalid JSON, corrija o erro primeiro e depois formate. E se o arquivo veio de outro lugar, tente o botão Upload File ou arrastar e soltar: um arquivo .json ou .txt solto direto na caixa de entrada converte do mesmo jeito que o texto colado.

Se você preferir não usar esta página

Este guia é deliberadamente sobre um caminho: o conversor desta página. Mas não é o único caminho, e duas situações pedem um caminho diferente. Se a conversão precisa se repetir — a mesma exportação toda manhã, ou uma conversão dentro de um software que você distribui — um script vence uma aba do navegador, e nossos guias sobre os três métodos confiáveis e as cinco formas de converter cobrem Python, jq, Power Query e chamadas de biblioteca, todos testados no mesmo arquivo.

Se você já vive no VS Code e o JSON é um arquivo que você está editando lá, converter dentro do editor mantém você no contexto, e nosso guia de VS Code mostra as rotas da extensão, do terminal e de um único toque de tecla. Para todo o resto — um arquivo, uma vez, agora — o caminho no topo deste guia é o mais rápido, e é aquele para o qual esta página foi construída.

E se você já usou esta página antes e só voltou para conferir um detalhe, a lista de verificação é: cole, confira se o selo diz Valid (N rows), confira a linha de cabeçalho, baixe. Todo o resto na página está lá para o dia em que você precisar, não para hoje.

Guias relacionados

Perguntas frequentes

Como converter JSON em CSV online de graça?

Abra esta página, cole o seu JSON na caixa Input JSON e clique em Download .csv. O conversor é gratuito, sem cadastro, sem limite de arquivo para arquivos comuns e sem marca d'água na saída. A conversão roda inteiramente no seu navegador, então nada é enviado e nada é cobrado.

Como converter JSON em CSV online sem instalar nada?

Use o conversor desta página: é um site, não um programa, então não há nada para baixar ou instalar. Cole o JSON, confira se o selo diz Valid (N rows) e baixe o CSV. Funciona em qualquer navegador moderno no desktop ou no celular, e nada sai do seu dispositivo, porque a conversão acontece localmente.

Posso converter um arquivo JSON em CSV online, não apenas texto colado?

Sim. Clique em Upload File na barra de ferramentas da entrada e escolha um arquivo .json ou .txt, ou arraste o arquivo direto para a caixa Input JSON. Para JSON hospedado em uma URL pública, clique em Fetch URL e digite o endereço: a página carrega o JSON desse endereço na caixa de entrada, e a partir daí a conversão é idêntica à do texto colado.

Por que o meu CSV baixado abre como uma coluna só no Excel?

O delimitador do arquivo e o delimitador que o Excel espera não batem. Baixe de novo com o Delimiter em Comma, que é o padrão, ou abra o arquivo pelo caminho Excel Dados, De Texto/CSV, em que você pode escolher o delimitador explicitamente em vez de deixar o Excel adivinhar. Se você converteu com Semicolon de propósito, o Excel precisa ser avisado de que deve esperar ponto e vírgula, ou ele mostrará a linha inteira na coluna A.

Por que o meu CSV está cheio de texto {"city": ...}?

O Flatten Nested Objects está desligado. Com ele desligado, os objetos aninhados e as listas ficam como texto JSON dentro de células únicas, que são dados intactos, mas não uma tabela ordenável. Ligue o botão de novo e os valores aninhados viram colunas de verdade como address.city, com as listas unidas em uma célula. As aspas duplicadas na saída com o achatamento desligado são escape correto de CSV, não corrupção.

É seguro converter JSON em CSV online?

Com este conversor, sim: ele roda inteiramente no seu navegador, então o JSON nunca sai da sua máquina e nunca é enviado para um servidor. Não há conta, nem upload, nem cópia guardada em lugar nenhum. Isso não é verdade para todo conversor online, então vale a pena perguntar isso de qualquer ferramenta: se ela envia o seu arquivo para um servidor, o operador desse servidor pode ver os seus dados.

E se o meu arquivo JSON for grande demais para uma aba do navegador?

Uma aba do navegador lida com arquivos comuns com folga, mas para arquivos na casa das dezenas de megabytes para cima, mude para uma ferramenta que processa em fluxo contínuo: o jq com a flag --stream processa o arquivo registro por registro em vez de carregá-lo inteiro, ou um script Python em blocos que lê e escreve em lotes. Dividir um arquivo enorme em arquivos menores e converter cada parte também funciona, e mantém o caminho do navegador disponível.

O seu JSON está a 30 segundos de um CSV

Cole-o no conversor desta página: os objetos aninhados achatam para colunas com notação de ponto, as listas se juntam em células limpas, e o download é UTF-8 simples. Grátis, sem cadastro, roda inteiramente no seu navegador.

Abrir o conversor de JSON para CSV
Todos os guias