How to Copy a ChatGPT Conversation (the Whole Chat, No Broken Formatting)

Copying a single ChatGPT response is easy. Copying an entire conversation without the formatting turning to mush the moment you paste it somewhere else is the part people actually struggle with. This guide covers both — the built-in copy button, the workarounds for grabbing a whole thread, and what to do once you’re pasting into Word, Google Docs, or Notion.

Can you copy and paste from ChatGPT?

Yes, and it’s allowed — under OpenAI’s terms of use (as of mid-2026), you own the outputs you generate, and there’s nothing stopping you from copying, pasting, saving, or publishing them. If you’re double-checking because a client or employer asked, the terms are the source to point to, not a general worry about whether copying is “against the rules.” It isn’t.

The actual friction isn’t legal, it’s technical. ChatGPT gives you a clean way to copy one message, but nothing native for grabbing a whole conversation, and whatever you do copy tends to lose its shape the moment it lands somewhere else. That’s the part worth understanding before you paste your first long chat into a document and watch the formatting fall apart.

Why formatting breaks when you copy from ChatGPT

Formatting breaks because ChatGPT responses are rendered as styled HTML in your browser, not stored or displayed as plain text. Every heading, bullet list, code block, and table you see on screen is a live DOM element with CSS attached — bold text is a <strong> tag, a code block is a <pre><code> pair with syntax-highlighting classes, a table is an actual <table> with rows and cells.

