Skip to main content
FormatDrop
How-To Guide

How to Convert XLSX to CSV

CSV (Comma-Separated Values) is the lingua franca of data exchange — every database, API, BI tool, and data science library reads CSV natively. Converting XLSX to CSV strips the formatting and produces a clean, flat text file of your data. It's the essential step before importing spreadsheet data into MySQL, PostgreSQL, Pandas, or any external system.

FormatDrop doesn't convert XLSX to CSV yet. The methods below use free tools that do. FormatDrop's own converters cover common image, audio, video and PDF formats, all in your browser.

Other ways to convert XLSX to CSV

  1. 1

    Excel

    Open the workbook, click the sheet you want, then File → Save As → CSV UTF-8 (Comma delimited). Excel saves only the active sheet, so repeat for each sheet. Values are written the way the cells display them.

  2. 2

    LibreOffice Calc (free)

    File → Save As → Text CSV, then choose the character set (UTF-8) and the field delimiter in the next dialog. Command line: soffice --headless --convert-to csv input.xlsx, which exports the first sheet.

  3. 3

    Python pandas

    for name, df in pd.read_excel('input.xlsx', sheet_name=None).items(): df.to_csv(f'{name}.csv', index=False). sheet_name=None reads every sheet. Install with pip install pandas openpyxl. pandas writes the stored values, not the formatted ones.

  4. 4

    Check the CSV

    Open it in a text editor: columns should be split by commas, and text that contains commas should sit inside quotes. Check date and long-number columns, since tools write them differently.

Why convert XLSX to CSV?

XLSX is great for humans to look at in Excel; CSV is great for machines to read. Converting XLSX to CSV is the first step in virtually every data pipeline that starts with a spreadsheet.

Frequently asked questions

How do I convert a specific sheet from XLSX to CSV?
Many tools export only the first sheet. In Excel, click that sheet's tab, then Save As → CSV; Excel saves only the active sheet. In Python: `import pandas as pd; pd.read_excel('input.xlsx', sheet_name='Sheet2').to_csv('output.csv', index=False)`.
Special characters are garbled in my CSV — how do I fix encoding?
Save CSV as UTF-8 with BOM for Excel compatibility: `pd.DataFrame.to_csv(..., encoding='utf-8-sig')`. Or without BOM for Linux/Mac tools: `encoding='utf-8'`. If you receive a garbled CSV, re-read it specifying the correct encoding: `pd.read_csv('file.csv', encoding='latin-1')`.
My XLSX has formulas — will CSV preserve them?
No. CSV stores only the current calculated values, not formulas. If you need the formula results, this is fine. If you need to recalculate formulas in the CSV, you'll need to recreate them in the destination system.
Browse FormatDrop's converters

No account. No upload. Works in any browser.