CSV to XLSX
Turn a CSV file into an XLSX workbook that Excel opens without guessing
Your files stay with you. Conversion happens inside the browser; no file is ever uploaded to a server.
Did this tool do the job?
Thanks, your feedback came through.
How it works
Choose one or more CSV files, check the two settings and press Convert; each file comes back as a separate .xlsx that you download from the list. The delimiter is worked out from the file itself by counting semicolons, commas and tabs outside quoted fields and preferring the candidate that occurs the same number of times on every line, so a comma inside an address is not mistaken for a separator. Quoted fields follow the RFC 4180 rules, which means a separator or a line break inside quotes stays part of the value. The point of the conversion is that an XLSX records the type of every cell inside the file, leaving Excel nothing to guess at: any value with a leading zero and any run of more than 15 digits is written as a text cell on purpose, which is how phone numbers, postal codes and long account or ID numbers survive intact. Empty cells keep their position, so columns never shift. The result line reports the size of the sheet and how many cells became numbers. Nothing is uploaded — the workbook is assembled on your own device.
This tool is also known as csv to excel, csv to xlsx, convert csv to excel, csv to xlsx converter, open csv in excel.
What is CSV?
A CSV file is a plain text table: one line per row, one delimiter character between the cells, and nothing else. What makes it awkward is everything it does not contain — the file never states which character encoding it uses, which character separates the columns, or whether a given cell is meant to be a number, a date or a label. Every program that opens one has to guess all three, which is why the same file can look perfectly correct in one application and scrambled in another.
What is XLSX?
XLSX has been Excel's workbook format since 2007. It looks like one document but it is really a ZIP archive: rename it to .zip and you find XML parts for the sheet, the cell values and the number formats, each declared explicitly. Because the type of every cell is written down inside the file, nothing is left to be guessed at opening time, and the text is always Unicode, so accented and non-Latin characters look the same on every machine. That open structure is also why a workbook can be produced without Excel installed, as this page does.
What is the difference between CSV and XLSX?
CSV carries values; XLSX carries values plus the instructions for reading them. In a CSV nothing records the encoding, the delimiter or the type of a cell, so the program that opens it decides — and a wrong decision quietly rewrites your data. An XLSX states all of that inside the package and adds what a text file cannot hold at all: several sheets, formulas, number formats, column widths. Export to CSV when another system has to read the data; convert to XLSX when a person will open it in Excel and you need it to look the same for everyone. The structural difference is just as plain: a CSV is a text file you can read in Notepad, while an XLSX is a compressed package of XML parts.
Why Excel damages a CSV you open by double-clicking
Double-clicking a .csv hands Excel a file that says nothing about itself. Excel guesses the character encoding and the separator, and when a guess is wrong you get accented letters turned into ü or the entire row piled into one cell. Those failures are at least visible.
The damage you do not see is numeric. Excel keeps only 15 significant digits, so a 16-digit card or membership number comes back with zeros glued on the end; long values are displayed as 1.23E+15; and 0071 loses its leading zero. Save the file at that point and the loss is permanent, because the original digits are no longer in the workbook.
This tool decides the cell type before Excel gets the chance and writes those values as text cells, so what you open is what you exported.
Numbers or text: which setting fits your file?
Stay on "Convert to numbers" when the columns hold amounts, quantities or measurements you intend to calculate with. Those cells become real numbers, so Excel can sum them, average them and chart them with no further step. The result line tells you how many cells were converted; if that count is far below what you expected, check the delimiter first.
Switch to "Keep as text" when the digits are labels rather than quantities — product codes, order numbers, barcodes, phone numbers. Nothing is converted then and every character survives as written.
One rule is worth knowing before you trust the output. On this page the comma is read the way English-language software writes it, as a thousands separator, and the dot is the decimal mark: 1,234 arrives as 1234 and 1,234,567.5 as 1234567.5, both ready to calculate with. A comma that does not fit that grouping — 12,5 or 1,23, the way much of continental Europe writes a decimal — is left as text on purpose. In that shape the mark could be a decimal point or a mistyped separator, and a wrong guess would move the value by a factor of a thousand, so where the file gives no certain answer the value is not touched at all. Replace those commas with dots before converting if the column has to be calculable.
- Amounts, quantities, measurements → Convert to numbers
- Product codes, phone numbers, ID numbers → Keep as text
- Decimal commas from a European export (12,5) → left as text; swap them for dots first
The difference point by point: format, content, size
The two formats can hold the same table, but they do not store the same things. A CSV is plain text: open it in Notepad or TextEdit and you can read every value with your own eyes, because all it contains is the values and the character that separates them. An XLSX is a ZIP package, and inside it are XML parts describing the sheet, the cell values and the type of every cell separately. Open that same file in a text editor and you get nonsense on screen — not because it is damaged, but because it was never text.
Size follows from the structure. A sample table of 200 rows and 5 columns takes about 8 KB as a CSV; the XLSX this page writes from it is around 7 KB. Every cell is wrapped in XML tags, so the raw package would come to nearly 70 KB — but the files inside the package are written with the ZIP format's own compression, and all those repeated tags melt away. The bigger the table, the larger the saving: a 50,000-row CSV would produce an 18 MB file uncompressed, and comes out at 1.3 MB.
So a CSV carries the data and an XLSX carries the data plus the instructions for reading it. Use the first to move data between systems, the second to work on it.
- Format → CSV is plain text; XLSX is a ZIP package made of XML parts
- Cell type → not recorded in a CSV, guessed by whatever opens it; declared per cell in an XLSX
- Formulas → a CSV holds only the last result; an XLSX keeps the formula and Excel recalculates it
- Sheets → one table per CSV; several sheets inside one XLSX
- Formatting → fonts, colours, column widths and merged cells exist in XLSX only
- Encoding → a CSV never states its own; XLSX text is always Unicode
- Size → same 200-row table: about 8 KB as CSV, about 7 KB as the XLSX from this page
- Use → CSV for imports, accounting software and databases; XLSX for calculating and sharing
Frequently asked questions
Do leading zeros survive the conversion?
Yes. A value beginning with a zero is written as a text cell deliberately, so 007 and a phone number starting 0532 stay complete. The same protection covers any run of more than 15 digits, which Excel would otherwise round off.
Why does Excel show long numbers as 1.23E+15?
Because it treats them as quantities, keeps 15 significant digits and switches to scientific notation to display the rest. Card numbers, IBANs and long IDs are labels, not quantities, so this tool writes them as text and every digit stays readable.
Does the workbook contain several sheets?
No. Each CSV becomes a workbook with a single sheet, because a CSV file has no concept of sheets to preserve. Choose several CSV files and you get several .xlsx files, one per input; they are never merged.
Is a number written as 1,234.56 converted?
Yes. The comma is treated as a thousands separator here, so 1,234.56 becomes 1234.56 and 1,234,567 becomes 1234567, each as a real number Excel can add up. What stays as text is a comma outside that grouping pattern, such as 12,5, where the mark might be a decimal point from another locale.
Is my file uploaded anywhere?
No. Reading the text, parsing the rows and packing the XLSX container all happen in your browser, so the file never travels over the network and the tool keeps working offline.
Should I keep my data as CSV or as XLSX?
Ask who opens the file next. Data heading for another program, an import screen or a database is better left as CSV, because plain text is the one thing every system reads. A table a person will open, calculate with or format belongs in an XLSX, where cell types, formulas and layout are part of the file itself. Keeping both versions is not wrong either; it only costs disk space.