CSV rows in versus rows out: a count check for a cleaned export
When a tool cleans a file, the question is what happened to the rows that are not in the result. Choose the file below: the page works in your browser, shows the first 20 cleaned rows, and ends its report with a count check for your file. Every line it left out is listed with its line number and 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 the count check works
| Line | In the file | In the report |
|---|---|---|
| 1 | Date,Description,Amount | Header row: line 1 |
| 2 | 2024-01-02,Coffee,-3.50 | cleaned row |
| 3 | 2024-01-03,Refund,pending | Line 3: amount is not a number: "pending" |
| 4 | 2024-01-02,Coffee,-3.50 | Line 4: exact copy of line 2 |
| 5 | 2024-01-05,Books,-20.00 | cleaned row |
| 6 | Total,,-23.50 | Line 6: footer line, date not recognised: "Total" |
For the six lines above, the report ends with: Count check: rows in (5) = rows out (2) + duplicates dropped (1) + footer lines (1) + not parsed (1).
- Rows in are the data rows after the header row. The header, blank lines, repeated header rows and lines above the header are not rows in; the report counts them on lines of their own.
- Rows out are the rows of the cleaned file. The preview shows the first 20; the count is for the whole file.
- Duplicates dropped are exact copies of an earlier row, every cell equal. Each is listed with the line of the copy that was kept. Two identical rows can be two real transactions, so look at that list.
- Footer lines are lines with no readable date that come after the last readable row, such as totals and closing balances.
- Not parsed covers every other row whose date or amount could not be read. Reasons include: date is empty, date not recognised, amount is empty, amount is not a number, debit and credit are both empty, and fee or net is not a number.
- Each listed line shows its line number in your file, the reason and the text found, cut at 200 characters.
- Nothing is turned into zero and nothing is guessed. A row is in the output or in one of the lists.
The check is arithmetic on the counts of your own file. The automated test script asserts it on each of its six synthetic sample files. It says where every row went; it does not say that the amounts are right, so read the preview.
The dropped and not-parsed lines are shown on screen in the free preview, not only after a purchase.
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
- Fix date and decimal format in a bank CSV
- Convert a semicolon CSV to a comma CSV
- Negative amounts in parentheses in a CSV
- Fix DD/MM and MM/DD dates in a CSV
- Convert a tab-delimited file to a comma CSV
- Remove total and footer lines from a bank CSV
- Line breaks inside quoted fields of a CSV
- Gross, Fee and Net columns of a PayPal CSV
- Remove the lines above the header of a CSV
- Convert CSV dates to YYYY-MM-DD
- Remove duplicate rows from a CSV export
- Merge debit and credit columns into one amount
- Any other CSV export of transactions