The CSV versus JSON question comes up on every dataset project, and the honest answer is that it depends on how flat your data is and who is consuming it.
CSV: simple, flat, universal
CSV is the right choice for tabular data with a fixed set of fields per row. It opens in any spreadsheet tool, imports cleanly into most databases, and is the format non-technical stakeholders expect.
JSON: nested, flexible, code-friendly
JSON handles nested structures CSV cannot represent cleanly... a business with multiple locations, a dataset record with an array of tags, or a schema that varies slightly between records. It is also the format most application code and APIs expect natively.
Where each one breaks
Force nested data into CSV and you end up with repeated rows or delimiter-stuffed cells that are painful to parse. Force simple flat data into JSON and you add unnecessary verbosity for no structural benefit.
The practical default
Most dataset products benefit from shipping both: CSV for the flat, spreadsheet-ready view, and JSON for the structured, pipeline-ready view of the same underlying records. The small extra effort to export both formats pays for itself in fewer support questions from buyers using a format you did not anticipate.