Turning JSON records into a spreadsheet
JSON is a tree; CSV is a grid. Converting between them means deciding what to do with everything that does not fit in a grid, and those decisions are where converters differ.
This one flattens nested objects into dotted columns, keeps arrays whole as JSON inside a cell, and builds the header from the union of all keys so records with different shapes still line up. Values are quoted per RFC 4180 — a field containing a comma, a quote or a line break is wrapped in quotes, and embedded quotes are doubled — so the output opens correctly in Excel, Google Sheets and Numbers.
Choosing a delimiter
Comma is the default and the standard. Semicolon matters in practice because Excel in many European locales, where the comma is the decimal separator, expects it — open a comma-delimited file there and every row lands in one column. Tab-separated output avoids the question entirely and is the safest choice for data full of punctuation.
To inspect or repair the JSON before converting, use the JSON formatter or validator. For XML output instead, use JSON to XML.