CSV to Excel (.xlsx) Converter
Turn a CSV into a proper Excel workbook: numbers become numeric cells, codes with leading zeros stay text, and the header row is bold, frozen and filterable — built in your browser.
CSV to Excel (.xlsx) Converter
Runs in your browser — nothing you enter is uploaded or stored.
Scratchpad auto-saved
How it works — in four simple steps
No signup and nothing to install — it all runs in your browser.
Add your CSV
Paste it into the left box, press Open file, or drag a .csv file onto it. Sample loads a realistic example.
Set the options
Adjust the options above the boxes — the output updates instantly as you change them.
Check the result
Read the status line: it reports rows, keys and any value that couldn't be represented in Excel (.xlsx).
Download the workbook
Press Download .xlsx — the file is built in your browser and saved straight to your device.
Leading zeros, + signs and 16-digit numbers are stored as text, so Excel can't strip or round them.
Features
Delimiter auto-detection
Comma, semicolon, tab or pipe is sniffed from the first lines — European Excel exports with ; just work.
Header row or not
Use the first row as field names, or treat every row as data with generated column1, column2… names.
Real types, not just strings
Numbers, booleans and empty values are detected — while codes with leading zeros such as 00742 or +44 phone numbers stay text.
Real .xlsx output
A genuine Office Open XML workbook with a bold, frozen header row, an AutoFilter and sized columns — no library and no upload.
Private by design
Parsing and conversion run in your browser with JavaScript — your data is never uploaded, logged or stored.
About the CSV to Excel (.xlsx) Converter
Double-clicking a CSV in Excel is a gamble: accents turn into é because Excel guesses the wrong encoding, leading zeros vanish from ZIP codes and IDs, long numbers become 1.23E+15, and values like 1-2 turn into dates. Converting the CSV to a real .xlsx first avoids all of that, because the workbook stores each cell's type explicitly.
This converter parses the CSV (RFC 4180, delimiter auto-detected), decides each cell's type — numbers and booleans become numeric/boolean cells; anything with a leading zero, a plus sign, or more than 15 digits stays text — and writes an Office Open XML workbook with a bold header row, a frozen top pane, an AutoFilter on the header and columns sized to their content. Text is stored as Unicode, so Hindi, Chinese, emoji and accents display correctly.
The .xlsx is generated entirely in your browser — the ZIP container, the sheet XML and the styles — so the CSV is never uploaded. Values that begin with = are stored as text, never as formulas, so a CSV can't inject a formula into your workbook.
Examples
A customer export with leading-zero IDs, international phone numbers, a long account number and a formula-like value.
customer_id,name,phone,account_no,balance,vip,joined
00142,Ada Lovelace,+447700900123,4111111111111111,1250.75,true,2024-03-14
00217,Alan Turing,+917700900456,5500000000000004,98.10,false,2023-11-02
00305,"Hopper, Grace",+12025550123,340000000000009,0,true,2025-01-20
00411,=HYPERLINK("x"),+61255550199,6011000000000004,-15.5,false,2022-07-09| customer_id | name | phone | account_no | balance | vip | joined |
|---|---|---|---|---|---|---|
| 00142 | Ada Lovelace | +447700900123 | 4111111111111111 | 1250.75 | TRUE | 2024-03-14 |
| 00217 | Alan Turing | +917700900456 | 5500000000000004 | 98.1 | FALSE | 2023-11-02 |
| 00305 | Hopper, Grace | +12025550123 | 340000000000009 | 0 | TRUE | 2025-01-20 |
| 00411 | =HYPERLINK("x") | +61255550199 | 6011000000000004 | -15.5 | FALSE | 2022-07-09 |
This output was produced by the converter on this page with sheet name “Customers” — load it with the “Customer list” preset above and change any option to see the effect.
How CSV maps to Excel (.xlsx)
| In CSV | Becomes in Excel (.xlsx) |
|---|---|
1234.5 | numeric cell 1234.5 |
00742, +919876543210 | text cells — zeros and + kept |
| 16+ digit ID | text cell (Excel keeps only 15 digits of a number) |
true / false | Excel TRUE / FALSE |
2026-10-21 | text cell, exactly as written |
=HYPERLINK(…) | text — formulas are never created |
| Header row | bold, frozen, with AutoFilter |
Things that trip people up
- Dates stay text. ISO dates are written as text so no regional setting can flip day and month. To get real Excel dates, select the column and use Data → Text to Columns → Date (YMD).
- Untick Detect numbers for pure text. If every column should be text (for example account numbers without leading zeros), switch off type detection.
- Excel's limits. A sheet holds 1,048,576 rows and 16,384 columns, and a cell 32,767 characters; longer cell text is truncated to fit.
- Semicolon CSV. Auto-detection handles European semicolon files; check the table preview to confirm the columns split correctly.
CSV vs Excel (.xlsx) at a glance
| Property | CSV | Excel (.xlsx) |
|---|---|---|
| Specification | RFC 4180 (2005) | ECMA-376 / ISO/IEC 29500 (Office Open XML) |
| File extension | .csv | .xlsx |
| Media type | text/csv | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
| Data types | text only — every cell is a string | number, text, boolean, date (as a serial number), formula |
| Comments | No | Cell notes |
| Nesting | None (flat rows) | None (grid; several sheets) |
- CSV: Fields containing a comma, a double quote or a line break must be wrapped in double quotes, and a quote inside is written twice ("").
- Excel (.xlsx): A sheet holds at most 1,048,576 rows × 16,384 columns (A to XFD), a cell at most 32,767 characters, and numbers keep 15 significant digits.