ChatGPT Exporter Documentation

Install, update, and customize the open-source exporter • Last updated January 2025

This documentation covers the userscript installation flow, console snippet, Gemini support, troubleshooting, and release history for ChatGPT Exporter.

For an overview or feature comparison, read the landing page. For step-by-step tutorials, visit the Markdown or PDF guides.

On this page

Quick start (userscript)

  1. Install a userscript manager: Tampermonkey or Violentmonkey.
  2. Install the exporter script from GreasyFork:
  3. Open ChatGPT or Gemini, refresh once, and use the new Export button that appears near the conversation title.

Updates arrive automatically; your manager will prompt you before applying new versions.

Console method

For restricted environments or quick one-off exports, run the exporter from the browser console without installing anything.

Markdown console snippet

await import("https://cdn.jsdelivr.net/gh/rashidazarang/chatgpt-chat-exporter@main/exporter-markdown.js");
window.chatGPTChatExporter.exportCurrentChat();

Open Developer Tools (F12), switch to the Console tab, paste the snippet, and press Enter. A .md file downloads instantly.

PDF console snippet

await import("https://cdn.jsdelivr.net/gh/rashidazarang/chatgpt-chat-exporter@main/exporter-pdf.js");
window.chatGPTChatExporter.exportCurrentChat({ format: "pdf" });

Make sure popups are allowed so the browser can open the print dialog.

Gemini support

Version 0.4+ includes Gemini selectors. The userscript automatically detects gemini.google.com. Approve the additional domain the first time you export.

  • Markdown naming uses the conversation title with -gemini.md.
  • Console usage: run the same snippets while on a Gemini conversation.
  • Experimental Gemini layouts may require selector tweaks — open an issue if you hit one.

Troubleshooting

Export button missing

Ensure the script is enabled and refresh the tab. In Tampermonkey, the icon should be green on ChatGPT/Gemini domains.

Partial exports

Expand all messages before exporting. Collapsed responses are skipped because the DOM isn’t loaded.

Images & attachments

Images are referenced as inline placeholders. Download originals via the chat viewer if you need binaries.

Styling tweaks

Fork the repo, edit the HTML template in exporter-html.js, and build locally. Contributions welcome.

Release highlights

v0.5.0 — Smart file naming, print-ready PDF improvements, Gemini enhancements. (Release notes)
v0.4.0 — Gemini Markdown support, HTML exporter improvements.
v0.3.0 — Console snippets published, Markdown styling refined.

Privacy & security

  • Runs locally in your browser; no network requests.
  • Open-source under MIT — audit every line on GitHub.
  • No analytics, telemetry, or third-party dependencies beyond the userscript manager/CDN.