Why a CSV file opens wrong in Excel, and how to fix it
Everything in column A. Accents turned into strange symbols. Zip codes missing their first zero. A CSV is simple text — the problems come from how Excel guesses what that text means.
Updated · 4 min read
CSV means “comma-separated values”: a plain text file where each line is a row and a separator marks the columns. It is the most common way systems exchange tables, and it has no settings of its own — no encoding label, no column types, no agreed separator. When you double-click a CSV, Excel guesses all of those. Most problems are wrong guesses.
Problem 1: everything lands in one column
Excel splits columns using your computer’s regional list separator. In the United States that is a comma. In Brazil, Portugal, Spain and much of Europe, where the comma is the decimal separator, it is a semicolon. A file exported with commas opens perfectly in New York and as a single column in São Paulo — and the other way round.
Fix: instead of double-clicking, use Data → From Text/CSV in Excel and choose the delimiter explicitly. Or convert the CSV into a real .xlsx file, which stores the columns and has nothing left to guess.
Problem 2: accents become strange symbols
If “São Paulo” appears as “São Paulo”, the file is in UTF-8 and Excel read it as an older Windows encoding (Windows-1252). The opposite happens too: files exported by older business software are often Windows-1252, and tools expecting UTF-8 show diamonds with question marks.
Fix: in From Text/CSV, set File origin to 65001: Unicode (UTF-8). When producing CSVs for Excel users, save as “CSV UTF-8”, which adds a small marker at the start of the file that tells Excel the encoding.
Problem 3: leading zeros disappear
Postal codes, product codes, employee IDs and tax numbers often start with zeros. Excel sees 00123, decides it is the number 123, and the zeros are gone — silently, and permanently once you save.
Fix: import the column as Text instead of letting Excel choose. Never re-save a CSV you opened by double-click if it contains codes: the damage is written back to the file.
Problem 4: long numbers turn into 1.23E+15
Excel keeps only 15 significant digits. Card numbers, barcodes, invoice keys and bank references longer than that are shown in scientific notation, and the digits after the fifteenth are replaced with zeros. This is not a display issue: the data is lost.
Fix: the same as above — these are identifiers, not quantities, and must be imported as text.
Problem 5: day and month swap
Is 03/04/2026 the 3rd of April or the 4th of March? Excel decides using your regional settings. Dates that cannot be valid in its format (such as 25/12/2026 on a US system) stay as text, while those that can are silently swapped — so the same column ends up with a mix.
Fix: import the column with the correct date format chosen explicitly, or ask for dates in the unambiguous ISO form, 2026-04-03.
Merging CSVs from several months
When you combine monthly exports into one table, the same problems multiply. Before merging, check that:
- every file has the same header, in the same order — systems sometimes add or rename a column;
- all files use the same separator and encoding;
- you keep only one header row in the result;
- a column with the file name or month is added, so you can still tell the rows apart.
A merge tool that matches columns by name rather than by position avoids the most common mistake: a new column in March that shifts every value one place to the right.
Convert CSV to Excel with the right columns and encoding
Try it nowFrequently asked questions
What is the difference between CSV and XLSX?
A CSV is plain text with one table and no formatting, types or encoding information. An XLSX is an Excel workbook: it stores several sheets, column types, formulas and formatting, and opens the same way on every computer.
My system only exports CSV. How do I give Excel users a clean file?
Convert the CSV to XLSX once, choosing the delimiter and encoding explicitly and keeping code columns as text. The XLSX can then be shared without anyone running into the problems above.
Why does the same CSV look fine on a colleague’s computer?
Because Excel uses each computer’s regional settings to guess the separator and the date format. Two computers set to different regions read the same file differently.
Can I fix a CSV that already lost its leading zeros?
Only if you still have the original export. Once a file is re-saved without the zeros, the information is gone. Export again from the source system.