← All posts

How to save and export ChatGPT conversations (2026)


In July, a years-long ChatGPT Pro subscriber was mid-trip when their account was permanently deactivated — appeal denied, decision marked final, every conversation out of reach. The only copy of your history you control is one that lives outside chatgpt.com, and there are five real ways to make one: the official data export (Settings → Data controls), copy-paste, print to PDF, a browser extension — or Carry, our extension, which saves each conversation as a Markdown file in a folder you own. Here’s how each works in 2026, and what each misses.

The methods at a glance

Method What you get Effort Habit or one-off Best for
Official data export Everything, as raw JSON plus an HTML viewer Request, wait up to 7 days, download within 24 hours One-off snapshot A full archive, occasionally
Copy-paste One exchange; code, tables, and math suffer High, per conversation One-off A single short exchange
Print to PDF A fixed picture of one conversation Low, per conversation One-off A shareable record of one chat
Extensions & scripts Markdown or PDF per chat; quality varies by tool One click, until ChatGPT’s page changes Ongoing Convenience, if you vet it
Carry Clean Markdown files, written automatically Automatic once connected Ongoing A working copy that stays current — $59 once, 14-day trial

Method 1: ChatGPT’s official data export

The built-in route: in ChatGPT, go to Settings → Data controls → Export data and confirm. OpenAI prepares a ZIP of your whole account and emails you a download link. The fine print, per the official help doc and the receipts below:

Where
Settings → Data controls → Export data
Arrives
By email, up to 7 days later, from noreply@tm.openai.com
Link lives
24 hours, and only opens for the account that requested it
You get
Every conversation as raw JSON, a chat.html viewer, and images ChatGPT generated
Not included
Files you uploaded, chats deleted before exporting, and any per-project selection — it’s the whole account or nothing
Not available
Business and Enterprise workspaces

Two more things catch people out:

  • It’s a data dump, not a reading format. The JSON stores each conversation as a tree of message nodes; turning it into something you’d browse or search usually means running a converter against it. As one tool-builder put it: “It’s useful as a backup — but it’s not something most people can actually read.”
  • The format shifted quietly in spring 2026. Around April, tool maintainers documented exports arriving as multiple numbered files (conversations-000.json, conversations-001.json, …) instead of one, breaking older converter scripts — with no announcement and no versioning.

Verdict The right occasional full backup — request one a few times a year and file it away. As a way to live with your conversations it’s a snapshot, and a snapshot ages the moment it arrives.

When the data export doesn’t work

chatgpt data export not working is its own search for a reason. The most common failures, and what actually helps:

  • The email never arrives. This is a multi-year thread on OpenAI’s own forum with no staff reply, and fresh reports from July 2026 — one user requested four exports in a day and got nothing. Check spam for noreply@tm.openai.com, and give it the full week before concluding it failed.
  • The link opens “Not Found.” The download is pinned to the requesting account — open it in a browser that’s signed in to exactly that account.
  • Repeat requests reset the queue. One export tool’s maintainers report that a new request silently cancels the pending one, so re-requesting daily can mean never receiving anything. Request once and wait.
  • Some exports are incomplete. One user who had saved conversations by hand before exporting found the official ZIP was missing messages their manual copies contained. Hard to verify at scale, but worth knowing the export isn’t a guaranteed-complete record.

Method 2: copy-paste

For saving this one conversation, selecting the text and pasting it into a note works — until the conversation has structure. Code fences, tables, and math all degrade in plain copy-paste. Users asking OpenAI for a real per-conversation export describe the manual route plainly: “Copy-pasting chats manually is time-consuming and loses structure.”

Verdict Fine for the occasional keeper; not a habit that survives contact with a real working history.

Method 3: export a ChatGPT conversation to PDF

There’s no built-in PDF export — people have been asking for one since 2024 — so the standard route is the browser’s print dialog:

  1. Open the conversation and collapse the sidebar.
  2. Scroll through the whole conversation once, top to bottom, so every message has rendered.
  3. Switch to light theme — dark mode prints poorly, pale text on dark blocks.
  4. Press Cmd/Ctrl+P and set the destination to Save as PDF.
  5. Under the dialog’s more settings, turn on background graphics and turn off headers and footers.
The silent failure: long chats truncate

ChatGPT only renders the messages near your scroll position, and the print dialog only captures what’s rendered — that’s why step 2 isn’t optional. Check the page count in the print preview before saving. Long code blocks also get cut at the print width, losing whatever scrolled horizontally.

If you’d rather click a button, most exporter extensions sell PDF as their headline format — with catches worth reading before you install: one popular exporter caps free users at 3 PDFs per day and generates them on its own servers, which means your conversation makes a round trip through someone else’s machine.

