A chat exporter turns ChatGPT conversations into files. The most reliable kind reads OpenAI's official data export rather than scraping the page, because scraping misses messages that ChatGPT has not loaded. ChatExports converts the export locally in your browser.
Short answer
A chat exporter turns ChatGPT conversations into files. The most reliable kind reads OpenAI's official data export rather than scraping the page, because scraping misses messages that ChatGPT has not loaded. ChatExports converts the export locally in your browser.
Chat exporters fall into two families with meaningfully different behaviour, and picking the wrong one produces incomplete files you may not notice are incomplete.
Scrapers
These read the conversation currently open in your browser, typically as an extension or bookmarklet. They are immediate: one click on the chat you are looking at.
They inherit the page's limitations. ChatGPT keeps only nearby messages loaded, so scrapers regularly miss the start of long conversations. They cannot see conversations you have not opened, so bulk export is off the table. And as extensions, they need permission to read page content, often across all sites.
Export converters
These read the archive OpenAI produces. There is a one-time cost of requesting the export and waiting for the email.
In exchange, they see every message of every conversation with no rendering involved, get original timestamps, resolve edited and regenerated messages correctly, and can process your entire history at once. No extension, no permissions.
Using ChatExports
Request your archive from ChatGPT under Settings, then Data Controls, then Export Data
Click the confirmation link OpenAI emails you
Download the ZIP within 24 hours
Drop the ZIP or conversations.json onto the converter
Browse, search, and select conversations
Choose Word, PDF, Markdown, CSV, or plain text and download
Each conversation becomes its own file named from its title. Bulk export handles thousands in one pass.
What it preserves
The details that determine whether an exported file is actually useful:
Speaker labels on every turn
Code blocks in monospace, wrapped rather than clipped, language retained
Original timestamps
Correct ordering through branches created by editing or regenerating
Tables and lists as real structures, not flattened text
Non-Latin scripts and emoji, rendered rather than dropped as empty boxes
Privacy model
Conversion is JavaScript running in your browser. The file is read from disk, held in memory, and written back out as downloads. Nothing is sent to a server.
This is not a minor detail. conversations.json is the most revealing single file your AI account can produce, containing everything you have ever asked. Any exporter that uploads it for processing is asking you to hand that over for a task that does not require a server at all.
Treat credential requests as disqualifying. No legitimate exporter needs your ChatGPT login.
Claude and Gemini
The same converter reads Claude's JSON export and Google Takeout's Gemini data. One tool and one workflow covers all three, rather than a separate exporter per platform. See the Claude exporter and Gemini exporter pages for platform specifics.
Frequently asked questions
Do I need to install a chat exporter?
No. ChatExports runs in the browser with nothing to install and no extension permissions to grant.
Can a chat exporter export conversations without the data export?
Only scrapers can, by reading the open page, and they miss messages ChatGPT has not loaded. Converters need the export file but see everything.
Which formats can conversations be exported to?
Word, PDF, Markdown, CSV, and plain text. Each conversation becomes a separate file named from its title.
Is there a limit on how many chats can be exported?
No fixed limit. Archives with thousands of conversations convert in one pass, though very large files take a moment to parse.