When you select that content and copy it, your browser copies a rich-text (HTML) representation alongside a plain-text fallback. Where things go wrong is on the paste side: Word, Google Docs, Gmail, and Notion each have their own rules for interpreting incoming HTML, and none of them match ChatGPT’s styling exactly. The result is predictable and consistent across tools:

  • Tables collapse. A tidy comparison table often pastes as a wall of tab-separated or run-together text, because the destination app can’t map ChatGPT’s table markup onto its own table model.
  • Code blocks lose their fencing. The triple-backtick fence and language tag (```python) exist in the underlying Markdown but not in the rendered HTML, so a pasted code block frequently arrives as plain paragraph text with the monospace font stripped, or with syntax-highlighting colors baked in as inline styles that clash with whatever theme you’re pasting into.
  • Headings and lists inherit weird styles. Font sizes, line spacing, and bullet indentation from ChatGPT’s stylesheet can bleed into your document’s own formatting, which is why a pasted response sometimes looks fine at first glance and then visibly out of place once you start editing around it.

None of this is a ChatGPT bug exactly — it’s what happens any time you copy rendered rich text between two apps that don’t share a formatting model. The fix isn’t a better copy technique; it’s copying the underlying Markdown instead of the rendered HTML, which is what the next two sections cover.

How to copy a single ChatGPT response

For one message, use the built-in copy button under the response — it copies the reply as Markdown, not the rendered HTML, which is why a single copied response tends to paste more cleanly than a manual text selection. As of mid-2026, that button sits in the small icon row that appears under each response (alongside regenerate and feedback icons).

That Markdown-first behavior is worth knowing because it explains an otherwise confusing inconsistency: if you drag-select text with your mouse instead of using the copy button, you’re copying the rendered HTML — the same rich-text copy described above — and you’ll hit the same broken-table, broken-code-block problems. The copy button and manual selection are not interchangeable, even though they look like they’d produce the same result.

The limitation is scope. The copy button is per-message. There’s no equivalent “copy whole conversation” button next to it, which is the actual pain point for anyone trying to save or share a full back-and-forth rather than one answer.

How to copy an entire ChatGPT conversation

There’s no native button for this — copying an entire ChatGPT conversation means either a manual select-all, the Share link (which isn’t really a copy), or a one-click extension. Here’s how each holds up.

Manual select-all. Click at the top of the first message, scroll to the bottom, and shift-click to select everything in between (or use Ctrl/Cmd+A inside the conversation pane, where supported). This works, technically, but it’s the same rich-text-copy problem from the section above, at conversation scale: every code block and table in the thread inherits the same formatting mangling, and long conversations make the manual scroll-and-shift-click process genuinely tedious. You’ll also often sweep up UI chrome — timestamps, button labels, “Regenerate” text — that isn’t part of the actual conversation.

The Share feature. ChatGPT’s Share button generates a public, read-only link to a snapshot of the conversation. It’s useful for sending someone a link to look at, but it’s not a copy in any useful sense — you can’t paste a share link into a document and get the conversation text, it stops reflecting the chat if you keep talking in it, and it puts a copy of the conversation on a public URL, which isn’t what you want if the content is sensitive.

A one-click “Copy as Markdown” extension. This is the option that actually solves the problem: an extension reads the full conversation from the same data ChatGPT’s own page already loaded, converts it to proper Markdown — fenced code blocks, real tables, correct headings — and puts the whole thing on your clipboard in one click, ready to paste anywhere that isn’t trying to reinterpret HTML.

Full disclosure: we make one of these, NorthLab Folders. Its “Copy as Markdown” action works on the entire conversation, not just one message, is free (not a paid feature), and works identically on both chatgpt.com and claude.ai. The honest limit: it’s a browser extension, so it only sees what’s loaded in your authenticated tab — it can’t retroactively recover a conversation you’ve already deleted, and if you want the whole thing saved as a file rather than sitting on your clipboard, that’s the single-chat export feature, covered in more detail in how to export ChatGPT and Claude conversations to Markdown and in our dedicated export walkthrough.

Pasting into Word, Google Docs, or Notion

The fix depends on where you’re pasting, because each app handles incoming rich text differently.

Word and Google Docs. Neither app understands Markdown syntax — they only understand rich text and plain text. Your best move is paste-without-formatting: Ctrl+Shift+V on Windows, Cmd+Shift+V on Mac, or the “Paste and match style” option in Google Docs’ right-click menu. This strips ChatGPT’s inherited styles and drops in plain text, which avoids the worst of the visual mismatch, but you’ll still need to manually reformat anything structural — re-indent lists, rebuild tables, and re-apply a monospace font to code blocks, since plain-text paste doesn’t know those existed as distinct elements. If you copied the response as Markdown (via the per-message copy button or a whole-chat Copy-as-Markdown tool), you’re pasting raw **bold** and ```code``` syntax as visible characters — readable, but not rendered, until you either reformat by hand or run it through a Markdown-to-rich-text converter first.

Notion. This is the one paste destination that’s actually built for this. Notion’s editor recognizes Markdown syntax on paste — paste in a block of text containing ## Heading or a fenced code block, and Notion converts it into a native heading block or a native code block automatically, no reformatting needed. This is why exporting a ChatGPT conversation as Markdown first, rather than fighting with a rich-text copy, pays off specifically if Notion is where it’s headed.

Obsidian and other Markdown-native editors behave the same way as Notion, or better — since the whole app is built around .md files, pasted Markdown just is the document, with zero conversion step.

The pattern across all three: the closer your destination app is to understanding Markdown natively, the less cleanup a copied conversation needs. That’s the real argument for copying (or exporting) as Markdown in the first place, rather than relying on a rich-text paste and cleaning up the damage afterward. If you’re trying to build a more permanent, searchable home for your conversations rather than pasting one at a time, organizing your ChatGPT chats into folders first makes it obvious which ones are worth exporting.

Frequently asked questions

Can you copy and paste from ChatGPT?

Yes, and it’s allowed — under OpenAI’s terms of use (as of mid-2026), you own the outputs you generate and can copy, paste, and reuse them freely. The only real limitation is technical, not legal: copying preserves formatting inconsistently depending on where you paste, and there’s no native way to copy more than one message at a time.

Why does formatting break when I copy from ChatGPT?

ChatGPT renders responses as styled HTML in the browser, not plain text — headings, code blocks, and tables are all live DOM elements with their own CSS. When you copy that and paste it somewhere else, the destination app tries to guess at the original styling instead of reading the underlying Markdown, so code blocks lose their fencing, tables collapse into run-on text, and font sizes jump around.

How do I copy an entire ChatGPT conversation, not just one message?

ChatGPT has no built-in “copy whole conversation” button. Your options are a manual click-and-drag select-all (messy on long chats), the Share feature (makes a read-only public link, not a copyable document), or a one-click “Copy as Markdown” feature from an extension like NorthLab Folders, which grabs the whole thread as clean Markdown in a single click.

How do I paste ChatGPT text into Word, Google Docs, or Notion without it breaking?

In Word or Google Docs, use paste-without-formatting (Ctrl/Cmd+Shift+V) and accept that code blocks and tables will still need manual cleanup, since neither app understands Markdown syntax natively. Notion is the exception — paste raw Markdown text into a Notion page and it auto-converts headings, lists, and code blocks into native Notion blocks.

Is there a one-click way to copy an entire ChatGPT conversation as Markdown?

Yes — NorthLab Folders adds a “Copy as Markdown” action to every conversation on chatgpt.com and claude.ai. It’s a free feature, it copies the whole chat (not just one message) straight to your clipboard as clean Markdown, and the conversion happens entirely in your browser.