Pull table data out of HTML without rebuilding the sheet by hand
Reports still show up as saved web pages: a vendor portal export, a nightly job emailed as HTML, a pricing block copied from an internal dashboard. You need rows in a spreadsheet tool or a flat `.csv` for a script—not another browser tab you have to scrape cell by cell. Copy-paste from the rendered page is where things fall apart. Merged header rows collapse, currency symbols land in the wrong column, and a table that looked fine on screen becomes one long line in column A. An html to csv workflow should give you comma-separated values you can open in Excel, Google Sheets, or pandas—not a cleanup project. This converter runs in your browser. Paste markup on the left, see the parsed grid on the right, fix a cell or tweak the source HTML if the parser missed a row, then download `.csv` when you only need flat data—or `.xlsx` / `.xls` when merges and multiple sheets matter. Nothing is sent to our servers, which is worth remembering when the table has customer names or unreleased figures.

Table extraction and full-page text, with a grid you can edit before export
Most one-click tools assume your file is a single neat `<table>`. Real pages are messier: a short intro paragraph, then the numbers; two tables in one export; a `<thead>` that uses `colspan` for grouped columns. We built two extraction modes for that. **Table extraction** turns semantic `<table>` markup into a proper matrix—headers, body rows, and `colspan` / `rowspan` mapped to merge ranges in the preview. That is the right choice when you need an html table to csv export and the data actually lives in table tags. **Full text extraction** walks the page structure—headings, paragraphs, list items—and puts each block on its own row in one column, while still expanding any embedded tables into multi-column rows. Use it when the HTML is mostly prose with a table buried in the middle, or when you want readable text alongside tabular data in one file.
What sets this apart from upload-and-wait converters is the workbench layout. The HTML editor and the preview sit on the same screen. If a row looks wrong, you can click a cell in the grid and type a correction, or switch back to the HTML tab and fix the markup directly—add a missing `<th>`, close a tag, remove a stray wrapper `div`—then watch the preview refresh. You are not guessing what the export will look like after a blind conversion. When you only need a flat file for an import job, pick `.csv` in the format dropdown. Need merge metadata or multiple worksheets from several tables in one paste? Choose `.xlsx` or legacy `.xls` instead. Same preview, same edits—only the download format changes.
Try the converterTwo extraction modes, one paste box
Switch between Table extraction for `<table>` data and Full text extraction for mixed pages. You are not locked into a single parser that treats every file the same way.
Edit the grid or the HTML in place
Fix a value in the preview cells, or edit the source markup on the left when the structure is wrong. Both panels update together so the CSV you download matches what you verified.
Preview before you commit
Headers, numeric columns, and merged bands are visible before download. Fewer surprises when you open the file in Sheets or load it into a script.
What you get when you convert html to csv here
A side-by-side editor and preview—not a black box that returns text you cannot sanity-check.

Why paste-and-preview beats upload-only converters
Analysts often already have the markup—copied from DevTools, saved from a CMS, or pulled from an email template. Forcing a file upload adds a step and sometimes strips the fragment you actually care about. Here you paste first; upload `.html` or `.htm` only when the document is too large for the clipboard. The preview panel is the other half of the bargain. When you convert html to csv, column alignment matters: a shifted header breaks vlookups and import scripts. Seeing the grid before export lets you catch a missing column or a duplicated header row while the HTML is still open beside it. If the page contains several top-level tables, each one becomes its own worksheet in the preview. Switch sheets in the toolbar, spot-check each block, then export. For a straight html table to csv job with one grid, select `.csv` and you get a single comma-separated file ready for import.
How to convert HTML file to CSV format

Paste or import your HTML
Drop code into the left editor—most people paste from the clipboard. For a full saved page, use Upload to import `.html` or `.htm`. Choose **Table extraction** when the data is in `<table>` tags; choose **Full text extraction** when the page mixes paragraphs and tables.

Review the preview grid
The right panel shows the rows that will export. Check headers, numbers, and any merged cells. If the HTML had multiple tables, pick the sheet from the toolbar. Click a cell to fix a typo, or return to the HTML tab and edit the markup if the structure needs a change.

Pick CSV (or another format)
Select `.csv` in the format dropdown for a flat comma-separated file—ideal for imports and scripts. CSV does not store merge metadata; if colspan layout must survive, use `.xlsx` or `.xls` instead. The preview is the same either way.

Download and use the file
Click Download. Open the `.csv` in your spreadsheet app, or pipe it into your ETL job. If you need HTML again later, use Excel to HTML from the conversion menu for the return trip.
HTML to CSV: questions people ask before exporting
Turn your next HTML table into a CSV you can actually use
Paste, preview, edit a cell or fix the markup, then download—without retyping the grid.
HTML to CSV
- Paste HTML or import a file—preview before export
- Table extraction and Full text extraction modes
- Edit cells in the grid or fix HTML on the left
- Download `.csv`, `.xlsx`, or `.xls` from the toolbar
Need spreadsheets back as markup? Use Excel to HTML from the conversion menu.

Less copy-paste repair work
Move web tables into a flat file you can filter and import, without rebuilding rows by hand.
