How to convert a CSV file to Excel
- Choose your CSV files. One or several CSV, TSV or TXT files, from any program: a bank, a shop, a CRM, a database export.
- Check the preview. The encoding, delimiter, decimal separator and date order are detected automatically. If a column looks wrong, change the option and the preview updates at once.
- Decide what stays text. Columns with leading zeros, long IDs or codes that look like dates are protected. Click any column type to force it to text.
- Convert and download. You get an .xlsx with real numbers and dates, sensible column widths and a filter on the header row. Several files go into one workbook or a zip.
Private by design: no upload
The conversion runs on your own device, in a background thread of your browser. There is no server that receives your files: the page only loads its own code and the open-source SheetJS library from this site. You can check it in the Network tab of your browser's developer tools.
That matters for the files people usually convert: bank statements, customer lists, payroll and sales exports.
Why does a CSV open in one column in Excel?
A CSV is plain text, and nothing inside it says which character separates the columns. When you double-click it, Excel uses the list separator from your computer's regional settings. In the United States, the United Kingdom and other countries that write decimals with a point, that separator is a comma. In Spain, Germany, France, Italy, the Netherlands, Brazil, most of Latin America and many other places the decimal separator is a comma, so the list separator becomes a semicolon.
The result is the classic problem: a comma-separated file opened with European settings shows every row squeezed into column A, with the commas still visible. A semicolon file opened in a US copy of Excel does the same. Files exported by European software often use semicolons, while web services usually use commas, so the mismatch is everywhere.
You can work around it inside Excel with Data › From Text/CSV and choosing the delimiter by hand, by adding a first line that reads sep=,, or by changing the list separator in the Windows regional settings (which affects every program). Converting the file to .xlsx fixes it permanently: an .xlsx stores each cell separately, so it opens the same way in every country and every version of Excel.
Accents, decimals and dates that go wrong
- Broken accents“José” shows as “José” because Excel reads a UTF-8 file without a BOM as Windows-1252. The converter detects UTF-8, UTF-16 and Windows-1252 for you.
- Decimal comma“3,5” stays as text in US Excel, and a value of 1.234 becomes 1234 in Spanish or German Excel. The tool reads numbers with the file's own convention and writes real numbers.
- Swapped dates“04/05/2024” can be April 5 or May 4. Dates are read with the order found in your data, which you can change, and stored as true Excel dates.
- Lost zeros and digitsPostcodes like 02134 lose their zero and 16-digit numbers end in 0. Those columns are kept as text cells automatically.
What exactly this converter does
- Encoding: it reads the byte order mark (BOM) if there is one, recognises UTF-16 without BOM, checks whether the bytes are valid UTF-8 and otherwise falls back to Windows-1252 (Latin-1). You can also pick ISO-8859-15, Windows-1250, Windows-1251 or Mac Roman.
- Delimiter: it compares comma, semicolon, tab and pipe over the first rows, taking quoted fields into account, and honours a
sep= line.
- Values: numbers such as 1,234.50, 1.234,50, 1 234,50 and 12,5 % become numbers; ISO dates and dates in the detected order become dates. Text with a leading + or =, scientific notation such as 1E5 and anything ambiguous stays text.
- Layout: one sheet per file, named after the file (31 characters at most, no duplicates), columns sized to their content and a filter on the header row.
If you only need to protect IDs, phone numbers or gene names, the CSV to Excel without losing leading zeros tool lists every risky column with examples first. If the accents are already broken inside the file, fix the CSV encoding first. To go the other way, use Excel to CSV.
Known limitations
- Formatting such as bold headers, colours or frozen panes is not added; the file contains data, number formats, column widths and a header filter.
- Times without a date (for example 14:30) and currency symbols stay as text.
- Everything happens in memory. Very large files (several hundred MB) can exhaust the browser's memory, especially on phones.
- Excel allows 1,048,576 rows per sheet and 32,767 characters per cell. Longer files continue on extra sheets, and longer cells are cut (you will see a notice).
- Encoding detection cannot tell apart single-byte encodings such as Windows-1252 and Windows-1250 with certainty. If letters look wrong in the preview, choose the encoding by hand.