Tidyleaf

How to export a ChatGPT conversation to Obsidian

To export a ChatGPT conversation to Obsidian, save it as a Markdown (.md) file inside your vault folder. ChatGPT has no button for this, so there are two routes. For one chat, copy it or use an exporter extension to produce a .md file with a front matter block, and drop it in the vault. For your whole history, request ChatGPT’s data export and convert its conversations.json into one note per chat. Both are below, followed by file naming, tags, linking and privacy.

The Obsidian half is easy: Obsidian stores notes as Markdown plain text files in a vault folder, so any .md file you save there shows up in the app. The hard part is getting good Markdown out of ChatGPT.

Workflow 1: one chat into the vault

Option A: copy and paste (free, built in)

Each ChatGPT answer has a copy button, or you can select the text by hand. Paste into a new note.

Option B: Obsidian Web Clipper (free)

Replies in the Obsidian forum thread Exporting your ChatGPT conversations to Obsidian say Obsidian’s official Web Clipper can clip ChatGPT and Claude chats. We have not tested it on long chats, code or math, so try one conversation first.

Option C: an exporter extension (the whole chat, one click)

An extension adds an Export button to chatgpt.com and writes the open conversation to a file. We cover ours, Tidyleaf AI Chat Exporter, in its own section below. Whichever one you pick, check four things in the output:

  1. Code fences keep the language, so python ` is highlighted in Obsidian.
  2. Math stays as LaTeX between $ and $$, which Obsidian renders, instead of a jumble of Unicode.
  3. Speakers are labelled, so you can tell your prompt from the answer.
  4. The whole conversation comes through, not just the part on screen.

Workflow 2: all your chats, from conversations.json

Step 1: request ChatGPT’s data export

In ChatGPT, open your profile menu, then Settings, Data controls, and under Export data select Export, then Confirm export. OpenAI’s help page says the export can take up to 7 days, arrives by email (or SMS for phone-only accounts), and the download link expires 24 hours after you receive it. Self-service export is not available in ChatGPT Business, Enterprise or Healthcare workspaces. The ZIP holds your chat history as a conversations.json file and a chat.html page.

Step 2: turn the JSON into notes

This is where the built-in route stops. conversations.json is one large file in which each conversation is a tree of message nodes, not a readable transcript, and chat.html is one long page with no Markdown. Neither can be dropped into a vault as it is.

The Obsidian forum thread linked above offers three ways to convert it:

Read any script before you run it. After converting, spot-check a long chat, one with code and one with math.

File naming that holds up

Chat titles are messy: duplicates, slashes, colons, question marks. A scheme that works:

Tidyleaf’s bulk export follows this scheme (see below); the same rules work on any script’s output.

Front matter and tags

Obsidian stores properties as YAML at the top of a note, between two --- lines. Its three default properties are tags, aliases and cssclasses, and tags is a list. A useful block for a chat note looks like this:

---
title: "Debugging a regex"
provider: "ChatGPT"
created: 2026-10-09
url: "https://chatgpt.com/c/..."
tags:
  - ai-chat
  - chatgpt
---

Why these fields:

Linking chats to the rest of your notes

A chat note is raw material. It becomes useful when other notes point to it.

Keeping the vault private

Chats often hold names, work details, keys pasted by mistake and half-formed ideas. Before you import hundreds of them:

Option: Tidyleaf AI Chat Exporter

Disclosure: Tidyleaf is us, and this is our product.

Tidyleaf AI Chat Exporter is one extension for chatgpt.com, claude.ai and gemini.google.com. On ChatGPT it asks for the conversation the way ChatGPT’s own page does, with your existing login, so you get the full active branch of the chat, not just what is on screen. Your chats are never uploaded: there is no Tidyleaf server, no account and no tracking. The only thing it sends anywhere is a Pro license key, if you enter one, to the payment provider Polar to check it.

Free: export the open chat to Markdown, plain text, JSON or PDF. Every message is labelled User or Assistant, code blocks keep their language tag, tables, lists and links become Markdown, and LaTeX math is kept as source between $ and $$. That plain Markdown file already works in a vault, and you can paste in your own front matter.

Tidyleaf Pro ($24 a year or $3.99 a month, one key for every Tidyleaf extension) adds:

Add to Chrome, free Tidyleaf AI Chat Exporter is on the Chrome Web Store. It needs Chrome 114 or later.

More on the extension: Tidyleaf AI Chat Exporter.

FAQ

Can Obsidian import ChatGPT’s conversations.json directly? No. Obsidian works with Markdown files, and conversations.json is one large file in which each chat is a tree of message nodes. Convert it to one Markdown note per chat first, with a script, a community plugin such as Nexus AI Chat Importer, or an exporter with bulk export.

Will code blocks and LaTeX survive the export? They survive if the exporter keeps code fences with their language tag and leaves math as LaTeX source between $ and $$. Check one chat with code and one with math before you convert everything.

What should I put in the front matter of a ChatGPT note? A title, a created date, the chat URL and a short tags list are enough. Keep tags few and shared across chats, such as ai-chat and the provider name, and add topic tags by hand later.

Is it safe to put my ChatGPT history in an Obsidian vault? Obsidian keeps notes as local files on your computer, so the risk is wherever the vault goes next: a sync service, a Git repository or a published site. Review chats for secrets and keep them in a folder or vault that you do not share.

Tidyleaf is an independent maker of browser extensions. Not affiliated with, endorsed by or sponsored by OpenAI or Obsidian. ChatGPT and Obsidian are trademarks of their respective owners, named only to describe the products the extension works with.