Guide

How to export your Telegram chat history

By Michael, founder of ChatAttic · September 2026 · 7 min read

Telegram keeps your conversations in its cloud, which is convenient right up until you want a copy of your own. The phone apps can chat and search, but they can't hand you a readable transcript to keep. The free Telegram Desktop app can — and it can save your chats as JSON, a clean, structured file that ChatAttic reads directly. Here's exactly how to export one conversation or your entire history, what the file contains, and how to turn it into an archive you own.

You'll need Telegram Desktop

The export tool lives only in the desktop app, not the phone apps. Download Telegram Desktop — it's free and runs on Windows, Mac and Linux — then sign in with your usual number. Your cloud chats sync down automatically, and from there you get two ways to export, both producing JSON that ChatAttic understands.

Route 1 — export a single conversation

If you only want one chat or group, do it straight from the conversation:

  1. Open the chat or group you want to keep in Telegram Desktop.
  2. Click the (three-dot) menu in the top-right corner of the conversation.
  3. Choose Export chat history.
  4. Set the format to JSON. You can untick Photos, Videos and other media for a faster, much smaller export if you only need the text.
  5. Click Export. Telegram saves a folder containing a result.json file — that's the one ChatAttic reads.

Route 2 — export everything at once

To capture your whole account in one pass, use the account-wide tool instead:

  1. Open Settings in Telegram Desktop.
  2. Go to Advanced, then Export Telegram data.
  3. Tick what you want to include — personal chats, private groups, media, and so on.
  4. Set the format to Machine-readable JSON (not HTML — see below).
  5. Click Export. Telegram builds a DataExport folder with a result.json that holds all of your chats together as a chats.list.

Either route leaves you with an ordinary folder on your computer — nothing that expires, nothing locked to the app. You can copy it, back it up, and read it years from now.

Pick JSON, not HTML. Telegram offers two export formats. HTML is meant for reading in a web browser — pretty to look at, but awkward to process. JSON ("Machine-readable JSON") is the structured version, and it's the one you want here: it's what ChatAttic imports. If you'd like both a browser-readable copy and an archive, you can run the export twice, once in each format.

What the export actually contains

The JSON is plain, open and self-describing. Inside you'll find:

Because it's JSON, nothing is hidden and nothing is proprietary. It's your conversation, in a format any tool can read — including this one.

Turning the export into an archive you own

A result.json in a downloads folder is raw material, not an archive yet. The work is stitching it into one clean, readable record with nothing duplicated and nothing lost. Done by hand that means:

  1. Read the JSON and pull out every message with its date, sender and text.
  2. De-duplicate at the message level, so if you export the same chat twice you keep one copy of each message rather than two.
  3. Group everything by conversation and sort by time, so each thread reads as a single continuous history.
  4. Store it all in plain files you can open, search, and hand down.

This is exactly what ChatAttic automates

Point it at your Telegram export — a single result.json or a full export with many chats — and it reads the JSON, de-duplicates every message by its content, groups them by conversation, and writes one clean, readable archive you actually own. It also reads WhatsApp, iMessage, Facebook/Instagram Messenger and Android SMS/MMS, so everything lands together in one place. Everything runs on your own computer — nothing is uploaded. In internal testing; sign up before launch for 25% off.

Get early access