File picking and downloads often fail inside apps. Open this page in your default browser (Chrome, Safari) or on a computer.
Excel to CSV Converter
Drop in a spreadsheet to get CSV, or a CSV to get an Excel workbook. Encoding and delimiters are handled so accents and symbols survive the trip, and you can preview the first rows before downloading. Customer lists and sales data are never sent to a server — the conversion runs in your browser.
Choose a file and the converted download and a preview appear here.
How to convert between Excel and CSV
- Choose a spreadsheet (xlsx, xls, xlsb, ods) or a delimited text file (csv, tsv, txt). The direction is detected from the file's contents.
- For a workbook, pick the sheet, delimiter and encoding. A CSV holds one sheet, so export each sheet separately.
- For a CSV, encoding and delimiter are detected automatically. If the preview shows odd characters, choose the encoding yourself.
- Check the preview and press Download. Changing an option rebuilds the result instantly.
Excel → CSV writes the values as displayed, just like Excel's "Save As CSV": dates and thousands separators keep their formatting, formulas become their calculated results, and styles, charts and images are dropped because CSV cannot hold them. Moving the data into code? The JSON formatter helps you tidy the JSON on the other side.
Why Excel shows "café" — the UTF-8 BOM
A CSV file is plain text with no label saying which character encoding it uses. When you double-click a CSV, Excel for Windows assumes your system's legacy code page (Windows-1252 in the US and Western Europe), so a UTF-8 file containing café or € opens as café and €.
| Saved as | Excel (double-click) | Code, databases, Google Sheets |
|---|---|---|
| UTF-8 with BOM (default) | Correct | Mostly correct; a few tools show an invisible character before the first header |
| UTF-8 without BOM | Accents and symbols garbled | Correct (the recommended standard) |
| Windows-1252 | Correct | Often garbled; no emoji or non-Latin scripts |
The BOM (byte order mark) is three bytes, EF BB BF, at the very start of the file that tell Excel "this is UTF-8". Keep it for files people will open in Excel; drop it for files that feed scripts, APIs or databases.
How values are handled when CSV becomes Excel
- Leading zeros survive: ZIP codes (
02134), product codes (00123) and phone numbers stay as text instead of losing their zeros. - Long numbers survive: Excel numbers are exact to 15 digits, so credit-card-length numbers and order IDs of 16+ digits stay as text rather than ending in zeros.
- Thousands separators and dates:
1,234,000becomes the number 1234000 with a comma format, and2026-10-19or2026/10/19becomes a real date, so sums and sorting work. Turn the option off to keep every value as text. - Encoding detection: a BOM is honoured; otherwise the file is checked for valid UTF-8 and falls back to Windows-1252. Pick Shift_JIS or EUC-KR for Japanese or Korean legacy exports.
- No formula injection: values starting with
=are stored as text, so formulas hidden in an untrusted CSV never run in Excel.
FAQ
Is my spreadsheet uploaded?
No. Files are never sent to a server; they are read and converted in your browser. The only download is the spreadsheet library itself (SheetJS, about 300 KB) from SheetJS's official CDN, once.
Can it open password-protected workbooks?
No. Remove the password in Excel (File → Info → Protect Workbook), save, and try again.
When should I use semicolons?
In countries that write decimals with a comma (Germany, France, much of Europe and Latin America), Excel expects semicolon-separated CSV. US and UK Excel use commas. If your data is full of commas, tab-separated (TSV) avoids quoting altogether.
Sources
- Common Format and MIME Type for CSV Files: RFC 4180
- Spreadsheet parsing and writing: SheetJS documentation
Found this useful? Share it
Only the page link is shared. Your inputs and files are never included.