Someone sends you an .xlsx file, but the thing you're feeding it into — a database import, a Python script, a CRM uploader, an old accounting system — wants CSV. And you don't have Excel, or you're on a machine where you can't install it.
The good news: XLSX to CSV conversion needs nothing from Microsoft. Here's every practical route, plus the encoding and formatting traps that silently corrupt data during this exact conversion.
What actually changes between XLSX and CSV
An XLSX file is a ZIP archive of XML documents (the Office Open XML format) describing worksheets, formulas, formatting, charts, and metadata. A CSV is a plain text file: one row per line, values separated by commas. That gap means conversion is inherently lossy — and knowing what's lost prevents surprises:
- Only one sheet survives: CSV has no concept of multiple worksheets. A workbook with five sheets needs five CSV files.
- Formulas become their current values: =SUM(A1:A10) exports as whatever it last evaluated to.
- All formatting disappears: colors, borders, column widths, merged cells, conditional formatting — gone.
- Data types flatten to text: dates and numbers export as they're displayed, which is where most real-world corruption happens (more below).
None of this is a flaw — it's the point. CSV's simplicity is why every database, script, and import wizard on Earth accepts it.
Method 1: Convert in your browser (no install, no upload)
- 1
Open FileMorf's converter and switch to the document tab
The document converter handles XLSX, ODS, CSV, and other tabular formats — no account needed.
- 2
Drop in your .xlsx file
The spreadsheet is parsed locally in your browser. Unlike upload-based converter sites, the file never leaves your device — relevant when the spreadsheet is a customer list or financial data.
- 3
Choose CSV as the output and download
You get a clean UTF-8 CSV ready for imports, scripts, or databases.
Methods 2–4: Google Sheets, LibreOffice, and the command line
Three other free routes, each with a legitimate niche:
- Google Sheets (any browser): upload the XLSX to Google Drive, open with Sheets, then File → Download → Comma Separated Values. Exports the active sheet only. Works anywhere, but note you are uploading the data to Google — fine for most files, a policy question for confidential ones.
- LibreOffice Calc (Windows/Mac/Linux, free): open the file and Save As → Text CSV. Its export dialog exposes delimiter, quoting, and encoding options Excel itself hides — genuinely the most control of any GUI method. The suite is a ~350 MB install.
- Command line for batches: LibreOffice headless converts entire folders (soffice --headless --convert-to csv *.xlsx), and csvkit's in2csv (Python) is ideal in data pipelines — in2csv data.xlsx > data.csv, with a --sheet flag for specific worksheets.
| Method | Install | Data stays local | Batch-friendly |
|---|---|---|---|
| FileMorf document converter | No | Yes — parsed in browser | One file at a time |
| Google Sheets | No | No — uploaded to Google | No |
| LibreOffice Calc | Yes (~350 MB) | Yes | Via command line |
| in2csv (csvkit) | Yes (Python) | Yes | Yes — scriptable |
The traps: encoding, delimiters, and mangled data
Most 'the conversion broke my data' reports trace back to four well-known traps:
- Encoding: accented characters (é, ü, ñ) or non-Latin text turning into garbage means an encoding mismatch. Export as UTF-8. Ironically, Excel itself misreads plain UTF-8 CSVs unless they start with a BOM (byte order mark) — if your CSV's consumers include Excel users, prefer 'CSV UTF-8' style output.
- Regional delimiters: in much of Europe, the decimal separator is a comma, so 'CSV' files locally use semicolons as field separators. If your target system expects commas and gets semicolons (or vice versa), every row lands in one column.
- Leading zeros: ZIP codes, phone numbers, and product IDs like 00420 survive the conversion as text — the mangling usually happens later, when the CSV is re-opened in a spreadsheet app that 'helpfully' parses them as numbers. The same is true of the infamous gene-name-to-date bug: it's a re-import problem, not a conversion problem.
- Dates: CSV stores dates as displayed text. If the sheet displays 03/04/2026, is that March 4 or April 3? For machine consumption, reformat date columns to ISO (2026-04-03) before exporting — future you will be grateful.
Always spot-check the output
Open the CSV in a plain text editor — not a spreadsheet — and check a few rows: the header, a row with special characters, a date, and an ID with leading zeros. Thirty seconds of inspection catches every trap above before it reaches your database.
Going the other way, and other tabular conversions
The reverse trip — CSV to a formatted spreadsheet — is just as common, and the same tools handle it. FileMorf's document converter also covers the neighboring conversions that show up in data work: CSV to JSON for APIs, JSON to CSV for flattening exports, XML to CSV for legacy feeds, and CSV to PDF when someone upstream wants something printable. All of it runs client-side in the browser.
Convert XLSX, CSV & more free
Spreadsheet and data conversions that run in your browser — XLSX, ODS, CSV, JSON, XML, and more, with no uploads.
Frequently asked questions
Can I convert XLSX to CSV without uploading my data anywhere?
Yes. FileMorf parses the spreadsheet inside your browser, so the file never leaves your device; LibreOffice and command-line tools are fully offline. Google Sheets and most 'free online converter' sites, by contrast, process your data on their servers.
How do I convert a workbook with multiple sheets?
CSV can only represent one sheet, so each worksheet must be exported separately. For many workbooks, a scriptable tool is fastest: in2csv --sheet 'SheetName' data.xlsx, or LibreOffice headless in a loop.
Why do my accented characters look like é after converting?
That's UTF-8 text being read as Latin-1/Windows-1252 (or the reverse). Export as UTF-8, and if the file will be opened in Excel, use an export that includes a UTF-8 BOM so Excel detects the encoding correctly.
Does converting to CSV remove Excel formulas?
It replaces them with their last calculated values — the formula logic itself isn't stored in CSV. If you need the formulas preserved, keep the XLSX as the source of truth and treat CSVs as disposable exports.
Keep Reading
What Is OCR? How to Extract Text from Scans and PDFs
OCR turns pictures of text into real, searchable, copyable text. How it works, what accuracy to expect, the free tools built into your devices, and how to run it online.
Read the guideHow to Extract Specific Pages from a PDF
Pull just the pages you need out of any PDF — in your browser, with built-in OS tools, or the print dialog trick. No Acrobat, no uploads, no watermarks.
Read the guideHow to Merge PDF Files Without Installing Software
Combine PDFs in your browser without Acrobat or any download — and without uploading sensitive documents to someone's server. Plus the built-in OS alternatives.
Read the guide