Developer10 min readUpdated 2026-09-02

How to Convert CSV to Excel Without Breaking Your Data

Tools mentioned in this guide

Opening a CSV in Excel looks like it should be a double-click, and often it is. But a CSV is just text with commas in it — no formatting, no column types, no instructions — so Excel has to guess what everything means. When it guesses wrong it quietly damages your data: ZIP code 01234 becomes 1234, order ID 1234567890123456 becomes 1.23457E+15, product code MAR1 becomes 1-Mar.

Worse, none of it shows up as an error. The file opens, the numbers look plausible, and the corruption travels downstream.

This guide covers three ways to get a CSV into Excel and exactly how to stop each of the five things Excel breaks. If you just want a clean .xlsx without fighting the import wizard, the free CSV to Excel converter runs in your browser and writes every field as text, which is what prevents the damage.

What actually goes wrong when Excel opens a CSV

These five failures are behind almost every "Excel ruined my CSV" complaint. Knowing which one you have tells you which method to use.

What you seeWhat actually happened
Every row crammed into column AThe file uses a different separator than Excel expects — usually a semicolon where Excel wants a comma, or the reverse
01234 became 1234Excel read the ZIP code as a number, and numbers have no leading zeros
1.23457E+15Any digit string over 15 characters becomes scientific notation, and digits past the 15th are lost permanently
MAR1 became 1-MarExcel autocorrected something that merely resembled a date
José instead of JoséThe file is UTF-8 but Excel decoded it with a legacy single-byte character set

The date problem is not a small annoyance. Human gene names such as SEPT1 and MARCH1 were silently becoming dates in so many published research spreadsheets that in 2020 the HUGO Gene Nomenclature Committee renamed the genes themselves — SEPT1 to SEPTIN1, MARCH1 to MARCHF1. It was easier than stopping Excel.

Method 1: Convert the CSV to XLSX before opening it

The fastest route, and it sidesteps four of the five failures above, because the conversion happens before Excel sees the file. Each field is written as text rather than left for Excel to type.

  1. Open the CSV to Excel converter.
  2. Drag your .csv in, or click Browse Files.
  3. Check the preview of the first 10 rows. If the data is split into separate columns here, it will be correct in Excel. If it is all in one column, see the separator section below.
  4. Click Convert to Excel.
  5. Click Download Excel File — a real .xlsx with the same filename.

The separator is detected automatically, so comma, semicolon and tab-separated files all split correctly with nothing to configure. Quoted fields containing commas — "Smith, John" — stay as one cell, and accented characters survive because the file is read as UTF-8.

The conversion runs entirely in your browser. The file is never uploaded, which matters if the CSV is a customer export or a payroll run.

The trade-off, stated plainly: because every cell is written as text, your numeric columns will not do arithmetic straight away. =SUM(B2:B100) over a text column returns 0 rather than an error. That is the deliberate cost of never letting Excel reinterpret your data, and it is reversible in seconds — see Making the numbers calculate again below.

Method 2: Use Excel’s From Text/CSV import for full control

If you need Excel to treat some columns as numbers and dates from the start, use its own importer. Double-clicking gives Excel no chance to ask you anything; importing does.

  1. Start with a blank workbook. Do not open the CSV directly.
  2. Go to the Data tab and choose From Text/CSV.
  3. Select your CSV — a preview window opens.
  4. Set File Origin to 65001: Unicode (UTF-8) if accented characters look wrong.
  5. Set Delimiter explicitly — Comma, Semicolon or Tab — and watch the preview split correctly.
  6. Click Transform Data — not Load. This opens Power Query.
  7. For every column that must keep its exact characters (ZIP codes, order IDs, phone numbers), click its type icon in the header and choose Text, then Replace current.
  8. Click Close & Load.

Step 7 is the one that matters. Click Load instead of Transform Data and Power Query applies its own type detection — and you are back to losing leading zeros.

Method 3: Rename to .txt and use the Text Import Wizard

Excel's old Text Import Wizard let you mark columns as text on the way in. Modern Excel hides it for .csv but still triggers it for .txt, so renaming the file brings it back.

  1. Rename data.csv to data.txt.
  2. Choose File → Open and select the .txt file.
  3. The Text Import Wizard appears — choose Delimited, then Next.
  4. Tick the correct delimiter, confirm the preview splits properly, and click Next.
  5. In step 3, click the first column, then Shift-click the last to select all, and choose Text as the column data format.
  6. Click Finish, then save as .xlsx.

