PRODUCTIVITY · CHROME

Copy as Markdown
Stop Pasting Formatting Junk

Every time you copy text from a web page, you also copy its invisible HTML — fonts, colors, smart quotes, broken line breaks. Here is what actually happens, and which Chrome extensions fix it.

Updated August 2026 · 5 minute read

Why copied web text looks wrong when you paste it

When you press Ctrl/Cmd+C on a selection, the browser doesn't put plain text on your clipboard. It puts the entire HTML fragment — every <span>, inline style, tracking pixel and nested table cell the page used to render it. What happens next depends entirely on where you paste:

📄 Into email or Word

Rich-text targets keep the markup. You get surprise fonts, blue underlines from 2014 CSS, and line breaks in the wrong places.

📝 Into Notion, Obsidian or a CMS

Markdown editors convert the HTML — sometimes well, often not. Nested divs become empty lines; buttons become stray links mid-sentence.

💻 Into an editor or AI chat

Pasting into a chat prompt drags along invisible characters and smart quotes that break code snippets and prompts silently.

A copy-as-Markdown extension intercepts this: it converts your selection before it hits the clipboard, so what you paste is exactly what you selected — structured if you want Markdown, spotless if you don't.

Chrome extensions for copying as Markdown or clean text

🧹 Clean Copy — free & open source

Copies any selection as clean text or proper Markdown from the right-click menu. Headings become #, links become [text](url), lists and bold survive. No account, no tracking, runs 100% locally. MIT licensed.

Install Clean Copy from the Chrome Web Store · install guide →

No Chrome, or just want to try it first? Use Clean Copy Web — paste any messy text and get clean Markdown, right in your browser. Or grab the Clean Copy bookmarklet — one drag to your bookmarks bar and it works in any browser, no install.

📝 Markdown-paste converters

Several extensions convert selections to Markdown with configurable rules (link style, image handling). Good if you need fine control over how tables or images are emitted; heavier than most people need for everyday research notes.

🧽 Plain-text clipboard tools

"Copy as plain text" utilities strip everything, including structure. Great for emails, but you lose headings, links and lists — reach for these only when formatting must die completely.

⚙️ Editor built-ins

Notion, Obsidian and VS Code each handle pasted HTML differently, and none let you preview what will arrive. A clipboard-side extension gives you one consistent result everywhere, regardless of the paste target.

How to install Clean Copy in 30 seconds

  1. Install Clean Copy from the Chrome Web Store — one click, nothing to unzip.
  2. Select any text → right-click → Clean Copy → choose Markdown or clean text. Done.

The full illustrated guide lives on the Clean Copy page. The extension needs no special permissions beyond reading your selection at copy time, and nothing ever leaves your machine.

Frequently asked questions

Is there a free Chrome extension that copies as Markdown?

Yes — Clean Copy is free and open source. Download the zip from GitHub releases and load it unpacked; no store account needed.

Why does my pasted text have weird fonts?

You pasted rich HTML, not text. The browser copies the selection's full markup by default. A clean-copy extension converts it first.

Does Markdown copying keep links and headings?

Yes — that's the point. Headings map to # levels, links to [text](url), lists to -/1., bold to **. Use clean text instead when you want zero formatting.

Does it work in Edge or other Chromium browsers?

Extensions loaded unpacked in Chromium-based browsers generally work the same way — Edge and Brave both support the Load unpacked flow via their equivalent of chrome://extensions.

Try Clean Copy free →

Related: Copy ChatGPT into Word · HTML to Markdown converter

Dansk version af denne guide

Related: HTML to Markdown from the terminal — Working in a shell instead of the browser? The CLI guide covers npx one-liners and batch conversion.