How the columns are decided
CSV is rectangular and JSON is not, so the converter takes the union of keys across every object in the array — if one record has an email field and another does not, the column still appears and the missing cell is left empty. Column order follows first appearance. Values containing commas, quotes, or line breaks are wrapped in double quotes with internal quotes doubled, per RFC 4180, so the file opens cleanly in Excel, Google Sheets, and standard CSV parsers.
What happens to nested objects
A nested object or array inside a record cannot become a flat cell honestly, so it is serialized as a JSON string in that cell — lossless, but not spreadsheet-friendly. When you want real columns like user.address.city, flatten first: run the Flatten action in the studio to convert nesting into dot-notation keys, then convert the flattened records to CSV. Each nested path becomes its own column.