Toolivaro

Conversor de JSON para CSV grátis

Converta um array JSON de objetos em CSV RFC 4180, com aspas corretas, união de colunas e opções de copiar ou baixar.

O conversor de JSON para CSV achata um array JSON de objetos em um arquivo CSV pronto para planilhas. Cole um array de objetos — uma resposta de API, uma exportação de banco de dados ou dados de teste — e o conversor deriva o conjunto de colunas da união de todas as chaves dos objetos, serializa cada linha com aspas conforme a RFC 4180 (células com vírgulas, aspas ou quebras de linha são colocadas entre aspas e aspas embutidas são dobradas) e emite um arquivo terminado em CRLF. Chaves ausentes viram células vazias; valores aninhados são serializados como strings JSON; null e undefined viram células vazias. A ferramenta valida a entrada antes de converter e explica exatamente o que está errado quando ela não é um array não vazio de objetos. Tudo roda localmente no seu navegador: o JSON colado nunca sai do seu dispositivo, nunca é registrado e nunca é transmitido. As ações de copiar e baixar entregam o arquivo onde você precisar. Use este conversor para abrir dados de API em uma planilha, entregar um relatório a alguém sem perfil técnico ou preparar importações CSV para ferramentas que rejeitam JSON.

Processado localmente no seu navegador

Processado localmente no seu navegador — os dados nunca são enviados, registrados ou armazenados.

Como usar esta calculadora

How the column set is built

JSON-to-CSV flattens an array of objects into a spreadsheet-ready table, and the first job is deciding the columns. The converter takes the union of every object’s keys in first-seen order: the first object contributes its keys in order, then new keys from later objects are appended. That is the behavior that keeps the output correct when rows disagree — an API response where one user has a city and another does not produces a name, age, city table with an empty cell where city is missing, and every row lines up with the header.

The input contract is strict because the output needs a stable shape: the converter requires a non-empty array of objects. A bare object, an array of strings, or an empty array is rejected with a message that says what was wrong, rather than guessed into a structure that would break downstream.

What happens to values that are not simple text

CSV cells are text, so values are serialized the way the format allows: missing keys become empty cells, null and undefined become empty cells, and nested values — an object or array inside a cell — are serialized as JSON strings, so {"x":1} stays the text {"x":1}. That is the only lossless flat representation: the nested data survives verbatim in the cell, and any spreadsheet software shows it as text.

Numbers and booleans are written as their plain forms (30, true), which is the natural convention for spreadsheet imports. True flattening of deep structures — turning every nested key into its own column — is outside the converter’s scope, and the page says so rather than pretending otherwise.

Quoting and line endings: the RFC 4180 contract

The output follows RFC 4180 exactly so every spreadsheet application opens it correctly: cells containing a comma, a quote, or a line break are wrapped in double quotes, embedded quotes are doubled (""), and rows are terminated with CRLF — the line ending the standard defines and the one spreadsheet tools expect. The worked example shows the pair in action: the cell "New York, NY" is quoted because of its comma, and the file ends every row with CRLF.

Getting these details right is the difference between a file that opens cleanly and one that splits columns or misaligns rows. The converter never produces the unquoted forms that break on the first address containing a comma.

The local promise

API responses, database exports, and test data often contain internal details that should not leave your machine, and converting JSON to CSV is a job no server needs to perform. Everything runs in your browser: the JSON is parsed and serialized locally, nothing is uploaded, logged, or stored, and copy and download actions deliver the CSV file where you need it — a spreadsheet, an import tool, or a stakeholder who asked for the data in a readable form.

Como o resultado é calculado?

Exportando uma resposta de API para uma planilha

Uma API retorna usuários com campos diferentes — um tem cidade, outro não. O conversor monta o conjunto de colunas a partir de todas as chaves (name, age, city), emite uma célula vazia onde city está ausente e coloca entre aspas a célula que contém uma vírgula. O resultado abre direto em aplicativos de planilha.

Exemplo de entrada e saída
Entrada Valor
json [{"name":"Alice","age":"30","city":"Paris"},{"name":"Bob","age":"25"}]
Resultado name,age,city Alice,30,Paris Bob,25,

Qual é a fórmula e suas premissas?

Conjunto de colunas

columns = union of all object keys, first-seen order

Termos da fórmula
Símbolo Significado
union toda chave que aparece em qualquer objeto

Objetos sem uma chave geram uma célula vazia naquela coluna — a ordem das colunas é estável em todo o arquivo.

Aspas em células (RFC 4180)

quoted ⇔ cell contains comma, quote, or line break

Termos da fórmula
Símbolo Significado
quote uma aspa dupla dentro de uma célula entre aspas é dobrada ("")
line break CRLF é usado entre as linhas

Quais são os erros mais comuns?

  • Converter um objeto único em vez de um array — o conversor exige um array não vazio de objetos e explica o motivo.
  • Esperar que objetos aninhados sejam achatados — eles são serializados como strings JSON, que é a única representação plana sem perdas.
  • Usar um conversor online que envia o JSON — esta ferramenta mantém tudo no seu dispositivo.

Quais são as premissas e limitações?

  • A entrada precisa ser um array não vazio de objetos; um objeto solto ou um array de primitivos é rejeitado com uma mensagem clara.
  • Valores aninhados permanecem strings JSON — o achatamento real de estruturas profundas está fora do escopo do conversor.
  • Arrays muito grandes são processados em memória; a ferramenta foi feita para payloads típicos, não para dumps de banco de dados.

De onde vêm os números?

Última revisão 4 de agosto de 2026 · Versão 1.0.0 · Toolivaro não garante conteúdo externo.

Perguntas frequentes

Como objetos aninhados são convertidos?

Valores aninhados são serializados como strings JSON dentro da célula — por exemplo, {"x":1} vira o texto {"x":1}. CSV é um formato plano, então estruturas mais profundas precisam de achatamento ou de uma exportação separada.

Qual é a ordem das colunas?

As colunas seguem a ordem de primeira ocorrência no array: o primeiro objeto contribui com suas chaves em ordem e, depois, chaves novas de objetos posteriores são acrescentadas. Cada linha se alinha com o cabeçalho independentemente de quais chaves cada objeto tem.

Por que meu arquivo termina com CRLF?

CRLF é o final de linha da RFC 4180 e a convenção que os aplicativos de planilha esperam. O conversor o emite por padrão para que os arquivos abram corretamente em qualquer lugar.

Can I convert an object instead of an array?

No — the converter requires a non-empty array of objects, because that is the shape that maps to rows. A bare object is rejected with a clear message; wrap it in an array if that is what you have.

Why do my null values come out as empty cells?

Null and undefined mean "no value here" in JSON, and an empty cell is the honest CSV equivalent — the column position is preserved, and the spreadsheet shows the absence rather than a placeholder that could be mistaken for data.

Parte de Kit de ferramentas de texto e JSON para desenvolvedores

Encontrou um erro ou tem uma correção? Informe — revisamos toda correção.

Foi útil?

Revisado pela equipe editorial da Toolivaro conforme nossa metodologia Metodologia · Política editorial