How to Export Gemini Conversations

Learn how to export Gemini conversations step-by-step, back up your chat history, and keep AI conversations reusable across tools.

Learn how to export Gemini conversations step-by-step, back up your chat history, and keep AI conversations reusable across tools.

Share to

If you want to export Gemini conversations or preserve your chat history outside of Google's interface, you'll quickly run into a frustrating reality: the official export path confuses almost everyone, and most guides online — including AI-generated ones — describe the steps incorrectly.

This guide is honest about what works, what doesn't, and what your actual options are — including the correct Takeout path, per-conversation exports, API-level access, and tools that make the problem go away entirely.

1. Google Takeout — The Correct Path (And Why Most People Get It Wrong)

Google Takeout is the only official bulk-export tool for Gemini conversation history. But there are two traps that cause most people to either get empty files or export the wrong data entirely.

Trap #1 — Selecting "Gemini" in Takeout exports the wrong thing

There is a "Gemini" entry in Takeout's product list. Most people (and most guides) tell you to select it. Don't. This exports Gemini Gems — the custom AI personas you've created — not your conversation history. You'll get an archive with configuration files, not your chats.

Trap #2 — "My Activity" requires a specific sub-selection

Your actual Gemini chat history is stored under My Activity, but it's buried behind a secondary filter. When you click into My Activity's content options, you'll see a list of activity types — and "Gemini Apps" needs to be specifically selected from that list. If it doesn't appear, it typically means Gemini Apps Activity was never turned on for your account, which means your conversations were never saved to begin with.

The correct Takeout steps:

  1. Go to takeout.google.com and sign in.

  2. Click Deselect all.

  3. Scroll down and check My Activity (not "Gemini").

  4. Click "All activity data included".

  5. In the pop-up, click Deselect all.

  6. Scroll through the list and check Gemini Apps (if it appears).

  7. Click OK, then scroll down and click Next step.

  8. Choose your delivery method (email, Google Drive, Dropbox, etc.), file format (.zip), and frequency.

  9. Click Create export. Google will email you when the archive is ready — usually within a few hours.

If "Gemini Apps" doesn't appear in the pop-up: Your Gemini activity saving may be turned off. Check at myactivity.google.com/product/gemini. If activity saving is off, turn it on — but note that conversations from before it was enabled are not recoverable through Takeout.

Making the JSON readable:

The exported file is raw JSON and not human-readable out of the box. To convert it to clean Markdown, run this Python script:

import json

with open("MyActivity.json", "r") as f:
    data = json.load(f)

for conversation in data.get("conversations", []):
    print(f"## {conversation.get('title', 'Untitled')}")
    print(f"Date: {conversation.get('create_time', '')}\\n")
    for entry in conversation.get("entries", []):
        role = entry.get("role", "unknown").capitalize()
        text = entry.get("text", "")
        print(f"**{role}:** {text}\\n")
    print("---")
import json

with open("MyActivity.json", "r") as f:
    data = json.load(f)

for conversation in data.get("conversations", []):
    print(f"## {conversation.get('title', 'Untitled')}")
    print(f"Date: {conversation.get('create_time', '')}\\n")
    for entry in conversation.get("entries", []):
        role = entry.get("role", "unknown").capitalize()
        text = entry.get("text", "")
        print(f"**{role}:** {text}\\n")
    print("---")
import json

with open("MyActivity.json", "r") as f:
    data = json.load(f)

for conversation in data.get("conversations", []):
    print(f"## {conversation.get('title', 'Untitled')}")
    print(f"Date: {conversation.get('create_time', '')}\\n")
    for entry in conversation.get("entries", []):
        role = entry.get("role", "unknown").capitalize()
        text = entry.get("text", "")
        print(f"**{role}:** {text}\\n")
    print("---")

Redirect the output to a .md file and you have a readable archive of your Gemini history.

