Excel to CSV converter
Pull a sheet out of an .xlsx as CSV or TSV, with the separator, line endings and encoding you actually need.
Drop your file here
It is processed on your device — nothing is uploaded.
Saving as CSV in Excel gives you no choices
It uses your system's list separator, your system's codepage, and the sheet that happens to be open. If you need a comma when your machine is set to semicolons, or UTF-8 when your machine is not, or the third tab rather than the first, Excel's Save As dialogue will not help you.
That matters because the thing reading the CSV usually does have requirements: a database importer wants a specific delimiter, a payment gateway wants CRLF line endings, an API wants UTF-8, and a script wants no byte-order mark at all. This gives you each of those as a separate choice.
The byte-order mark is the setting people miss
It is three invisible bytes at the start of a file that mark it as UTF-8. Excel needs them: without them it reads UTF-8 in the system codepage, and every accented or non-Latin character arrives broken. Most programming tools want them gone, because to a script that is not expecting one it is three junk characters glued to the first column name — which is why an import will fail on a header it appears to have exactly right.
So it is on by default, because most people exporting a CSV are going to open it again in a spreadsheet, and turning it off is one click when they are not.
Dates come out readable
A date in a spreadsheet is not text, it is a number — days counted since the end of 1899 — and a naive export gives you 46085 where you expected a date. Cells formatted as dates are converted to ISO form, which sorts correctly and is unambiguous in every country.
Working that out means reading the workbook's own format definitions rather than assuming the standard ones, because a spreadsheet can define its own. It also means excluding formats that merely contain a letter a date format would use, so a custom format like "Total"0.00 is not mistaken for a date on account of its t.
Sparse sheets keep their shape
An .xlsx omits empty rows and empty cells from the file completely — a row with data only in columns A and F stores two cells, not six. Reading positionally therefore shifts everything left, which silently moves values into the wrong columns.
Every cell in a spreadsheet carries its own address, so those are what get used, and the result is padded out to a proper rectangle. Nothing arrives in the wrong column.
Every sheet at once
Workbooks with a tab per month, per region or per department are the normal case, and exporting them one at a time is the tedious part. One CSV per sheet, named after the tabs, returned as a zip.
Quoting
By default a field is quoted only when it needs to be — when it contains the delimiter, a quote, a line break, or leading or trailing spaces that would otherwise be trimmed away. Quoting everything is available for readers that are strict about it, and for the case where you want a numeric-looking column to survive being opened in a spreadsheet again.
It runs in this page
Spreadsheets hold salaries, customer records, patient lists and unreleased figures. There is no good reason for any of that to cross the internet to be turned into a text file, so it does not — the workbook is unzipped and read in your browser.
Common questions
Should I keep the byte-order mark?
Keep it if the CSV is going back into Excel, or the accented and non-Latin characters will arrive broken. Turn it off for scripts and importers, which see it as junk attached to the first column name.
Why are my dates showing as numbers elsewhere?
Because a spreadsheet date is a day count, not text. Date-formatted cells are converted to ISO form here, which is unambiguous and sorts correctly.
Can I export all the sheets?
Yes — one CSV per sheet, named after the tabs and returned as a zip.
Does it read .xls files?
No. The old .xls format is not a zip and is a completely different container. Open it in Excel or LibreOffice and save as .xlsx first.
Which line endings should I choose?
CRLF is what the CSV specification says and what Windows tools expect. LF for Unix, macOS and most programming tools. If you are unsure, CRLF is read correctly by more things.
Is my spreadsheet uploaded?
No. It is unzipped and read in your browser, which is also why there is no size limit.
What happens to formulas?
You get the last calculated value, which is what the file stores alongside the formula. That is what a CSV can hold — a CSV has no concept of a formula.