View your ChatGPT export in the browser.
A conversations.json viewer for ChatGPT, Claude, Gemini and Grok data exports. Read any chat, search all of them, and save one as Markdown or text. Nothing is uploaded.
Drop your export here
ChatGPT .zip or conversations.json, Claude .zip, Gemini Takeout (MyActivity.json or .html, or the Takeout .zip), Grok .zip.
Your file is read inside this page. Its security policy allows one network connection, the license check for Pro, and that sends only a license key. How to check
Where to get the export
Each service emails or prepares a download. Menu names change, so look for data export or Takeout if a label differs.
- ChatGPT: Settings, Data controls, Export data. You get an email with a link to a zip that holds
conversations.jsonandchat.html. Drop the zip as it is. - Claude: Settings, Privacy, Export data. The email links a zip with
conversations.json. - Gemini: Google Takeout (takeout.google.com), choose My Activity, then pick only Gemini Apps. Drop the Takeout zip, or the
MyActivity.jsoninside it. - Grok: the data export in your Grok account settings. Grok support is the least tested of the four, because its export format is not documented.
What is free and what is Pro
| Free | Open any export. Browse every chat. Search every message. Read chats with code blocks, images shown as placeholders and attachment names. Download one chat at a time as Markdown or plain text, or copy it. |
|---|---|
| With ThreadKeep Pro | Export everything, or just the chats you searched for or ticked, as one zip of Markdown, PDF or JSON files. Obsidian-style front matter. Move chats to Claude as files sized for a Claude Project. Pro is $59 once or $4.99 a month, and the same key unlocks the ThreadKeep browser extension. |
Your files stay in this tab
This page reads your export with JavaScript running on your computer, and a web worker does the heavy parsing so big files do not freeze the page. The page's Content-Security-Policy, set in its HTML head, blocks every connection except one: the ThreadKeep license check. That check sends the license key and a device label, only after you unlock Pro. It never carries chat text.
To verify it yourself, open your browser's developer tools, switch to the Network tab, and drop a file. You should see no requests at all. You can also read the policy with View Source, and the code in this folder is not minified, apart from the zip library.
Questions
How do I open conversations.json?
Drop the ChatGPT export zip, or the conversations.json from inside it, onto the box above. Newer ChatGPT exports can split chats across several files such as conversations-000.json, and the viewer reads them all.
Which version of a ChatGPT conversation do I see?
ChatGPT stores a conversation as a tree, because editing a message or regenerating an answer creates a new branch. The viewer follows the branch you were last on, which is what you saw in ChatGPT. Older versions of edited messages are not shown.
What happens to images and files?
Images appear as a placeholder with the file name, and attachments are listed by name, size and type. The files inside your zip are not extracted in this version.
How large a file can it open?
The conversations file is read as a stream, so a single JSON file of several hundred megabytes works. A zip is loaded into memory first, and browsers cap that at about 2 GB. If a very large zip fails, unzip it and drop conversations.json instead.
Why are my Gemini chats grouped oddly?
Google's Takeout lists each prompt and answer as a separate activity with no conversation id. The viewer groups prompts that are close together in time into one session. You can change the gap, or show each prompt alone.
Is this made by OpenAI, Anthropic, Google or xAI?
No. It is a free tool from the makers of ThreadKeep, an independent product from Neo Morrison LLC.
Keep your chats organized as you go.
An export is a snapshot. ThreadKeep adds folders, search and one-click export inside ChatGPT, Claude, Gemini and Grok themselves.
See ThreadKeep