A CSV with line breaks inside quoted fields
A memo, a note or an address typed over several lines ends up in an export as one field in double quotes with line breaks inside it. A tool that splits the file line by line then sees several broken rows where there is one transaction. Choose the file below: the page works in your browser, reads each quoted field as one value, shows the first 20 cleaned rows and lists every line it left out, with the reason.
Clean your CSV export
The cleaner detects the delimiter (comma, semicolon or tab), looks for a header row with a date column and an amount column, and writes eight fixed columns, comma-delimited: date, description, amount, currency, fee, net, reference and source. It recognises common header names in English, Spanish, German and French, such as Date, Fecha, Buchungstag, Amount, Importe, Betrag and Montant.
Your file is read in your browser and is never uploaded, stored or logged. It is held in the memory of this tab only, and closing or reloading the page discards it. Operator: Augeo. See the privacy notice.
Exports do not share one layout, and this page makes no promise about yours: the free preview shows what it does to your file.
The cleaning logic is checked by an automated test script that runs the engine file of this site over six synthetic sample files and a set of checks of the parsing rules; it ran in a sandbox before this site was published and finished with no failed check. The script does not open this page in a browser, does not test the licence key step, and nothing was tested against a real export from any provider. Use the free preview to check your own file.
Report
Warnings
Lines not parsed
Lines dropped
Preview of the cleaned rows
| line | date | description | amount | currency | fee | net | reference | source |
|---|
Download the full cleaned file
- Price: 6 USD, paid once on Gumroad. No subscription. You receive a licence key.
- What the key unlocks: the download of every cleaned row of the file you chose, as one CSV named after your file with -cleaned.csv at the end, instead of the first 20 rows on screen. The report and the way files are read stay the same.
- The key is for one buyer. Runs are not counted and no number of runs is promised. The key is kept in the memory of this page only, so you enter it again after closing or reloading the page.
- Refunds are requested through your Gumroad receipt and follow Gumroad's refund policy.
- Try the free preview first. If the preview cannot read your file, the full download cannot either.
Get a licence key on Gumroad for 6 USD
How line breaks inside quoted fields are read
- A line break inside double quotes belongs to the field. The cleaner reads the file character by character, and between an opening and a closing double quote a line break does not end the row. A transaction spread over three lines of the file is read as one row.
- A delimiter inside double quotes belongs to the field too. A comma, a semicolon or a tab between the quotes does not start a new column.
- Two double quotes in a row inside a quoted field are read as one double quote character.
- A double quote opens a quoted field only at the start of a field. Spaces before it are dropped. A double quote in the middle of an unquoted value, as in
12" shelf, is kept as an ordinary character. - The output has one line per transaction. In the description and reference columns each run of white space, line breaks included, is written as a single space.
- Line numbers refer to the line where a row starts. The numbers in the preview and in the lists of lines left out match what a text editor shows, also after a row that spans several lines.
- A quote that is never closed is reported. When a quoted field is still open at the end of the file, a warning says the last record may be incomplete. Everything after the stray quote was read as one field, so look for the first row that seems wrong and at the quote before it.
- The delimiter is detected with the same reading rules, so a line break inside quotes is not counted as a new row there either.
In the lists of lines left out, the text of a line is shown with its white space collapsed to single spaces and is cut after 200 characters.
The output is always the same eight columns (date, description, amount, currency, fee, net, reference and source), comma-delimited. A multi-line field in any other column of your file is read as one value, so the columns stay aligned, but that column is not carried over. This is a cleaner for files of transactions and not a general CSV editor.
In a spreadsheet instead: import a copy of the file through the import dialog with the double quote set as the text delimiter, replace the line breaks in the column with spaces using find and replace, and save as CSV.
Notices
- Privacy: files are read in your browser and never uploaded, stored or logged. Operator: Augeo.
- Independent tool, not affiliated with or endorsed by Etsy, PayPal, QuickBooks or any bank.
- Check the output before you use it. This is not accounting, tax or financial advice.
- Price of the full download: 6 USD one-time. The key is for one buyer. Refunds are requested through the Gumroad receipt.
- Only upload data you have the right to process. Choosing a file here does not send it anywhere, but you remain responsible for the data in it.
Other pages
- Convert a tab-delimited file to a comma CSV
- Convert a semicolon CSV to a comma CSV
- Remove the lines above the header of a CSV
- Remove total and footer lines from a bank CSV
- Convert decimal commas to decimal points in a CSV
- Fix DD/MM and MM/DD dates in a CSV
- Gross, Fee and Net columns of a PayPal CSV
- Convert CSV dates to YYYY-MM-DD
- Remove duplicate rows from a CSV export
- Negative amounts in parentheses in a CSV
- Fix date and decimal format in a bank CSV
- Merge debit and credit columns into one amount
- Any other CSV export of transactions