What happens when you convert HTML to CSV
- Each table in the HTML becomes rows of values; a CSV holds one table, so the first table is saved. Choose XLSX to keep every table. Numbers are stored as numbers, and cells that span several rows or columns stay merged.
- Text outside tables, such as headings and paragraphs, is left out, because a spreadsheet only holds the tables. An HTML with no tables gives a clear message rather than an empty file.
- The file is read by SheetJS running in your browser; nothing is uploaded.
How to convert HTML to CSV online
- Press "Choose HTML files" and select one or more files, or drag them onto the box. You can add files of any size your device can hold in memory.
- There are no settings to choose: the converter keeps everything the target format can hold.
- Press "Convert to CSV". The spreadsheet library, about 900 KB, loads the first time and then workbooks convert in a moment.
- Save each CSV with its download button. Close the tab and every trace of the files is gone from memory.
Why convert HTML to CSV?
HTML files usually come from web pages, emails and documents meant to be read in a browser. People convert them to CSV because CSV imports into every database, CRM, email tool and spreadsheet without fuss.
In short, HTML is good at what it was made for, and CSV is the more practical choice when the file has to open, upload or print somewhere else. HTML opens in every web browser, while CSV opens in every spreadsheet program and any text editor.
How to convert HTML to CSV on Windows, Mac, iPhone and Android
On Windows
Open this page in Chrome, Edge or Firefox, drag your HTML files in from File Explorer, and press Convert. Each CSV is saved to your Downloads folder.
On a Mac
Safari, Chrome and Firefox all work. Drag the HTML files from Finder onto the drop zone and the CSV files land in Downloads.
On iPhone and iPad
Open the page in Safari and tap Choose HTML files. You can pick from Photos or from the Files app. The converted CSV appears in Files, in the Downloads folder.
On Android
Open the page in Chrome, tap Choose HTML files and pick them from Files or your gallery. The CSV is saved to the Download folder, where any file manager can find it.
Best settings for HTML to CSV
There are no settings: every table is read with its rows and columns as they are, and numbers are stored as numbers.
CSV holds one table, so only the first table in the HTML is saved. If you need another one, convert to XLSX, where each table has its own sheet.
HTML vs CSV: the differences
| HTML | CSV | |
|---|---|---|
| Full name | HyperText Markup Language | Comma-separated values |
| Type | document | spreadsheet |
| Created by | Tim Berners-Lee | no single author; standardised in RFC 4180 |
| First released | 1993 | 1972 |
| Compression | Lossless | Lossless |
| What it holds | text with tags for headings, lists, links, tables and images | one table of plain text values, one row per line |
| In a browser | opens in every web browser | opens in every spreadsheet program and any text editor |
| Common uses | web pages, emails and documents meant to be read in a browser | data exports, imports into databases and exchanging tables between programs |
| MIME type | text/html | text/csv |
About HTML and CSV files
What is an HTML file?
HTML is the language of web pages. A converted document saved as HTML keeps its headings, lists, tables and links and opens in any browser.
What is a CSV file?
A CSV file holds a single table as plain text, with commas between values. It has no formatting, formulas or multiple sheets, which is exactly why every program can read it.
HTML to CSV not working? Common problems
- "No tables were found in this file." The HTML has no tables, only text; there is nothing to put into cells.
- The wrong table came out. A CSV holds one table, the first in the HTML; convert to XLSX to get every table on its own sheet.
- A page saved from a website has no tables. Many sites draw their tables with scripts; open the page in a browser and save it with File, Save Page As once it has loaded.
Convert HTML to CSV from the command line
Python's pandas library reads the tables of a page; this writes the first one (it needs lxml, and openpyxl for XLSX):
python3 -c "import pandas as pd; pd.read_html('input.html')[0].to_csv('output.csv', index=False)"The converter on this page does the same job in your browser, without installing anything.
HTML to CSV converter FAQ
Will I lose quality converting HTML to CSV?
The values in the tables are kept exactly. Text outside the tables is not, and neither is their styling, because a spreadsheet holds values.
Why is the CSV a different size from the HTML?
Usually smaller than the HTML, because only the tables are kept.
Are my HTML files uploaded anywhere?
No. The conversion runs inside this browser tab using the open-source SheetJS library, so your files stay on your device. You can disconnect from the internet after the page and converter engine have loaded and it still works.
Can I convert several HTML files to CSV at once?
Yes. Select or drop as many files as you like; they are converted one after another and each gets its own download button.
How do I open a CSV file?
CSV opens in every spreadsheet program and any text editor. CSV is common for data exports, imports into databases and exchanging tables between programs.
Is this HTML to CSV converter free?
Yes. There is no sign-up, no watermark and no limit on how many files you convert. The site is paid for by advertising, and because conversions run on your device there is no server cost per file.
Can I convert HTML to CSV on my phone?
Yes. The converter works in Safari on iPhone and iPad and in Chrome on Android. Converted files are saved to the Downloads folder.