Data tools

JSON to CSV

Convert JSON objects or arrays to safe deterministic CSV with optional flattening.

Processed locally in your browser. Your input is not uploaded to our server.

0 characters
0 characters

Enter or load data to begin

How to use JSON to CSV

  1. Paste supported JSON or JSON Lines, or open a local .json or .jsonl file.
  2. Set flattening, array, delimiter, header, null, quoting, line-ending, and safety options.
  3. Inspect column order and protected cells before downloading the .csv file.

Supported behavior

JSON to CSV converts a single object, arrays of objects or arrays, and JSON Lines into deterministic tabular text. Column order follows first appearance across records, while missing properties produce empty fields. Nested objects can remain unflattened or use dot or bracket notation up to a chosen depth; arrays can become JSON strings, joined values, or expanded numeric indexes. Delimiter, header, null spelling, automatic or all-value quoting, line ending, and UTF-8 BOM are configurable. Values containing a delimiter, quote, or newline are correctly quoted and escaped. Spreadsheet formula-injection protection is enabled by default for cells beginning with =, +, -, or @, prefixing risky values with a single quote and explaining the change. Input and output remain entirely in your browser and are never uploaded. Flattening can create colliding column names, and CSV cannot preserve every JSON type or hierarchy, so verify the preview and retain the original JSON.

  • CSV cannot round-trip nested types, null distinctions, and arrays without an agreed encoding.
  • Flattened paths may collide with literal property names that already contain path punctuation.

Examples

                [{"name":"Ada","score":9},{"name":"Lin","score":8}]
              

Result: name,score Ada,9 Lin,8

                [{"label":"total","value":"=SUM(A1:A2)"}]
              

Result: label,value total,'=SUM(A1:A2)

Common use cases

  • Prepare JSON records for review in a spreadsheet.
  • Flatten a shallow configuration object into a tabular export.
  • Convert JSON Lines logs to deterministic CSV columns.

Frequently asked questions

How is column order decided?

The default follows each field’s first appearance across records, producing deterministic output.

Why does a cell gain a leading apostrophe?

Default formula-injection protection prefixes values beginning with =, +, -, or @ for safer spreadsheet opening.

What happens to missing properties?

They produce empty CSV fields without shifting later columns.

Can nested arrays be expanded?

Yes. Choose JSON string, a configurable join separator, or numeric-index expansion.