Home › Blog › VKT Note Guides › Webpage Table to Markdown
EN中文日本語DeutschESFR

How to Convert a Webpage Table into Clean Markdown (2026)

A table is the one thing on a webpage that copy-paste cannot fake. A paragraph survives a sloppy copy because a paragraph is just a line. A table is a grid, and a grid only works if the cell boundaries survive the trip. Paste one into a plain text editor and the grid collapses into a run of tabs and line breaks that no longer line up with anything. The alternative is to let the browser read the table as structured HTML and write it out as a Markdown pipe table, without the clipboard getting involved at all.

Why Copy-Pasting a Table Goes Wrong

When you select a table and press copy, Chrome puts several flavours on the clipboard at once: rich HTML, plain text, sometimes an image. Where you paste decides which flavour wins, and a Markdown editor almost always takes the plain-text one. That is where the structure dies.

The result is a table that looks like a table and is wrong in three places. You spend the next ten minutes counting pipes instead of reading the numbers.

The Table Picker: Read the Page, Not the Clipboard

VKT Note is a Markdown notebook that lives in Chrome's side panel. The table picker is a button in that panel, and it starts from the opposite direction: instead of asking you to select the table, it asks the page what tables it contains. Nothing needs to be highlighted, and nothing passes through the clipboard.

The scan covers every <table> element in the current tab, including tables rendered inside Shadow DOM and inside same-origin iframes, and it keeps up with pages that append rows while you scroll. Cross-origin iframes are a different story, covered under the limits below.

What comes back is a list — one entry per table, each showing its size as rows × columns and the first 60 characters of its text. The preview is the part that earns its keep. A long page might hold a layout table, a cookie banner table and the data table you actually want, and all three look identical to a converter that only sees markup. A 12 × 5 entry starting with "Plan Monthly" is obviously the pricing grid. A 2 × 1 entry starting with "We use cookies" is not.

  1. Click the table button in the side panel. The list of tables on the current page appears, with sizes and previews.
  2. Pick one, or pick several. A single click handles the common case; a multi-select is there for pages that split one dataset across two tables.
  3. Insert. Several tables become separate Markdown tables in the same note, in the order they appeared on the page — not the order you clicked them.
  4. See what you took. The page scrolls back to the source table and draws an outline around it, so you can confirm the match without hunting for the block again.

Three clicks, no clipboard, and the note is already in the panel you were going to type in. That last part matters on long pages, where the usual workflow is scroll up, copy, scroll down, paste, discover the columns do not line up, scroll up again.

Two Faster Paths

Right-click inside the table

If you are already reading the table, selecting the whole thing is the tedious part — dragging across a twelve-row grid tends to drop the last row. Select any text inside the table instead, right-click, and choose Save to vkt-note. The extension notices that the selection sits inside a table and expands it to the full table before converting, so a single cell or a single row is enough to get the complete grid.

Paste an HTML table into the editor

Copy a table the normal way, then paste it into a note. If the clipboard carries HTML — which it does for a browser copy — the editor converts it into a Markdown table on paste. This is the path for tables that are already on your clipboard from another app, or for a table you copied before deciding where it should live.

Which one to use: the picker when the page is long and you want to choose deliberately, the right-click path when your cursor is already in the table, and paste when the table is already copied.

What You Can Do Once the Table Is Markdown

A table that lands in a notebook stops being a screenshot. The cells are editable text, the columns are pipes you can add or move, and you can put a heading above the table and write your conclusion underneath it in the same note.

Known Limits, Stated Plainly

Merged cells get flattened

Markdown pipe tables have no syntax for colspan or rowspan. There is no standard way to say "this header covers three columns", so VKT Note writes every cell as an ordinary cell. A header merged across three columns becomes one filled cell and two empty ones, or the label stays in the first column only. The data is all there; the layout is not. Expect to spend a minute fixing the header row by hand after the insert. It is better to say this up front than to promise a perfect merge and let you find out later.

Tables that are not really tables

Two kinds of table cannot be scanned, and neither is a bug that a future update will quietly fix. Virtualised tables keep only the rows currently on screen in the DOM — if 20 of 5,000 rows exist as elements, those 20 are all any tool can read. Canvas-based tables, common in dashboards and some charting libraries, draw pixels rather than elements, so there are no rows to walk at all. A table inside a cross-origin iframe belongs to another document on another domain, and an extension is not permitted to reach into it.

For those pages, the honest options are the site's own export button, or the right-click path if the text is selectable. Expand "load more" rows and open collapsed sections first — the picker reads the current DOM, not what you remember seeing.

Frequently Asked Questions

Can I convert tables on the free plan?

Yes. The table picker, the right-click path and HTML table pasting all work on the free tier, which allows 3 notes per day. Deleting a note you created today returns that slot to the quota, so a mistaken insert does not cost you anything.

Does the picker find tables inside iframes and Shadow DOM?

For same-origin iframes and for tables rendered inside Shadow DOM, yes — the scan reaches them. A cross-origin iframe is a different document on another domain, and the extension is not allowed to read it, so tables inside it will not appear in the list.

Can I insert several tables at once?

Yes. Select more than one table in the picker and they are inserted as separate Markdown tables in the same note, ordered by their position on the page rather than by the order you clicked them.

Is any of this data uploaded?

No. Notes are stored locally in the browser using chrome.storage.local with the unlimitedStorage permission. There is no account, no analytics and no server that receives your notes.

Are merged cells preserved?

No. Markdown pipe tables have no syntax for colspan or rowspan, so merged cells are flattened into ordinary cells and the header row may need a minute of manual adjustment after the insert.

Our pick: VKT Note is a side-panel Markdown notebook where a table becomes a note in three clicks — and every note stays in chrome.storage.local, no account, no upload. The free tier covers 3 notes a day (delete one of today's to get the slot back). Premium is $2.99 per month or $9.99 one-time via Creem, and adds unlimited notes, JSON export of everything and priority support.

More VKT tools live in the extensions catalog, or reach us at [email protected].

Keep reading

How to Convert HTML to Markdown in Chrome (3 Ways, 2026)
How to Save Text From Websites With the Source Link Attached