Why the usual methods fail
The problem is not Notion — it is what reaches the clipboard.
Select + copy grabs too much
Drag-selecting a table also catches captions, ads and surrounding text — and cells collapse into one long run of text when pasted.
Plain text has no structure
Without consistent separators, Notion cannot see where one cell ends and the next begins — everything stacks in a single column.
⌨️ Retyping does not scale
Fine for three rows. Not fine for a 200-row pricing matrix you need refreshed every quarter.
The method: two clicks
The free Clean Copy extension for Chrome and Firefox converts exactly the table under your cursor into clean markdown — which Notion parses back into rows and columns on paste.
1. Install
Chrome Web Store or Firefox Add-ons — search for "Clean Copy",
install, done.
2. Copy the table as Markdown
Open the page, click anywhere inside the table,
click the Clean Copy icon, choose "Copy as Markdown".
3. Paste into Notion
Create a new database (or open an existing view),
select the first target cell, press Ctrl+V (Cmd+V on Mac).
Each row becomes a page, each column a property —
the first row supplies the property names.
Pasting into an existing database? Check that the
column order matches your properties first.
Rows become records
Clean Copy reads the real HTML <table> element, so each <td> lands in its own Notion property automatically.
No junk rows
No ad fragments, cookie banners or captions — only the table you pointed at.
Works behind logins
Dashboards, admin panels and SaaS reports all work, because conversion happens in your own logged-in browser session.
Your options compared
| Method | Keeps structure? | Catch |
|---|---|---|
| Select + copy text | No | Captures extra content, cells collapse to one column |
| Screenshot + OCR | After cleanup | Number errors are hard to spot |
| CSV download + import | Sometimes | Only where the site offers export; loses formatting |
| Browser table scrapers | Often | Setup per page; break behind logins |
| Clean Copy — Copy as Markdown | Yes | Free browser extension required |
If the table sits behind a login or renders dynamically, server-based scrapers and import flows fail — a local copying tool that works in your own session is the reliable option.
The copy is free. Pro is for the tables you copy over and over.
Everything in this guide is free, and it stays free: the extension, Copy as Markdown, and pasting into Notion. There is no account, no key, no expiry, and no limit on how much text you paste. If you copy a table once a week, the free version is the whole answer.
The line the article draws itself is a 200-row pricing matrix refreshed every quarter. That is not a copying problem — it is a repetition problem, and repetition is what Pro pays for: converting a whole batch of tables at once on the web tool, and cleanup rules you write once when a site wraps every cell in a currency span, a tracking pixel or a footnote marker.
| What you get | Free | Clean Copy Pro — $19/year |
|---|---|---|
| Copy as Markdown, paste into Notion | included, forever — one table at a time | included |
| Conversion modes in the extension and on the web tool | every conversion mode in the extension and on the web tool | included |
| How much text you can convert | no limit on how much text you paste | included |
| A quarterly refresh of several tables at once | — | batch conversion on the web tool |
| Strip a site's own junk from every cell, once | — | custom cleanup rules in the browser extension |
| Machines covered by one licence | — | 5 |
One licence covers 5 machines or installs. If you copy a table now and then, keep the free version — it is not a trial, and nothing in this guide is locked behind the paid one.
Frequently asked questions
How do I copy a table from a website into Notion?
Install the free Clean Copy extension for Chrome or Firefox, click the icon while the table is on screen, choose Copy as Markdown — then paste into a Notion database view with Ctrl+V (Cmd+V on Mac). Notion turns the markdown into rows and columns, and the first row becomes the property names.
Why do pasted tables end up in one column in Notion?
If the clipboard only holds plain text without consistent separators, Notion cannot tell where one cell ends and the next begins — so values stack in a single column. Copying the actual table element as markdown (which Clean Copy does) preserves the row and column boundaries Notion needs.
Can I paste directly into an existing Notion database?
Yes. Open the view you want to fill, select the first target cell and paste. Notion fills existing properties left to right — check that the column order matches your properties before pasting.
Does it work on tables behind a login?
Yes. Clean Copy runs in your own logged-in browser session, so any table you can see while signed in can be copied — dashboards, admin panels, SaaS reports. Server-based scrapers typically fail here.
Is anything sent to a server?
The table does not. Clean Copy reads and converts it in your own browser, so it never reaches a server — the result only exists on your clipboard until you paste it where it needs to go. Two other things do leave your browser, and both only when you ask for them: an anonymous page-view count, and — if you activate a Clean Copy Pro key — that key and a device id, sent to our license API on mahope.tools so the license can be validated.
Related: Same guide in Danish · Website Table Into Excel · Table From Website to Google Sheets · Table From Website to Airtable · HTML-tabel til CSV (DA) · HTML table to CSV converter
Free e-book: Build Your First Chrome Extension
The complete guide is available as a free EPUB — no signup required.
Get the free e-book →Want all six guides? Complete EU Compliance Bundle — all six listed together, each a free EPUB.
Keeping websites online? DeskUptime is a free desktop uptime & SSL-expiry monitor for macOS, Linux and Windows.
Need to copy a table or code from a website? Clean Copy strips formatting, scripts and junk, and outputs clean Markdown. Available as a browser extension, web tool, and CLI.