Other ways to convert JSON to CSV
- 1
Python pandas
import pandas as pd, json; pd.json_normalize(json.load(open('input.json'))).to_csv('output.csv', index=False). json_normalize turns nested objects into dotted column names such as address.city.
- 2
jq (command line)
For an array of flat objects: jq -r '(.[0] | keys_unsorted) as $k | $k, (.[] | [.[$k[]]]) | @csv' input.json > output.csv. It takes the column names from the first object.
- 3
Excel for Windows (Power Query)
Data → Get Data → From File → From JSON, then click To Table and expand the record columns with the button in the column header. Load the result and save it as CSV.
- 4
Decide what to do with lists
Arrays inside objects, such as a list of tags, have no natural CSV form. Decide whether you want them joined into one cell or split into separate rows before you convert.
Why convert JSON to CSV?
JSON describes structure; CSV describes data. The conversion is a declaration of intent: you've finished exploring the API and are ready to analyze the data. Everything downstream from that decision speaks CSV.
Frequently asked questions
How do I convert JSON to CSV with Python?
How do I handle nested JSON objects in CSV conversion?
Can jq convert JSON to CSV?
No account. No upload. Works in any browser.