Important notes:

  • Gemini for Workspace (business) accounts: individual users cannot export data through Takeout. Only organization admins can, via Google Vault (see Method 4).

  • Download links from Google expire after 7 days.

  • The export only captures data that exists at export time. Deleted conversations or conversations from before activity saving was enabled are not recoverable.

  • For ongoing backups without repeating the process, set the export frequency to "Every 2 months" — Google will automatically send archives to your Drive.

⚠️ A note from our testing: We followed these exact steps and the "Gemini Apps" option did not appear inside the My Activity pop-up — only general access log options were available, with no Gemini conversation data. Google's official documentation states this path should work, but in practice it appears unreliable or unavailable for many accounts. We're including the steps as documented, but wanted to be upfront that we couldn't verify it works end-to-end. If Takeout doesn't come through for you, skip to Methods 5 or 6 — those are what actually worked.

2. Export Individual Conversations via Share & Export

While bulk export through Takeout is unreliable for many accounts, Gemini has a native per-response export option that works consistently.

Below any Gemini response, click the Share & Export icon. You'll see several options:

Export to Google Docs

  • Saves the individual response (not the full conversation) as a new Google Doc in your Drive.

  • Preserves formatting including tables, code blocks, and headers.

  • The Doc is immediately searchable and shareable from your Drive.

  • Best for individual responses you want to reference, edit, or share.

Export to Google Sheets

  • Available specifically for responses that contain a table.

  • Exports the table directly into a new Google Sheet.

Share via public link

  • Generates a shareable link to the full conversation at a g.co/gemini/share/ URL.

  • Anyone with the link can view the conversation and even continue it in their own Gemini account.

  • Not available for Workspace (work or school) accounts for security reasons.

Important: The native Share & Export button exports individual responses, not the entire conversation thread. For full conversation exports, you need Takeout or a browser extension.

3. Access Gemini Conversation Data via the Gemini API

If you're building on top of Gemini or want programmatic control over your conversation data, the Gemini API via Google AI Studio is the cleanest path — no export process required.

Google AI Studio

  • Go to aistudio.google.com and open any conversation.

  • Click Get code to pull the full conversation as structured, API-ready JSON — your prompts and Gemini's responses included.

  • This sidesteps Takeout entirely and gives you the data in a usable format immediately.

Gemini API (for developers)

Like Claude's API, the Gemini API is stateless — each call requires you to pass the full conversation history in the request. This means your data lives in your own infrastructure from the start. There's no export step because conversations are already in whatever database or file system you've built.

To save conversations programmatically:

import google.generativeai as genai
import json

genai.configure(api_key="YOUR_API_KEY")
model = genai.GenerativeModel("gemini-1.5-pro")

chat = model.start_chat(history=[])
response = chat.send_message("Your prompt here")

# Save the full conversation
conversation = [
    {"role": msg.role, "content": msg.parts[0].text}
    for msg in chat.history
]

with open("gemini_conversation.json", "w") as f:
    json.dump(conversation, f, indent=2)
import google.generativeai as genai
import json

genai.configure(api_key="YOUR_API_KEY")
model = genai.GenerativeModel("gemini-1.5-pro")

chat = model.start_chat(history=[])
response = chat.send_message("Your prompt here")

# Save the full conversation
conversation = [
    {"role": msg.role, "content": msg.parts[0].text}
    for msg in chat.history
]

with open("gemini_conversation.json", "w") as f:
    json.dump(conversation, f, indent=2)
import google.generativeai as genai
import json

genai.configure(api_key="YOUR_API_KEY")
model = genai.GenerativeModel("gemini-1.5-pro")

chat = model.start_chat(history=[])
response = chat.send_message("Your prompt here")

# Save the full conversation
conversation = [
    {"role": msg.role, "content": msg.parts[0].text}
    for msg in chat.history
]

with open("gemini_conversation.json", "w") as f:
    json.dump(conversation, f, indent=2)

