Excel is great for building reports and running analysis, but most data pipelines, databases, and APIs expect CSV. CSV is plain text — no proprietary format, no compatibility concerns, no special software required to read it.

Whether you’re feeding data into a database import tool, sharing with a developer who needs a flat file, or running a script that processes tabular data, converting Excel to CSV is a routine step. Here are four ways to do it.

Method 1: Convert Excel to CSV Using TableConvert

TableConvert’s Excel to CSV converter works entirely in your browser. Upload your file, preview the data, and download or copy the CSV output.

Step 1: Open the Converter

Go to tableconvert.com/excel-to-csv.

Step 2: Upload Your Excel File

Click the Upload File button and select your .xlsx or .xls file. TableConvert reads the first sheet by default. The data loads into the table editor immediately.

Step 3: Preview in the Table Editor

Your spreadsheet data appears in a grid editor. Check that the columns and rows parsed correctly. You can make light edits here — fix a header name, remove an empty row — before exporting.

Step 4: Copy or Download the CSV Output

In the output panel on the right, you’ll see the converted CSV text. You can:

  • Click Copy to copy the text directly to your clipboard
  • Click Download to save a .csv file

The output uses standard comma-separated format with proper quoting for cells that contain commas.

Method 2: Save As CSV in Microsoft Excel

Excel’s built-in Save As handles the conversion without any extra tools.

  1. Open your Excel file
  2. Go to File > Save As (or File > Export in newer versions)
  3. Choose a location and set the file type to CSV (Comma delimited) (.csv)
  4. Click Save
  5. Excel will warn you that only the active sheet will be saved — click Keep Current Format to confirm

Important: Excel only exports the currently active sheet. If your workbook has multiple sheets and you need all of them as CSV, you’ll need to repeat this process for each sheet — or use Method 4 (Python) for bulk export.

The resulting CSV uses your system’s regional settings for the delimiter. On systems set to European locales, Excel may default to semicolons instead of commas. If your downstream tools expect commas, check the output or use a different method.

Method 3: Export CSV from Google Sheets

If your Excel file is already in Google Drive, or you prefer working in a browser:

  1. Open the file in Google Sheets (it opens automatically if you double-click an .xlsx in Drive)
  2. Go to File > Download > Comma-separated values (.csv)
  3. The current sheet downloads as a CSV file

Google Sheets always exports the active sheet only. Unlike Excel, it consistently uses commas regardless of locale settings, which makes it more predictable when sharing files internationally.

Method 4: Convert Excel to CSV with Python

For batch conversions, automated pipelines, or processing multiple sheets at once, Python is the most flexible option.

Using pandas (recommended):

import pandas as pd

# Convert a single sheet
df = pd.read_excel('data.xlsx')
df.to_csv('output.csv', index=False)

# Convert a specific sheet by name
df = pd.read_excel('data.xlsx', sheet_name='Sales Q1')
df.to_csv('sales_q1.csv', index=False)

# Convert all sheets to separate CSV files
excel_file = pd.ExcelFile('data.xlsx')
for sheet_name in excel_file.sheet_names:
    df = excel_file.parse(sheet_name)
    df.to_csv(f'{sheet_name}.csv', index=False)

Using openpyxl (no pandas dependency):

import openpyxl
import csv

wb = openpyxl.load_workbook('data.xlsx')
ws = wb.active

with open('output.csv', 'w', newline='', encoding='utf-8') as f:
    writer = csv.writer(f)
    for row in ws.iter_rows(values_only=True):
        writer.writerow(row)

Install pandas with pip install pandas openpyxl if you haven’t already.

Which Method Should You Use?

MethodBest ForRequiresHandles Multi-Sheet
TableConvertQuick one-off conversions, browser-basedBrowser onlyNo (one sheet)
Excel Save AsUsers already in ExcelMicrosoft ExcelNo (manual per sheet)
Google SheetsFiles already in Google DriveGoogle accountNo (manual per sheet)
PythonBatch conversions, automation, CI/CDPython installedYes

For occasional conversions, TableConvert or the native Save As method is fastest. For recurring exports or multi-sheet workbooks, Python gives you the control and repeatability you need.

Common Problems When Converting Excel to CSV

Multi-sheet workbooks: Excel stores multiple sheets in a single .xlsx file, but CSV is a single-table format. Each sheet requires its own CSV file. Plan for this when your workflow receives CSV — you may need to concatenate or handle multiple files.

Encoding issues: Excel on Windows defaults to Windows-1252 encoding, which breaks non-ASCII characters (accented letters, Chinese characters, symbols) when the file is opened by a system expecting UTF-8. To force UTF-8 encoding in Excel: File > Save As > Tools > Web Options > Encoding > Unicode (UTF-8).

Commas inside cell values: If a cell contains a comma (e.g., "Smith, John"), the CSV writer should wrap it in double quotes: "Smith, John". Most tools do this automatically, but verify the output if your data has punctuation-heavy text.

Date format changes: Excel stores dates as serial numbers internally. When exported to CSV, dates may appear in different formats depending on the tool. Check date columns in your CSV output and reformat if needed.

Formula results vs formulas: CSV stores values, not formulas. A cell with =SUM(A1:A10) exports its calculated result, not the formula. This is almost always what you want, but worth knowing.

Ready to Convert?

Upload your Excel file to TableConvert’s Excel to CSV converter for a quick browser-based conversion, or use the Python snippet above when you need to automate the process across multiple files.