# Convert a file

> Map your export's columns to the Dimension Labs conversation format and download a ready file. Runs in your browser.

Use the converter when your export's columns don't match our [conversation format](/data/conversation-format): a review export, a ticket export, a survey with one column per question. Pick which column is which, and download a file in our format. **Convert and check** runs the [file checker](/data/check-a-file)'s rules on the result; if it still lists problems, drop the downloaded file into the checker to fix them.


## Tips

- **Excel files:** drop the `.xlsx` itself. The converter reads the first sheet, with the column names in row 1, and converts Excel date cells. If your data is on another sheet or under a title row, move the sheet to the front and delete the rows above the column names first.
- **Session id:** pick the ticket, chat, call, review or response id. Left empty, every row becomes its own one-message conversation, which is right only for reviews and survey answers that have no id.
- **Who wrote it:** for chats and tickets, choose **A column says who wrote it**, pick that column, and tick the values that mean the customer. The default, **Every row is from the customer**, is for reviews and survey answers only.
- **User id:** pick the customer's id. In a bot or agent conversation, the replies should carry the customer's id too. If your export puts the bot's or agent's id on their replies, leave **User id** empty: every row then gets the session id, which keeps both sides under one id. Never pick an email address, phone number or name.
- **Reviews:** one row per review, every row from the customer. Use the review id as the session id and keep the star rating as an extra column.
- **Surveys:** choose **One survey respondent per row** and select the open-ended question columns. Each respondent becomes one conversation, with each question as an outgoing message and each answer as incoming. If the row under the column names holds the question wording, set **Rows under the column names that hold question wording** to 1: the converter uses that wording as the question text and doesn't read the row as a respondent. Qualtrics exports add a second row of `{"ImportId":...}` values, so choose **2 rows (Qualtrics)** for those. Scores stay as extra columns if you tick them.
- **Dates:** the converter reads Unix seconds or milliseconds, Excel date cells, Excel serial numbers in a CSV (`45567.5`, choose **Excel serial date** as the timestamp format), ISO 8601 (`2026-01-03 09:12`, with or without an offset), and dates such as `1/3/2026 9:12 AM` or `3.1.2026 09:12` (tick **Dates are day first** when `03/01/2026` means 3 January). For dates without a zone, pick the time zone they're in. If your zone isn't in the list, or your dates use month names (`Jan 3, 2026`) or dashes (`03-01-2026`), use the [toolkit](/transform/toolkit) or [ask support](/transform#get-help-from-dimension-labs).
- **Spacing:** messages in one conversation that are less than a second apart are moved to be one second apart, in their original order.
- **Other columns:** only the columns you tick under **Keep other columns** are kept, as metadata the agent can filter and join on. Don't tick columns with personal data such as emails, phone numbers, names or addresses ([PII redaction](/data/pii-redaction)).
- **Monthly exports:** after the first conversion, **Save mapping**. Next month, load it and convert in one click, then upload the new file to the same source. Overlap with last month is fine: duplicates are removed when the file is ingested.

## What the converter doesn't do

| You need to | Use |
|---|---|
| Strip HTML, quoted replies or signatures from email and ticket bodies | [Clean ticket and email text](/transform/recipe-clean-text) |
| Skip system rows such as "Ticket closed" | The [toolkit](/transform/toolkit)'s `skip` option |
| Split a whole transcript in one cell into turns | [Split a transcript into turns](/transform/recipe-split-transcript) |
| Add owner replies to reviews as a second message | [Excel and Excel dates](/transform/recipe-excel), which shows the pattern |
| Read a sheet other than the first, or a header below row 1 | The [toolkit](/transform/toolkit) or [Excel and Excel dates](/transform/recipe-excel) |
| Read nested JSON | [Nested JSON to rows](/transform/recipe-nested-json) |
| Combine several exports | [Combine several exports](/transform/recipe-combine-exports) |

Or email **support@dimensionlabs.io**: Dimension Labs technical support can run the transformation for you ([what to send](/transform#get-help-from-dimension-labs)).
