FlipMyFormat

HTML Table to CSV Converter

Extract an HTML table into clean CSV — a real parser reads the header and body cells, handles multiple tables, and quotes fields the RFC-4180 way. Paste markup, get a spreadsheet-ready file. 100% private.

100% Free Real HTML parser Handles multiple tables RFC-safe quoting Data never sent
Delimiter

Your data is processed on your device and never sent to any server.

People Also Use

Everything This Converter Does

A real HTML parser that reads tables the way a browser does.

Real HTML parsing

Your markup is parsed with a real DOM parser, so it reads the table exactly as a browser would.

Header detection

Header cells (th) become the CSV header row; if there are none, the first row is used.

Multiple tables

If a page has several tables, pick which one to convert from a dropdown.

RFC-safe quoting

Fields containing the delimiter, quotes or line breaks are wrapped and escaped correctly.

Any delimiter

Output a comma, semicolon or tab-separated file to match your target tool.

Clean text

Cell text is trimmed and inner markup is stripped, so you get plain values.

Excel-ready

The result opens cleanly in Excel, Google Sheets, Numbers and any CSV importer.

Row & column counts

See exactly how many rows and columns were extracted as you work.

Copy or download

Grab the CSV to your clipboard or save it as a .csv file in one click.

Fully private

All conversion happens in your browser — your data is never uploaded to any server.

Example Conversions

See how an HTML table becomes CSV rows.

A table with a header

HTML in

<table>
  <tr><th>id</th><th>name</th></tr>
  <tr><td>1</td><td>Ada</td></tr>
</table>

CSV out

id,name
1,Ada

Commas in cells are quoted

HTML in

<table>
  <tr><td>Ada</td><td>London, UK</td></tr>
</table>

CSV out

Ada,"London, UK"

Converts

HTML → CSV

Parser

Real DOM

Tables

Multiple

Quoting

RFC-safe

Export

Copy & .csv

Privacy

Never sent

FlipMyFormat vs Other HTML-to-CSV Tools

An honest look at how this free tool compares.

FeatureFlipMyFormatOthers
Data never sent to a serverSometimes
Real DOM parsingRare
Handles multiple tablesRare
RFC-safe quotingLimited
Comma, semicolon or tabRare
Copy & downloadLimited
No signup / ads-free

How to Convert an HTML Table to CSV

Copying a table off a web page into a spreadsheet often loses its structure or drags along messy formatting. This converter fixes that. Paste the HTML — a single table or a whole page — and a real DOM parser reads it exactly as a browser would. Header cells become your CSV header row; if the table has none, the first row is used instead. Every body row becomes a CSV line, cell text is trimmed and inner markup is stripped to plain values, and any field containing the delimiter, quotes or line breaks is quoted the RFC-4180 way. If the page has several tables, a dropdown lets you pick the one you want. Choose a comma, semicolon or tab, then copy or download. Everything runs in your browser, so nothing is uploaded.

1

Paste your HTML

Paste a table or a full page, or load the sample; it's parsed locally with nothing uploaded.

2

Choose the options

Pick the delimiter, toggle the header row, and select which table if there are several.

3

Copy or download

Grab the CSV with one tap or save it as a .csv file.

HTML Tables vs CSV — What's the Difference?

HTML table markup

A set of table, tr, th and td elements a browser renders as a grid. It's made for display, mixing content with styling and structure, so it isn't directly usable as data in a spreadsheet.

CSV — comma-separated values

A flat, universally supported data format where each line is a row and a delimiter separates columns. Converting an HTML table to CSV strips away the markup and leaves clean, importable data.

Common Use Cases

Scrape a web table

Pull a table from a page's source into CSV you can analyse in a spreadsheet.

Reports to data

Turn an HTML report table into importable data for further work.

Email & doc tables

Extract tables pasted from emails or documents as HTML into clean CSV.

Dashboard exports

Convert a rendered dashboard table's markup into a data file.

Migrations

Move tabular content out of an HTML page into a database-ready CSV.

Research data

Capture published HTML tables as CSV for analysis.

European locales

Use semicolon output for CSVs that open correctly in comma-decimal regions.

Quick extraction

A fast, no-install way to get a table's data out of HTML.

Tips & Best Practices

Paste the whole page if unsure

You can paste an entire page's HTML; the parser finds the tables and lets you pick one.

Use th for clean headers

Tables with proper th header cells give you an accurate CSV header row automatically.

Pick the right table

If several tables exist, use the dropdown to select exactly the one you need.

Match the delimiter

Use commas for most tools; switch to semicolons for comma-decimal locales, or tab for TSV.

Watch merged cells

Cells spanning rows or columns (rowspan/colspan) can shift alignment; check the output if your table uses them.

Trust the quoting

Cells with commas or quotes are escaped automatically, so paste as-is without cleaning first.

Troubleshooting

It says no table was found

The HTML must contain a <table> element. If your data is a list or divs styled as a table, it won't be detected.

The wrong table converted

When several tables exist, use the Table dropdown to choose the right one.

Columns look misaligned

The table probably uses rowspan or colspan. Merged cells don't map cleanly to a flat grid, so alignment can shift.

Extra whitespace in cells

Cell text is trimmed, but inline elements can add spacing. The output shows the visible text of each cell.

Frequently Asked Questions

How do I convert an HTML table to CSV for free?

Paste your HTML above and CSV appears instantly. Copy it or download a .csv file — free, no signup.

Can I paste a whole web page?

Yes. The parser finds every table in the markup and lets you pick which one to convert.

How does it find the header row?

Header cells (th) in the first row become the CSV header. If there are none, the first row of cells is used.

What if the page has several tables?

A dropdown appears so you can choose exactly which table to convert.

Does it strip HTML inside cells?

Yes. Inner markup is removed and the visible text is trimmed, so you get plain values.

Are commas and quotes handled?

Yes. Any field containing the delimiter, a quote or a line break is wrapped in quotes and inner quotes are escaped.

Can I use a semicolon or tab delimiter?

Yes. Choose comma, semicolon or tab to match your target spreadsheet or tool.

Can I omit the header row?

Yes. Turn off the header option to output only the data rows.

What about merged cells?

Cells with rowspan or colspan don't map cleanly to a flat grid, so alignment may shift for those tables.

Will the CSV open in Excel?

Yes. The output imports cleanly into Excel, Google Sheets, Numbers and any CSV-aware tool.

Is my data sent to a server?

No. Everything happens inside your browser, so your data never leaves your device.

Can I download the result?

Yes. Save the output as a .csv file, or copy it straight to your clipboard.

How large a table can it handle?

It comfortably converts tables with many hundreds of rows, all within your browser.

Does it need a full HTML document?

No. You can paste just a <table> fragment; a full page works too.

Can I convert to JSON instead?

Yes — use our HTML to JSON converter to get an array of objects.

Does it preserve Unicode?

Yes. Any Unicode characters in your table are preserved in the CSV output.

Does it work on phones?

Yes, in any modern browser on Windows, Mac, Android or iPhone with nothing to install.

Is this converter really free?

Completely free, forever — no account, no ads and no premium wall.

100% free · No signup · Processed in your browser · Data never sent

Last updated: August 2026 · FlipMyFormat HTML to CSV Converter
Written and maintained by the FlipMyFormat team · Runs entirely in your browser