CSV File Won't Import? 6 Common Causes and How to Fix Them
You got a CSV from a client, a vendor, or a spreadsheet export. You try to import it — into your invoicing tool, CRM, email platform, or database — and it fails, or worse, it "succeeds" with scrambled data. Before you retype anything by hand, run through this checklist. One of these six is almost always the culprit.
1. Blank rows scattered through the file
Empty lines shift row alignment or cause "unexpected end of data" errors.
Fix: delete empty rows — here's how in Excel, Sheets, or Python.
2. Headers with spaces or special characters
" Client Name " or "Invoice Total ($)" — many importers expect simple column names and choke on these.
Fix: normalize headers to snake_case — step-by-step guide.
3. Wrong text encoding
Accented characters showing as é or ’ means the file isn't UTF-8. Some importers reject the file outright; others import mojibake.
Fix: convert to UTF-8 — four methods.
4. Inconsistent number of columns
Some rows have 5 values, others have 4 or 6 — often from unquoted commas inside fields (Acme, Inc. without quotes splits into two columns).
Fix: open in a spreadsheet, find the ragged rows, and either quote the fields containing commas or remove the stray commas. Re-export carefully.
5. A BOM (byte order mark) at the start
Some Windows programs save UTF-8 with an invisible 3-byte marker at the start. Your first header then reads as "client_name" — with a hidden character that breaks column matching.
Fix: re-save as "UTF-8 without BOM" (Notepad++: Encoding → Convert to UTF-8 without BOM), or in Python open with encoding='utf-8-sig', which strips it.
6. Wrong delimiter
European exports often use semicolons instead of commas. If everything lands in one column, this is why.
Fix: in Excel use Data → From Text/CSV and set the delimiter manually; most importers also have a delimiter setting.
Fix them all at once
Causes 1, 2, and 3 cover the vast majority of broken CSVs — and CSV Cleaner fixes all three in one click: blank rows removed, headers normalized, encoding converted to UTF-8. $9 once, yours forever.
See CSV CleanerMore CSV fixes: remove blank rows · fix headers with spaces · convert to UTF-8