HTML to Excel Converter

Turn HTML tables into a downloadable Excel spreadsheet. Paste markup or upload a file, preview the tables, and export a real .xlsx workbook — all in your browser.

100% Client-Side Processing

Your HTML is parsed and converted entirely in your browser. Nothing is uploaded to a server.

 

When enabled, numeric-looking text and dates become real Excel numbers and dates instead of plain text. Turn this off to preserve values like phone numbers or zip codes with leading zeros exactly as written.

Preview

Tables detected: 0

Only content inside <table> elements is converted. Other text, images, and layout outside tables are ignored.

For safety, <script> tags are disabled in the preview and export.

What is an HTML to Excel Converter?

An HTML to Excel converter reads the <table> elements in a page of HTML and turns each one into rows and columns in a real .xlsx spreadsheet — the same format Microsoft Excel, Google Sheets, LibreOffice Calc, and Apple Numbers all open natively.

It is useful whenever you have data trapped inside an HTML table — a report from a web app, an emailed summary, or a table copied from a webpage — and you need it as an actual spreadsheet you can sort, filter, chart, or hand off to someone else, without retyping every row by hand.

How it Works

  • Add your HTML: Paste HTML containing one or more <table> elements, or upload an .html file.
  • Preview it: The tool renders your markup live in an isolated preview and counts how many tables it finds.
  • Choose spreadsheet options: Pick one worksheet per table or a single combined sheet, decide whether to parse numbers and dates, and set a file name.
  • Convert and download: Each table is read directly from the rendered page and written into a real .xlsx workbook that downloads straight to your device.

Features

  • Paste HTML or upload an .html file
  • Live preview of the source before converting
  • Automatically detects every <table> in your markup
  • One worksheet per table, or combine every table into a single sheet
  • Table <caption> elements become sheet names automatically
  • Optional number and date parsing so values become real Excel numbers, not plain text
  • Custom output file name
  • Produces a standard .xlsx file compatible with Excel, Google Sheets, LibreOffice, and Numbers
  • 100% client-side processing for privacy

Best Practices

  • Use real table markup: Only genuine <table>/<tr>/<td>/<th> elements are detected — divs or CSS grids styled to look like a table will not be picked up.
  • Add a <caption> to name your sheets: Each table's caption text becomes its worksheet name automatically, so a captioned table produces a cleanly labeled sheet.
  • Use <thead> and <tbody> for clarity: Not required for conversion, but it keeps your markup readable — the first row of each table simply becomes the first row of the sheet either way.
  • Turn off number parsing for formatted text: Disable "Parse numbers and dates" to keep phone numbers, zip codes, or IDs with leading zeros exactly as written instead of becoming plain numbers.
  • Decide separate vs. combined sheets based on your columns: Use one sheet per table for unrelated datasets, or combine into one sheet when tables share the same columns and should read as a single list.
  • Test with the sample first: Load the sample HTML to see a working example before pasting your own markup.

Troubleshooting

No tables were found

Your HTML does not contain a genuine <table> element — content built with <div> or CSS grid/flexbox that only looks like a table will not be detected. Restructure the data using real <table>, <tr>, and <td> tags.

Leading zeros or formatted numbers got changed

With "Parse numbers and dates" enabled, values that look numeric (like phone numbers or zip codes) are converted into real numbers, which can drop leading zeros. Turn that option off to keep the original text exactly as written.

Merged cells look wrong

Basic rowspan and colspan are carried over into the spreadsheet, but very complex or deeply nested merged-cell layouts may not translate perfectly. Simplify the table structure if the exported layout looks off.

A sheet name changed slightly

Excel worksheet names are limited to 31 characters and cannot contain \ / * ? : [ ]. Long or duplicate <caption> text is automatically shortened or given a number suffix to stay valid.

Some rows or columns are missing

Cells hidden with CSS (such as display:none) may be excluded from the export. Check your table markup and CSS if expected data does not appear in the downloaded file.

Common Use Cases

  • Exporting web app reports: Turn a dashboard or report table rendered in HTML into an Excel file for further analysis, sorting, or charting.
  • Saving scraped or copied tables: Convert a table copied from a webpage into a real spreadsheet without retyping every row by hand.
  • Sharing emailed reports: Turn an HTML email summary or invoice table into an .xlsx file that accounting or operations teams can open directly in Excel.
  • Splitting multi-table documents: Convert several related tables (like per-region or per-month breakdowns) into separate, clearly named sheets in a single workbook.
  • Archiving structured web content: Preserve tabular data from a page as a portable, widely compatible spreadsheet format.

Frequently Asked Questions

Is this tool private?

Yes. Your HTML is parsed and converted entirely in your browser and is never uploaded to a server.

What HTML does this tool convert?

Only content inside <table> elements. Other page content — headings, paragraphs, images, and anything outside a table — is ignored.

Can I convert multiple tables at once?

Yes. Choose "One sheet per table" to get a separate worksheet for each table, or "Combine into one sheet" to stack them into a single sheet.

Will formulas or cell colors be preserved?

No. The converter copies the text content shown in each table cell, not spreadsheet formulas or visual styling like colors and borders.

What happens to merged cells (rowspan/colspan)?

Basic merged cells are preserved in the exported spreadsheet, though very complex nested merges may not translate perfectly.

What file format do I get?

A standard .xlsx file (the Excel 2007+ / Open XML format), which opens natively in Excel, Google Sheets, LibreOffice Calc, and Apple Numbers.

Why did my sheet name change slightly?

Excel limits worksheet names to 31 characters and disallows the characters \ / * ? : [ ]. Long or duplicate caption text is automatically trimmed or numbered to stay valid.

Do you store my HTML or the generated spreadsheet?

No. Everything happens locally in your browser and the .xlsx file is downloaded directly to your device.

Share this tool

Share a direct link or embed this tool on your site. Keep the Tooladex attribution link to support the project.