DEV Community

tHelloWorld
tHelloWorld

Posted on

Turn Any Web Table into Clean Markdown in One Click

You're writing notes in Notion, Obsidian, or a GitHub README, and you want to drop in a table you found on a web page. Markdown tables are great — but turning a rendered HTML table into clean Markdown by hand is tedious: you retype every cell, count the pipes, line up the header separator row, and fix it when one cell had a comma or a line break in it.

Here's how to go from a web table to clean Markdown without the busywork.

The manual way (and why it's annoying)

A Markdown table looks like this:

| Name | Role | City |
| --- | --- | --- |
| Ada | Engineer | London |
| Linus | Maintainer | Portland |
Enter fullscreen mode Exit fullscreen mode

To build that from a web table by hand you have to:

  • Retype or copy-paste every cell.
  • Add a | --- | separator row with the right number of columns.
  • Escape any | characters that appear inside cell text, or the table breaks.
  • Collapse line breaks inside cells, or the row splits.
  • Get the alignment colons (:---, ---:, :---:) right if you want alignment.

For a 3-row table, fine. For anything bigger, it's a chore — and copy-pasting from the browser usually gives you tab-separated junk, not Markdown.

Online converters: paste HTML, get Markdown

There are web tools where you paste raw HTML and get Markdown back. They work, but they assume you already have the table's HTML:

  • You have to open DevTools, find the <table> element, copy its outer HTML, and paste it into the converter — several steps before you even start.
  • Pasting the rendered text instead of the HTML usually fails, because the converter needs real <table> markup.
  • You're pasting page content into a third-party site, which you may not want for anything sensitive.

Good in a pinch; clumsy as a daily workflow.

One click, straight from the page

A browser extension can read the table the way your browser already rendered it and give you Markdown directly — no DevTools, no copying HTML, no third-party site.

Table Grab is a small, free Chrome extension that does exactly this:

  1. Open the page with the table.
  2. Click the Table Grab icon — it lists every table on the page, each with a smart title.
  3. Hover to preview and highlight the right one on the page.
  4. Pick Markdown and click Copy.

Paste straight into Notion, Obsidian, a GitHub issue or PR, or any Markdown doc.

It handles the things that break a hand-rolled table:

  • | inside cells are escaped so the table stays intact.
  • Line breaks inside cells are collapsed cleanly.
  • Merged cells (rowspan / colspan) are expanded into the right columns instead of misaligning.
  • It also reads JavaScript-rendered and <div>-based tables that "copy HTML" tricks miss, because it works off the rendered page, not the raw source.

And it's not only Markdown — the same click can give you CSV, Excel or JSON when you need those instead.

Why local-only

Table Grab reads the table on the page you're looking at, only when you click the icon. No login, no account, no analytics — nothing leaves your browser. For something that touches whatever page you're on, local-only felt like the only honest default.

Try it

Free, no sign-up, no row limit: Table Grab on the Chrome Web Store

If you hit a table it converts wrong, drop the URL in the comments — that feedback shapes the next version.

Top comments (0)