1. Start with an array of records
Download the practice JSON and open the converter above. Use Choose a JSON file (optional) to load it. The file contains two fictional records:
[{"id":"00123","name":"Maya","hours":3},{"id":"00007","name":"Sam","team":"Operations"}]The outer brackets matter: the converter expects a non-empty JSON array of objects. A single object, an array of strings, or JSON Lines needs preparation first. If the source has a syntax error, check JSON syntax with the formatter.
2. Convert and compare the exact columns
Keep Column separator set to Comma (.csv) and leave Protect spreadsheet formulas enabled. Select Convert JSON to CSV. The preview should be:
id,name,hours,team
00123,Maya,3,
00007,Sam,,OperationsThe converter collects fields across every record. team gets a column even though it appears only in the second record. Missing fields and null values become empty cells. Column order follows the first appearance of each field.
3. Download and import identifier columns as text
Select Download all rows to save converted.csv. It uses UTF-8 with a byte-order mark and CRLF row endings. The preview shows only the first 10 data rows; the download contains all rows within the tool's limits.
The CSV contains the literal strings 00123 and 00007, but CSV has no column-type metadata. In the spreadsheet's text/CSV import, select a comma separator and set the id column to Text before loading. Opening the file directly may cause automatic number conversion. Compare plain identifiers with Excel text expressions when choosing an import workflow.
If the destination expects semicolons or tabs, change Column separator, convert again, and download the new result. A tab-separated download is named converted.tsv.
Nested values and formula-like text
Nested objects and arrays stay together as compact JSON in a single cell. The converter does not flatten paths or expand array items into extra rows. Formula protection prefixes text starting with spreadsheet formula characters with an apostrophe; review the preview before disabling protection for a trusted plain-data import.
Errors and limits
Use at most 5 MiB of UTF-8 input, 10,000 records, 200 columns, and 1,000,000 output cells. Empty arrays and unnamed fields need correction. Unsafe integer values are rejected: keep long identifiers quoted in the source JSON to preserve their exact digits. Duplicate object keys use the last value.
Editing the input or settings clears the previous result. Convert again before copying or downloading. Input stays in the browser; the standalone HTML also runs offline without analytics requests.