This works on every desktop Excel of the last twenty years, making it the fallback when a locked-down machine or old build gives you no Power Query.

Fixing the "everything is in column A" problem

If the whole row lands in column A, the file's separator does not match what Excel expects. Excel does not inspect the file to find out — it uses your operating system's list separator setting.

Across most of continental Europe and Latin America the decimal mark is a comma, so the list separator is a semicolon; a US export uses commas. Open one on the other and every row arrives as a single string. Three fixes:

  • Convert the file first. The CSV to Excel converter detects comma, semicolon and tab automatically, so the mismatch never arises.
  • Import instead of opening, using Method 2, and set the delimiter yourself.
  • Add a separator hint. Put sep=; on its own line at the top of the CSV — Excel reads it as an instruction and uses the delimiter you name.

Worth knowing: the sep= line is an Excel-specific convention, not part of any CSV standard. Other tools, including this site's converter, read it as an ordinary first row, so it appears as a stray row at the top of the sheet. Delete that row afterwards, or strip the line before uploading.

Stopping Excel from mangling ZIP codes, IDs and dates

Leading zeros, long IDs and date-like codes all break for one reason: Excel decided the field was a number or a date. Once that has happened and the file is saved, the original characters are gone — reformatting the cell will not bring back a stripped zero. The fix has to happen before or during the import, never after:

  • Convert to XLSX first with the CSV to Excel converter, which writes every field as text and so preserves 01234, 1234567890123456 and MAR1 exactly.
  • Or mark the columns as Text during import using Method 2 or Method 3.
  • If you control the export, add a leading apostrophe ('01234), which Excel treats as an explicit "this is text" marker and does not display in the cell.

The 15-digit limit deserves its own warning. Excel stores numbers to 15 significant digits. A 16-digit card number, a 17-digit VIN or a long transaction ID read as a number loses everything past the 15th digit and replaces it with zeros — permanently, and silently. Those fields must be text.

Fixing garbled accents and special characters

If names arrive as José, Zürich or a run of question marks, the file is UTF-8 and something decoded it as a legacy single-byte encoding. The data is intact — read wrongly, not damaged.

  • Import with the encoding set explicitly — Method 2, File Origin 65001: Unicode (UTF-8).
  • Or convert first. The converter reads UTF-8 and handles a byte order mark correctly, so accented text arrives intact.
  • If you produce the CSV, save it as "UTF-8 with BOM" — those three invisible bytes are what make Excel pick UTF-8 unprompted.

Once the text is wrong and saved from Excel in that state, the original bytes are usually unrecoverable. Go back to the source export rather than trying to repair it.

Making the numbers calculate again

Writing everything as text protects your identifiers, but it also means Excel will not add up your numbers. A text column gives itself away by alignment — the values sit on the left of the cell instead of the right — and =SUM() over it returns 0, because SUM ignores text rather than failing loudly. To turn a genuinely numeric column back:

  1. Select the column.
  2. Go to Data → Text to Columns.
  3. Click Finish immediately — nothing in the wizard needs changing. Excel re-evaluates the column and converts what is numeric into real numbers.

Alternatively type 1 in an empty cell, copy it, select your column and use Paste Special → Multiply — multiplying by one forces numeric conversion across the selection.

Do this only on real quantities — prices, counts, measurements — and deliberately leave ZIP codes, IDs and part numbers as text. That distinction is the whole point: you choose which columns are numbers instead of letting Excel guess.

CSV or XLSX — which should you keep?

Once your data is in Excel, decide which format to keep — they are not interchangeable.

 CSVXLSX
Formatting, colours, fontsNoStored
FormulasResults onlyPreserved
Multiple sheetsOne onlyUnlimited
Column typesNone — the reader guessesStored per cell
File sizeSmallestLarger, compressed
Opens anywhereAny text editorNeeds a spreadsheet app

Use CSV to move data between systems — every database, CRM and analytics tool reads it. Use XLSX for anything a human will work in, because it remembers formatting, formulas and which columns are text.

Going back is just as easy: the Excel to CSV converter flattens a spreadsheet for import elsewhere. If the data is bound for an API, CSV to JSON is usually what you actually want.

Tips for working with CSV files in Excel

  • Keep the original CSV. Never let Excel overwrite it — every failure above is irreversible once saved, so you want an untouched copy to retry from.
  • Check three cells before trusting the sheet: the longest ID, one value starting with zero, one accented name. Those catch nearly every silent corruption.
  • Watch the alignment. Excel right-aligns numbers and left-aligns text. ZIP codes sitting on the right were read as numbers.
  • Turn off autocorrect for one-off imports under File → Options → Proofing → AutoCorrect Options — untick Replace text as you type to stop codes being rewritten as you edit.
  • Merging several exports? Combine them first with the CSV Merge tool rather than pasting sheets together by hand.
  • Comparing two versions of an export? Run both through the Diff Checker to see which rows changed.
  • Above ~100,000 rows, prefer Power Query (Method 2) — it streams instead of loading everything into memory.

Frequently asked questions

Why does Excel change my numbers when I open a CSV?
Because a CSV stores no type information. Every field is plain text, so Excel guesses what each one means — and it guesses "number" or "date" aggressively. Anything numeric-looking loses leading zeros, anything over 15 digits becomes scientific notation, and anything shaped like 3-4 or MAR1 becomes a date. Converting to XLSX first with the CSV to Excel converter, or marking columns as Text on import, prevents the guess.
How do I convert a CSV to Excel without losing leading zeros?
Do not double-click the file. Either convert it to .xlsx first with the CSV to Excel converter, which writes every field as text so 01234 stays 01234, or use Data → From Text/CSV and set the affected columns to Text before loading. Reformatting after the zeros are gone does not restore them — the characters have left the file.
Why is my whole CSV in one column?
Its separator does not match the one Excel expects for your region — usually a semicolon file opened on a comma system, or the reverse. Convert it with a tool that detects the separator automatically, or import with Data → From Text/CSV and choose the delimiter yourself.
Is CSV to Excel conversion safe for confidential data?
It depends entirely on the tool — many online converters upload your file to a server. FileNaut's CSV to Excel converter runs in your browser, so the file never leaves your device and nothing is transmitted or stored. For customer lists or payroll exports, confirm this before using any converter.
Why do my numbers not add up after converting to Excel?
If every field was written as text to protect your identifiers, numeric columns are text too, and =SUM() silently returns 0 because it ignores text. Select the column, choose Data → Text to Columns and click Finish. Only for genuine quantities — leave IDs and ZIP codes as text.
What is the difference between CSV and XLSX?
A CSV is plain text containing only values and separators — no formatting, no formulas, no column types, one sheet. An XLSX is a compressed workbook storing formatting, formulas, multiple sheets and the type of every cell. Use CSV to move data between systems, XLSX for anything people work in.
Can I convert CSV to Excel on a Mac?
Yes. Excel for Mac has Data → From Text/CSV and works like the Windows version, though some builds ship a reduced Power Query editor. The CSV to Excel converter behaves identically on macOS, Windows, Linux, iPad and Android, since it runs in the browser.
How do I convert Excel back to CSV?
Use File → Save As and choose CSV UTF-8 (Comma delimited) — the UTF-8 variant, so accented characters survive. Only the active sheet is saved and all formatting and formulas are discarded. The Excel to CSV converter does the same in your browser.
Does converting a CSV to Excel change the original file?
No. Both the converter and Excel's import create a new .xlsx and leave the source .csv untouched. The risk is only if you open the CSV in Excel and save over it — then any mangled values are written back to the original. Keep an unmodified copy until you have confirmed the import.
What file types can I convert besides CSV?
The CSV to Excel converter accepts .csv specifically. For tab-separated or other delimited text, change the extension to .csv first — the separator is detected automatically, so a renamed tab-delimited file still splits correctly. For structured data, JSON to CSV and CSV to JSON go both ways.

The short version

Excel is not corrupting your CSV out of malice — it is filling in type information the format never carried. The fix, every time, is making that decision explicit instead of leaving it to a guess.

To handle it without configuring anything, run the file through the CSV to Excel converter: it detects the separator, reads UTF-8, and writes every field as text so nothing is silently rewritten. Then convert your number columns back with Text to Columns. Two steps, no lost ZIP codes.

Ready to try it?

Use the tool right now — free, no signup, no upload.