Skip to content

Excel to CSV

Excel to CSV Converter

Convert XLSX, XLS, XLSM, or ODS spreadsheets to CSV — pick a sheet, choose a delimiter, download one or all. Nothing is uploaded.

  • Runs in your browser
  • Nothing uploaded
  • No sign-up
  • Free, no daily limits
  1. 1Add your file
  2. 2Choose settings
  3. 3Download

Drop a spreadsheet here

XLSX, XLS, XLSM, or ODS — or click to browse

Max file size: 25MB · processed in your browser

100% Private: Your spreadsheet is parsed entirely in your browser — nothing is uploaded to any server.

finance.xlsxQty: 40Rate: $25=B2*C2 → $1,000Formulas & FormattingExcel WorkbookMulti-sheet · binary formatSheetJS CoreCalculate ValuesDelimiter: [ , ]UTF-8 BOM EncodeData ExtractorRFC 4180 CSV serializationitem,qty,rate,totalServer,40,25,1000Backup,12,50,600Total,,,1600CSV · Plain TextUTF-8 CSVLightweight & universal
Extracts raw cell values and calculated formula outputs from Excel sheets into lightweight, standard UTF-8 CSV text.

Last updated

Extract structured tabular data from complex spreadsheet workbooks into clean comma-separated values (CSV) files without sending private files to remote servers. Modern spreadsheets store cell formulas, multi-sheet tabs, and display formatting, but database loaders, Python scripts, and API pipelines require clean plain text.

Our client-side conversion engine parses workbook sheets locally in browser memory, exports raw unformatted numbers for precision, converts date cells to UTC ISO 8601 strings, and handles multi-sheet workbooks. You can download the active sheet or export every worksheet concurrently as a ZIP bundle.

How it works

  1. 1. Upload your spreadsheet file

    Drop your .xlsx, .xls, .xlsm, or .ods spreadsheet into the upload box or browse to select a file up to 25 MB from your device.

  2. 2. Select your active sheet and delimiter

    Switch between detected worksheet tabs to preview records, and choose your preferred separator: comma, semicolon, tab, or pipe.

  3. 3. Export your CSV data

    Click Download to save the active sheet, copy text to your clipboard, or click All (.zip) to export every sheet as an individual CSV file.

When you'd use it

  • Ingesting spreadsheet dumps into SQL databases

    Database administrators convert client spreadsheet exports into comma-separated text files structured for bulk COPY or LOAD DATA INFILE operations.

  • Preparing clean inputs for Python pandas and data pipelines

    Data analysts extract raw numerical arrays from multi-tab workbooks into TSV or CSV files for analysis in Jupyter notebooks and automated data workflows.

  • Migrating customer records into CRM platforms

    Operations teams convert contact lists and inventory tables into standard CSV formats matching import specifications for HubSpot, Salesforce, or Shopify.

  • Generating semicolon-delimited files for European accounting tools

    Financial specialists switch delimiters to semicolons so decimal comma figures parse without column misalignment in regional accounting packages.

How does the converter handle dates, numbers, and formulas?

Standard spreadsheet converters frequently rely on displayed text formatting. That causes loss of precision: a floating-point number like 3.14159 formatted as currency or two decimal places exports as 3.14, permanently discarding significant digits. Our engine runs in raw value mode by default, extracting the underlying stored number so downstream calculations remain accurate.

Date cells present a similar problem. Many tools export dates formatted according to the author's local desktop configuration, producing ambiguous outputs like 04/05/2026 that could represent April 5 or May 4. TryDocsy evaluates date cells as UTC instants and serializes them to standard ISO 8601 strings (YYYY-MM-DD for midnight dates, or full UTC timestamps).

Untrusted workbooks can also contain formula injection payloads designed to execute commands when opened in desktop applications. Any exported cell beginning with formula triggers (=, +, -, @, tab, or carriage return) is prepended with a single quote prefix (') unless it represents a plain signed number. If you need to rebuild an Excel file from CSV records, use our CSV to Excel tool.

Workbook cell values compared against exported CSV text
Cell TypeWorkbook Raw ValueDisplay FormatExported CSV TextReasoning
Date (Midnight)2024-05-18T00:00:00Z18/05/20242024-05-18ISO 8601 calendar date without time
Date with Time2024-05-18T14:30:00Z2:30 PM2024-05-18T14:30:00ZFull UTC ISO timestamp
Float Number3.141592653.143.14159265Raw value avoids lossy rounding
Formula Cell=SUM(A1:B10)$450.00'=SUM(A1:B10)Neutralized against DDE injection
Percentage0.25525.5%0.255Underlying decimal value preserved

Source: TryDocsy spreadsheet parser (lib/xlsx-convert.ts), checked October 29, 2026

UTF-8 byte order mark protection and multi-sheet exports

Opening standard UTF-8 text files in desktop Microsoft Excel on Windows often results in garbled text (mojibake) because Excel defaults to legacy ANSI code pages unless explicitly signaled. Our file downloader automatically prepends a UTF-8 Byte Order Mark (BOM) to generated CSV files and ZIP entries.

This ensures accented characters, currency symbols, and non-Latin text render cleanly across all versions of Excel. In contrast, clipboard copies remain clean and BOM-free so pasting text into programming editors does not insert stray hidden bytes. To transform tabular data directly into web APIs, consider converting with CSV to JSON.

When dealing with multi-sheet workbooks, TryDocsy provides individual sheet selection tabs along with an All (.zip) option. Sheet names are sanitized to prevent archive filename collisions, ensuring every table exports cleanly. For paginated printable copies of your workbook, use Excel to PDF.

When should you use a command-line tool instead?

This converter runs client-side in your browser sandbox, which protects file confidentiality. However, browser tabs have hard memory limitations. We enforce a 25 MB file limit (26,214,400 bytes) to prevent out-of-memory errors on client devices.

If you have a 500 MB database dump or a password-protected workbook that cannot be opened in the browser without credentials, command-line utilities are a better option. You can use in2csv from the csvkit package (in2csv input.xlsx > output.csv) or run headless LibreOffice (libreoffice --headless --convert-to csv input.xlsx) in automated scripts.

Frequently asked questions

Can I convert all sheets in a multi-sheet Excel file at once?

Yes. When your workbook contains multiple worksheets, click the All (.zip) button. The tool converts each sheet with your chosen delimiter, prepends a UTF-8 BOM, and bundles them into a single downloadable ZIP archive.

Why does my downloaded CSV file include a UTF-8 BOM?

Microsoft Excel on Windows opens double-clicked CSV files using legacy system ANSI code pages unless a UTF-8 Byte Order Mark is present. Adding the BOM ensures international letters and symbols render cleanly without mojibake.

How are spreadsheet dates formatted during conversion?

Date cells are converted to standard UTC ISO 8601 format. Midnight dates export as YYYY-MM-DD, while dates with specific times include the full timestamp. This avoids regional date ambiguity.

Why does the exported CSV show decimal values instead of percentages or currencies?

Our converter exports raw underlying cell values by default rather than formatted display text. This prevents loss of numerical precision, so calculations in databases and analytical scripts remain exact.

Can I convert password-protected Excel files?

No. Password-protected and encrypted spreadsheets cannot be decrypted client-side in the browser. You must open the workbook in Excel, save an unencrypted copy, and upload that copy for conversion.

How does formula injection defense protect downstream CSV users?

Cells beginning with formula characters like =, +, -, or @ can execute DDE commands or external links when opened in Excel. Our tool prepends an apostrophe to these cells so Excel displays them as plain text.