Verdict Good for freezing one conversation to share. A dead end for anything you’d want to search, link, or reuse.

Method 4: browser extensions and scripts

Dozens of Chrome extensions promise one-click export from ChatGPT to Markdown, PDF, or Notion. They differ mechanically, and the mechanism decides both fidelity and risk:

  • DOM scrapers read the rendered page. They break when ChatGPT’s markup changes, and formatting fidelity breaks at the same spot.
  • API readers pull the conversation from ChatGPT’s own backend data, the same thing the page renders from. The open-source chatgpt-exporter userscript works this way and stays actively maintained; structure survives because it never touches the page.
  • Server-side processors upload your conversation to the vendor’s servers to generate the file — a privacy tradeoff hiding inside a convenience feature.

The trust question is bigger than fidelity, because an extension that can read your ChatGPT tab can read everything you type there — and it updates itself silently after you install it. The recent record: in December 2025, researchers revealed that a VPN extension with millions of users had begun harvesting conversations from eight AI platforms after a routine auto-update, shipping them to a data broker. In January 2026, two extensions impersonating AI assistants were caught exfiltrating ChatGPT conversations to remote servers every 30 minutes. By March, security teams were reporting “prompt poaching” as a trend, not a one-off — several dozen incidents in a month.

So vet before you install. The bar any exporter extension should clear:

  • Local-only — no server it phones home to, nothing to exfiltrate.
  • Minimal permissions, scoped to the one site it needs — not “read and change all your data on all websites.”
  • A clear reason for every permission it asks for.

Carry is the extension built to clear that bar, and it’s the next section.

Doing it with Carry

We built Carry because we wanted the last method on this list to exist and it didn’t: something that just keeps a clean copy without asking us to remember. It saves your ChatGPT, Claude, and Grok conversations as Markdown into a folder you own — local-only, no account, no API key. It reads each provider through the session you’re already signed into, so code, tables, and structure come through intact.

Three steps, and the animation below is the whole thing:

Pick your folder

Connect providers

Then it's automatic

Pick a folder, connect the providers you use, and that’s it — from there the recent window stays saved on its own, no clicking and nothing uploaded anywhere. What you’re left with is plain Markdown on your disk: searchable, greppable, and yours whether or not you keep Carry around.

That’s the pitch, and it’s the last we’ll make of it — the homepage has the rest if it sounds useful.

Common questions

How do I export a ChatGPT conversation as a PDF?
There’s no built-in PDF button. Open the conversation, switch to light theme, scroll through the whole chat so every message has rendered, then print (Cmd/Ctrl+P) with “Save as PDF” as the destination. Check the page count in the preview — long chats silently truncate to what the browser has rendered.
Why is my ChatGPT data export not working?
The usual culprits: the email can take up to 7 days and arrives from noreply@tm.openai.com (check spam); the download link expires after 24 hours and only opens for the account that requested it; and export-tool maintainers report that a repeat request silently cancels the pending one, so request once and wait.
Does the official export include everything?
It includes every conversation still in your account as raw JSON, plus images ChatGPT generated. It does not include files you uploaded, conversations you deleted before exporting, or a per-project selection — it’s all-or-nothing, and reading it usually takes a converter.
Does OpenAI keep my deleted chats?
Under OpenAI’s standard policy, deleted and temporary chats are purged within 30 days; a litigation hold that froze deletions ended in September 2025. Separately, under a court order upheld in November 2025, OpenAI began handing a 20-million-conversation anonymized sample to the New York Times’ lawyers in January 2026 — a reminder that history on the server follows the provider’s obligations, not yours.
Can Carry back up my entire ChatGPT history?
Yes — with a license. Full-history backfill walks your whole back-catalog in one resumable background run, deduplicated against what’s already in your folder; it’s the one feature the 14-day trial doesn’t include. Day to day, automatic capture keeps the recent window saved on its own.
Does re-syncing with Carry create duplicate files?
No. Each file carries its conversation id in its frontmatter — the metadata block at the top of the file — so a re-sync updates the existing file in place, even if you’ve renamed it, instead of writing a copy. Files you’ve edited by hand are protected by an edit guard and won’t be overwritten.
What happens when Carry’s 14-day trial ends?
Syncing stops — automatic and manual — until you add a license ($59, once, buyable at any point). Nothing is taken away: the Markdown files already in your folder are plain files on your machine, readable and searchable with or without a license.

Carry is local-only — no server, no account, and only the providers you connect. It saves ChatGPT, Claude, and Grok conversations into your own folder as Markdown — see how it works to get started. If you also use Claude, the Claude export guide covers that side, and the Obsidian walkthrough shows the vault setup.

Save every conversation.

Sync your ChatGPT, Claude, and Grok conversations into your own folder — as clean Markdown, local-only.