HTML Table to Markdown Converter

Paste HTML or copy a table from any web page and get clean Markdown tables.

Paste HTML or a table copied from a web page
Markdown Output

How to Use This Tool

  1. Paste raw HTML containing one or more <table> elements, or copy a rendered table from a web page and paste it directly
  2. Click "Convert Tables to Markdown"
  3. Each table is converted separately, with its own Markdown block and rendered preview
  4. Copy a single table, copy them all at once, or download as a .md file

About HTML Table to Markdown Conversion

HTML tables can be far more complex than Markdown tables: they support header and footer sections, merged cells, nested markup inside cells, and arbitrary styling. This converter normalizes all of that into the simple pipe-table syntax used by GitHub Flavored Markdown. Rows from thead, tbody, and tfoot are read in document order, both th and td cells are supported, and any extra markup inside a cell (links, spans, line breaks) is flattened to plain text.

Because Markdown has no concept of merged cells, columns spanned with colspan are flattened: the content stays in the first column and the spanned columns become empty cells, so every row keeps a consistent width. Rows with fewer cells than the widest row are padded the same way, which means the output always renders as a valid table. Everything runs locally in your browser — no HTML is ever uploaded.

Frequently Asked Questions

Can I paste a table copied straight from a website?

Yes. When you select and copy a rendered table in your browser, the clipboard carries an HTML version of it. Pasting into the input area captures that HTML automatically and converts it on the spot.

What happens if my HTML contains multiple tables?

Every table found in the input is converted. Each one gets its own Markdown block and preview, plus a copy button, and the "Copy all" button joins them with blank lines between tables.

How are header rows detected?

The first row of each table becomes the Markdown header row. Tables that use thead with th cells therefore convert exactly as you would expect; for tables without an explicit header, the first data row is promoted instead.

Related Tools