Short answer: it's almost always one of three things — character encoding, the wrong delimiter for your region, or Excel guessing the wrong data type for a column. None of these mean the CSV is broken; Excel is just misreading it.

1. Character encoding (garbled accents and symbols)

CSV files don't carry information about their own encoding. If a file was saved as UTF-8 but Excel opens it assuming a different encoding, accented letters, currency symbols, and special characters turn into strange characters like é instead of é.

Fix: open the file through Excel's "Data → From Text/CSV" import, which lets you choose the file's encoding explicitly, instead of double-clicking the file directly.

2. The wrong delimiter for your region

CSV stands for comma-separated values, but not every country uses a comma as the default list separator in Excel. In many European locales, Excel expects a semicolon. If your file uses commas but your Excel is set to expect semicolons, everything piles into a single column.

Fix: use "Data → From Text/CSV" and set the delimiter manually, or convert the file with a tool that writes directly to Excel's native format instead of relying on delimiter guessing.

3. Numbers, dates, and leading zeros getting mangled

Excel tries to be helpful by auto-detecting data types per column. This backfires constantly:

This happens at the moment Excel opens the raw CSV — it's guessing column types on the fly, and there's no way to tell it "treat this column as text" before the damage is done.

The simplest fix: skip the guessing entirely

All three problems come from the same root cause: a plain CSV carries no formatting information, so Excel has to guess. Converting the file to a real .xlsx workbook first — rather than opening the raw CSV — avoids the guessing step altogether.

csvtoexcel.io does this conversion for free, directly in your browser, without uploading the file anywhere.