GuideUpdated October 2026

How to export ChatGPT chats to Markdown

Short answer

ChatGPT can copy one answer as Markdown, and its data export gives you JSON, not .md files. To get each chat as its own Markdown file, use an extension such as Chat to Markdown: it saves every conversation into a folder you pick and keeps the files up to date. Free covers 10 chats and keeps them up to date.

On this page
  1. The three ways, compared
  2. 1. Copy one answer
  3. 2. The official data export
  4. 3. Every chat as a .md file
  5. What the file looks like

Markdown is the plain-text format ChatGPT already writes in: **bold**, # headings, lists and fenced code blocks. A chat saved as Markdown opens in any text editor, shows up in your computer’s search and works as a note in apps like Obsidian. Here is what each method gives you.

The three ways, compared

MethodWhat you getBest for
Copy buttonOne answer, as Markdown, on the clipboardQuoting a single reply
Data exportA ZIP with conversations.json and chat.htmlA one-off archive of everything
Chat to MarkdownOne .md file per chat, updated as chats continueKeeping chats as notes

1. Copy one answer

Under every ChatGPT answer there is a copy icon. It copies that answer as Markdown, with headings, lists and code fences intact.

  1. Hover the answer and click the copy icon under it.
  2. Paste into a .md file or your notes app.

The catch: you get one answer at a time, without your question, the chat title or the date. A long chat means dozens of trips between the two windows.

2. The official data export

ChatGPT can email you everything in your account.

  1. Click your profile picture, then Settings.
  2. Open Data controls and choose Export data, then Confirm export.
  3. Wait for the email from OpenAI and download the ZIP. The link expires, so download it soon.

Inside the ZIP, chat.html shows all your chats on one long page, and conversations.json holds the raw data. Neither is Markdown.

You can convert the JSON with a script. Each chat is a mapping of messages linked by parent and children ids, because edits and regenerations create branches. Start at current_node, walk back to the root, and print each message’s content.parts. Keep in mind the export is a snapshot: chats you continue tomorrow are not in it.

Work accounts: on ChatGPT business workspaces, an admin can turn the export off.

3. Every chat as a .md file

Chat to Markdown is a Chrome and Edge extension that writes each conversation to its own Markdown file, in a folder on your computer.

  1. Add Chat to Markdown to Chrome or Edge.
  2. On the welcome page, click Choose a folder and pick where the files should go. When Chrome asks, choose Allow on every visit.
  3. Turn on ChatGPT on the same page (Chrome asks to allow chatgpt.com) and stay signed in to chatgpt.com in this browser.
  4. Press Start saving. The first chats are saved within a minute.

From then on it checks every 3 hours (or as often as every 15 minutes, or at set times of day) and writes new and changed chats. To save the chat you are looking at right away, click Save next to Share at the top of the chat, or press Alt+Shift+SOption+Shift+S. Its menu has Copy as Markdown, which puts the whole chat on your clipboard.

It reads chats with your own browser session and writes straight to your disk. Nothing passes through a server.

Have the export ZIP already? Pro can import it and write every chat in it as Markdown in one go.

What the file looks like

Each chat becomes a file in a folder for its service, like ChatGPT/2026-10-17 Lisbon food trip.md inside the folder you picked:

---
title: "Lisbon food trip"
source: "ChatGPT"
url: "https://chatgpt.com/c/68f1a2…"
id: "68f1a2…"
model: "gpt-6"
created: 2026-10-17T09:41:00
updated: 2026-10-17T12:15:00
tags: [ai-chat, chatgpt]
---

<!-- chattomarkdown:start · updated automatically on sync -->
# Lisbon food trip

## You

Plan 3 days in Lisbon for someone who mostly cares about food.

## ChatGPT

**Day 1 · Alfama and Baixa**
- Pastel de nata at Manteigaria
<!-- chattomarkdown:end -->

Only the block between the two markers is rewritten when the chat changes, so the same file stays up to date with no duplicates, and anything you add above or below it stays. The version before each change is kept too, and the extension’s reader shows what changed, line by line. Code blocks keep their language tag, ChatGPT Projects become subfolders, and you can change the file name pattern and which frontmatter fields are written.

Questions

Can’t find your answer? Write to contact@shimanski.dev. A person reads every message.

Does ChatGPT have a built-in Markdown export?

Not for whole chats. The copy button under each answer copies that one answer as Markdown, and the data export in Settings gives you JSON and HTML, not Markdown files.

Are images included?

The copy button drops them. The data export includes uploaded and generated images as separate files. Chat to Markdown downloads them into an attachments folder next to the note and embeds them, on Free too.

Can I export only one chat?

Yes. With Chat to Markdown, open the chat and press Save next to Share, or Alt+Shift+SOption+Shift+S. That works on Free for any chat, however old, until your 10 free chats are used.

What about edited or regenerated answers?

A ChatGPT chat is a tree: every edit or regeneration starts a branch. The page shows one path through it, and Chat to Markdown saves that path. Turn on Earlier versions in its Settings and it also keeps the other versions in a folded section under each message. The raw export contains every branch.

Every chat you’ve had, in a folder you own.

Markdown files from 8 AI chat services, saved on their own and kept up to date.

Add to Chrome

Free for 10 chats, kept up to date. No account needed.

Compare plans