For teams building AI-powered workflows, this is the cleanest approach — you define the storage format from day one rather than fighting Takeout later.

4. Google Vault & Admin SDK (Enterprise / Workspace Teams)

For organizations on Google Workspace Business or Enterprise plans, Google Vault provides the only officially supported path for admins to export Gemini interaction data at an organization level.

Google Vault

  • Vault is Google's eDiscovery and archiving tool. Admins can create matters and run exports that include Gemini Apps data, subject to the organization's data retention policy.

  • This is the right tool for enterprise teams that need structured, auditable records of Gemini usage — and it works where individual Takeout does not.

Admin SDK

  • For organizations with custom integrations, the Admin SDK can surface Gemini-related activity logs that can be piped into data pipelines or analytics tools.

This is not a path for individual users. For personal accounts, the methods above are your options.

5. Browser Extensions That Actually Work

Given how unreliable native bulk export is, browser extensions are currently the most practical solution for most users who want clean, full-conversation exports:

  • Gemini Exporter — The most community-recommended extension specifically built for Gemini. Exports your full conversation or selected responses to Word, PDF, Google Docs, or Notion in one click. Preserves formatting including tables, code blocks, and images.

  • AI Chat Exporter — Exports Gemini conversations as Markdown, JSON, CSV, or PDF. Markdown and JSON are unlimited. Clean enough to paste straight into Notion or Obsidian.

  • XTrace Memory — Rather than exporting after the fact, XTrace captures your prompts and Gemini responses automatically as you work. Your context is always available — across Gemini, ChatGPT, and Claude — without any manual steps.

The key difference: Gemini Exporter and AI Chat Exporter are great for one-off structured exports of specific conversations. XTrace is for people who want their AI context continuously available across tools, not just periodically archived.

6. Continuous Memory with XTrace

Every method above either requires technical setup, only captures one conversation at a time, or depends on Takeout working correctly for your account — which it often doesn't.

The deeper problem is that exporting is only half the story. The real question is: what happens to that data once you have it?

A JSON file sitting in your Downloads folder doesn't help when you switch to ChatGPT or Claude next week. A Google Doc export doesn't help your teammate's AI understand the decisions your team made in Gemini last month.

This is the gap between exporting and actually reusing your AI work.

XTrace approaches this differently. Instead of exporting after-the-fact, XTrace captures your prompts and AI responses as artifacts in real time, as you work, across every tool. Your context is always available — whether you're in Gemini today, Claude tomorrow, or handing off work to a teammate.

  • No manual exports. Your conversations are captured automatically.

  • Cross-tool continuity. Switch between Gemini, ChatGPT, and Claude without starting over.

  • Team-level memory. Your AI work becomes accessible to your entire team, not locked in one person's chat history.

Quick Recap

Method

What You Get

Best For

Google Takeout (via My Activity → Gemini Apps)

Full conversation history in JSON

Complete backup — if activity saving was enabled

Share & Export → Google Docs

Individual response as a formatted Doc

Saving specific responses to Drive

Share → Public link

Shareable link to the full conversation

Quick sharing (personal accounts only)

Gemini API / AI Studio

Structured, API-ready conversation data

Developers building on Gemini

Google Vault / Admin SDK

Organization-wide, audit-ready export

Enterprise teams with compliance needs

Browser Extensions (Gemini Exporter, AI Chat Exporter)

Full conversation in PDF, Word, MD, Docs, JSON

Most practical for most users

XTrace

Continuous memory across all AI tools

Making your AI work reusable everywhere

The honest takeaway: Gemini's native export is more limited than ChatGPT's or Claude's. The Takeout path works when activity saving is enabled and the steps are followed precisely — but it requires more effort and produces raw JSON that needs processing. For most users, a browser extension is the most reliable way to get clean, readable exports today. And for anyone switching between AI tools regularly, capturing context as you work — rather than exporting after the fact — is the approach that actually scales.