How to Convert CSV to Excel (and Keep Leading Zeros and Numbers Intact)
Open a CSV of customer data in Excel and watch it "help": PIN code 040001 becomes 40001, a 16-digit card reference turns into 4.53E+15, and a product code like 1-12 becomes 12 January. Every operations person has a story. CSV to Excel builds a proper .xlsx where numbers are numbers and everything that should stay text stays text. It also goes the other way, from a workbook sheet back to CSV.
Steps
- Open a CSV or .xlsx file, or paste CSV text.
- For a CSV, set the sheet name. For a workbook with several sheets, choose one.
- Press Download .xlsx or Download CSV.
What it does differently from double-clicking a CSV
The download is a genuine Office Open XML workbook, a ZIP of SpreadsheetML that Excel, Google Sheets and LibreOffice all open. The conversion is careful about types:
- Plain numbers become numbers, so SUM and sorting work.
- Leading zeros are kept. Postcodes, PIN codes, employee IDs and phone numbers starting with 0 arrive intact, stored as text.
- Long numbers that aren't safe as numbers stay text, so account numbers and IDs keep every digit.
- Anything starting with
=stays text. That blocks CSV formula injection, where a malicious cell like=HYPERLINK(...)would otherwise run when opened.
Going from .xlsx to CSV
Drop an .xlsx or .xlsm file and the page reads every sheet. Pick one and download it as CSV. Dates that Excel stored with a date format come out as YYYY-MM-DD, the least ambiguous way to write a date. A number without a date format stays a number.
Old binary .xls files from Excel 2003 are a different format entirely. Save them as .xlsx in Excel or LibreOffice first.
Example: a CRM export
Your CRM exports 8,000 leads as CSV: name, phone (with leading 0s), PIN code, a 14-digit lead ID, and a created date. Converted here, the phone and PIN keep their zeros, the lead ID keeps all 14 digits, and a sales manager can open the .xlsx and sort or filter without anyone re-entering data. When you need to re-import an edited sheet into another system, convert it back to CSV here so the importer gets clean, predictable values.
Limits and tips
- An Excel sheet holds up to 1,048,576 rows. Bigger files need splitting or a database.
- If a column should be numeric but contains stray text (like "N/A"), Excel will treat those cells as text. Clean them first.
- For CSVs with semicolons as separators (common in European exports), check the preview to make sure columns split correctly.
- Name the sheet meaningfully. "Leads_Oct2026" beats "Sheet1" when the file gets forwarded around.
- For contacts specifically, VCF to CSV handles phone address-book formats.
Why Excel mangles CSVs in the first place
A CSV has no types: every cell is just text between commas. When Excel opens one directly, it guesses each cell's type, and its guesses favour numbers and dates. So 040001 looks like a number (drop the zero), 4530123456789012 looks like a big number (switch to scientific notation and lose the last digits), and 1-12 looks like a date. Building the workbook deliberately, with types decided per cell, sidesteps the guessing entirely.
Privacy
According to the page, the workbook is built in the tab and cleared when you close it, which is reassuring for exports full of customer phone numbers. Google ads appear on the page, as across the site.
FAQ
Will Excel open it? Yes, it's a standard .xlsx that Excel, Sheets and LibreOffice open.
Why is a phone number stored as text? So leading zeros and long digit strings survive.
Can I convert several sheets? Pick one sheet at a time from the workbook and download it as CSV.
Is .xls supported? Re-save it as .xlsx first.
Before the next CSV loses its zeros, run it through CSV to Excel.
— Alok Kumar Singh