All articles

QuickBooks CSV Import Not Working: 8 Fixes

5 min read CSVQBO Team
csv / xls / xlsx → .qbo
No file handy?

No account needed for your first conversions. We never store your bank login.

Short answer: A QuickBooks CSV import almost always fails for a format reason, not a data reason. The eight usual culprits are wrong columns, a bad header row, mixed date formats, amounts stored as text, a file over 350 KB, more than 1,000 rows, non-English characters, and importing into the wrong account. Fix the layout to match the 3 or 4 column template and the same file uploads cleanly.

QuickBooks Online reads a bank CSV strictly. It checks the first data row, guesses the structure, and applies that guess to the whole file, so one inconsistent cell can break the entire upload or post garbage. This guide walks through each failure in order, from most to least common, with the exact fix. Last updated July 2026.

Why won't QuickBooks import my CSV file?

QuickBooks refuses a CSV when the file does not match one of its two accepted layouts. It expects a 3-column file (Date, Description, Amount) or a 4-column file (Date, Description, Credit, Debit), a single header row, one consistent date format, English text, and a file no larger than 350 KB or 1,000 rows. Any deviation triggers an error or a silent mispost.

Work through the checklist below in order. Most people find the problem in the first three items. If you would rather skip the formatting entirely, converting the export to a .qbo bypasses every one of these checks, which we cover at the end.

#SymptomCauseFix
1"We couldn't read the file"Wrong or extra columnsReduce to 3 or 4 columns
2First transaction missingHeader row wrongKeep one clean header row
3Dates all wrongMixed date formatsForce one format
4Amounts blank or zeroNumbers stored as textConvert to number
5Upload rejectedFile over 350 KBSplit the file
6Only part importsOver 1,000 rowsSplit by month
7Garbled charactersNon-English textSave as UTF-8, English
8Signs reversedWrong account chosenMatch the account type

1. The columns do not match

QuickBooks accepts only two column layouts, and bank exports rarely match either out of the box. Delete every column except Date, Description, and Amount (or Date, Description, Credit, Debit). Extra columns like balance, check number, or category cause the reader to fail. Rename the headers to those exact labels so the mapping step lines up.

2. The header row is wrong

A CSV needs exactly one header row at the top. Bank exports often include title rows, account summaries, or a blank line above the headers, which pushes QuickBooks to treat your first real transaction as a label. Delete everything above the header, keep a single row of column names, and make sure no summary or total row sits at the bottom.

3. Date formats are mixed

This is the quietest failure. QuickBooks locks onto the format of the first date and applies it to all rows, so a file that mixes 01/02/2026 and 2026-02-01 posts wrong dates without any error. Force a single format across the whole column in your spreadsheet. The QuickBooks CSV import date format guide shows the exact Excel TEXT() formula to standardize dates in one step.

4. Amounts are stored as text

If your amounts came from a PDF conversion or a copy-paste, they may be text strings rather than numbers, so QuickBooks reads them as blank or zero. Currency symbols, thousands separators, and trailing spaces all cause this. Strip the symbols, remove commas, and reformat the column as a number. A quick test: if the values sit left-aligned in Excel, they are text.

5. The file is over 350 KB

QuickBooks Online rejects any bank file larger than 350 KB, and this applies to .qbo, .qfx, and .ofx uploads too, not just CSV. A year of detailed activity easily crosses that line. Split the export into smaller files, usually by month, or convert to a .qbo and import through Desktop, which has no size cap. The QuickBooks CSV import limit guide explains why a .qbo does not raise the QBO cap.

6. There are more than 1,000 rows

Each CSV upload is capped at 1,000 transactions. Past that, QuickBooks Online imports a partial file or fails. Split the data into monthly chunks that each stay under 1,000 rows and 350 KB. If you routinely import large histories, converting the full export to a single .qbo and loading it into QuickBooks Desktop avoids the split work entirely.

7. The file has non-English characters

QuickBooks Online expects English and standard characters. Accented letters, currency symbols other than the dollar, and text saved in a non-UTF-8 encoding show up garbled or halt the import. Save the file as CSV UTF-8 and replace any non-English descriptions. If your bank statement arrived as a locked PDF, you can turn the PDF statement into a clean spreadsheet first, then format it for QuickBooks.

8. You picked the wrong account

If every amount imports with the sign reversed, you likely uploaded a credit card file into a checking account or the reverse. Charges and payments read backward across account types. Delete the imported batch, then re-upload the file into the correct account so debits and credits post the right direction.

The fix that skips all eight problems

Every issue above comes from CSV being a loose, human-editable format. A .qbo Web Connect file is structured and self-describing, so it survives the format checks that break CSV uploads and it carries a unique transaction ID that blocks duplicate imports. Upload your CSV or Excel export to our CSV to QBO converter, map the columns once, and download a file QuickBooks reads natively. If you want to understand the accepted CSV layout in full first, the QuickBooks CSV import template lays out both formats side by side.

Fixing the format by hand works for a one-off. If bank imports are a monthly task across several accounts, converting to .qbo turns a fragile, error-prone upload into a clean two-minute job.

Convert your CSV to QBO now

Upload your CSV or Excel statement, map the columns, and download a QuickBooks ready QBO file in seconds.

Start converting

From the same family of tools