ChatGPT Projects and Claude Projects are how power users organize their AI work. A project is a folder containing multiple conversations, shared files, custom instructions, and AI-generated artifacts, all scoped together. They’re incredibly powerful. They’re also impossible to export completely, because neither platform offers a “download the whole project” button.
Here’s what each export method actually delivers, and what it leaves behind.
What’s actually inside a project
Before you export, understand what you’re trying to extract:
- Conversations, every chat thread inside the project. Could be 3, could be 50.
- Uploaded attachments, PDFs, images, spreadsheets, code files you uploaded as context.
- AI-generated artifacts, code files, documents, images the AI created during conversations. In ChatGPT these include Canvas docs; in Claude they’re labeled “Artifacts”.
- Custom instructions, the project-level system prompt that shapes the AI’s behavior.
- Project description and metadata, the title and notes you wrote when creating it.
A complete project export captures all five. Most methods capture one or two.
Method 1: OpenAI’s data export
ChatGPT only. Settings → Data Controls → Export Data → wait for email → download ZIP.
What you get:
- A single
chat.htmlfile containing every conversation across your entire account, mixed together. No folder structure per project. conversations.jsonwith raw conversation data.- A
user.jsonwith account metadata.
What you don’t get:
- Per-project organization. Conversations from different projects are interleaved with no separation.
- Uploaded attachments, these are referenced by ID but the actual files aren’t included.
- AI-generated artifacts as separate files. They’re embedded in conversation text.
- Custom instructions for each project.
Verdict: Useful as a cold backup of your entire account. Useless if you want a specific project as a usable folder of files.
Method 2: Anthropic’s Claude data export
Claude only. Settings → Privacy → Export data.
Nearly identical to OpenAI’s: bulk JSON dump of conversations, no per-project folder structure, no separate artifact files.
Verdict: Account-level backup, not project-level. Same limitations as OpenAI’s export.
Method 3: Per-conversation manual export
Open each conversation in the project, run a single-chat export (browser print, copy-paste, or an export extension), save to a folder, name the file yourself, repeat for every conversation in the project. Then manually download the project files one at a time.
Time investment: 30 seconds to 2 minutes per conversation, depending on method. For a 20-conversation project, expect 10–40 minutes of repetitive clicking.
Verdict: Works for small projects. Doesn’t scale. Soul-crushing for anything larger.
Method 4: ChatExport AI Pro
Full disclosure: I build this. It’s currently the only tool that does complete whole-project export.
Open any ChatGPT or Claude Project page. Click the extension icon. Click “Export Project”. The extension automatically:
- Walks every conversation in the project.
- Exports each conversation in your chosen format (Markdown, PDF, Word, or HTML).
- Downloads every uploaded attachment that appears in any conversation.
- Extracts every AI-generated artifact as a real file (a
.pycode block becomes an actual.pyfile on disk, not a text snippet). - Generates a
manifest.jsonlisting every conversation, file count, export timestamp, and file paths. - Packages everything into one ZIP with organized per-conversation folders:
my-research-project.zip
├── manifest.json
├── conversation-1_Market-Analysis/
│ ├── conversation.md
│ ├── market-share-chart.png
│ └── attachments/
│ └── industry-report.pdf
├── conversation-2_Competitor-Deep-Dive/
│ ├── conversation.md
│ ├── analysis.py
│ └── competitors-matrix.png
├── conversation-3_Executive-Summary/
│ ├── conversation.pdf
│ └── summary-report.md
└── ...
Method 5: Build your own with the OpenAI / Anthropic APIs
If you’re a developer who wants full control, you might consider hitting the official APIs:
- OpenAI: there’s no public Projects API for the consumer ChatGPT product as of early 2025. You can only access conversations through the data export, not enumerate them via API. Dead end.
- Anthropic: same story, Claude Projects on
claude.aiaren’t exposed via the API. The API is for programmatic Claude usage, not for accessing yourclaude.aiUI history.
Verdict: Technically appealing, practically blocked. Both consumer products keep project data locked inside the web UI.
What to look for when choosing a tool
If you’re evaluating a project-export solution, ask these questions:
- Does it actually walk every conversation in the project, automatically? Or does it just bundle the current conversation? Read the feature description carefully, “project export” sometimes means “export with a project template,” not “export an entire project’s conversations.”
- Does it fetch uploaded attachments? If your project has PDFs you uploaded, those are usually the most important files. A “project export” that only saves chat text and ignores attachments is incomplete.
- Does it extract AI-generated artifacts as real files? Code stuck inside chat-bubble text is far less useful than the same code as a
.pyfile you can actually run. - Does it preserve project structure? One flat folder of 50 conversations with no organization is harder to navigate than neatly separated per-conversation folders.
Bottom line
Most tools that call themselves “AI chat exporters” handle one conversation at a time. Project-level export, every conversation plus every attached file plus every AI-generated artifact, organized into one usable archive, currently has one tool that does it end to end: ChatExport AI Pro.
If you work inside ChatGPT or Claude Projects for serious projects and need a real archive (compliance backup, project handoff, leaving a job, switching platforms), that’s your option. If you don’t use Projects, ignore this entire post, single-conversation export is plenty.
Try project export → · Pricing → · Compared with alternatives →