How to export a Telegram chat (Desktop)
Telegram is one of the few messaging apps with a genuine, built-in export — but only in the desktop app, and only if you choose the right format. The whole thing takes about three minutes. One thing worth knowing first: unlike analyzers that hand back a single tidy number and a confident verdict, ReadBeneath reads the export differently — every observation is tied to the exact messages it came from, each ships with a fair alternative reading, and it says so plainly when your history is too thin to support a conclusion.
Last updated: July 15, 2026
Why does this only work on Telegram Desktop?
Telegram keeps the export feature on the desktop app alone. The phone apps and Telegram Web can show your history but cannot write it to a file, so the reliable path is the desktop client on a Mac or PC. If you only use Telegram on your phone, install the desktop app, sign in, and let it sync the chat before you export.
How do I export a Telegram chat as JSON?
- 1Open Telegram Desktop on a Mac or PC. The mobile apps and Telegram Web have no export option, so the desktop app is the only way to do this.
- 2Open the chat you want to analyze, then click the three-dot menu in the top-right corner of the conversation.
- 3Choose Export chat history from the menu.
- 4In the dialog, switch off any media you do not need — photos, videos, voice messages — since the conversation text is what gets read.
- 5Find the Format setting and change it from HTML to Machine-readable JSON. This is the step the whole export depends on.
- 6Pick a destination folder, click Export, and wait for Telegram to finish writing the files.
- 7Open the export folder and locate result.json — that file (or the folder as a whole) is what you upload to ReadBeneath.
Can I export my whole account at once?
Yes. If you would rather grab everything in one pass, open Settings → Advanced → Export Telegram data. Choose which chats to include, and — exactly as above — set the format to Machine-readable JSON rather than HTML. Telegram writes one export folder containing a JSON file per conversation. Upload the folder (or a zip of it), and ReadBeneath reads the thread you point it at.
Why machine-readable JSON and not HTML?
The two formats look similar in the dialog but are built for opposite purposes. HTML is a styled page for a human to scroll through; machine-readable JSON is a structured record where every message is an object with its sender, date, and text kept separate:
{
"messages": [
{ "from": "Priya", "date": "2026-06-12T21:41:07", "text": "still on for tonight?" },
{ "from": "Marco", "date": "2026-06-12T21:44:12", "text": "yes! leaving in 10" }
]
}ReadBeneath reads the from, date, and text fields for every message, and folds media entries in through their media type. Those fields only exist in the JSON export — which is why the format step matters more than any other.
What does the export actually contain?
A machine-readable export is a folder. The heart of it is result.json, which holds the conversation itself: every message in order, each with who sent it and when. If you left media turned on, the folder also holds subfolders of the photos, videos, and voice notes, and each of those is linked from its message by a media type. If you turned media off to keep the file small, those messages still appear — recorded as attachments, just without the underlying file.
Troubleshooting: why won't my Telegram export upload?
- You exported HTML by mistake. An export made of .html files cannot be parsed. Re-run the export and set the Format to Machine-readable JSON — the result.json file is the one you want.
- You are trying to export from your phone. There is no way to do it there. Move to Telegram Desktop, which is the only client with the feature.
- The chat had not finished syncing. A freshly installed desktop app may still be pulling history. Give it a moment to load the full conversation before you export, or the file will be shorter than you expect.
- The export is one-way. A JSON export cannot be imported back into Telegram. It is a copy for reading and analysis; your original chat is untouched.
What ReadBeneath does with your Telegram export
Once result.json is uploaded, ReadBeneath reads it the way it reads every export: it surfaces per-person communication patterns and ties each observation to the specific messages behind it, pairs every one with a fair alternative reading, and refuses to reach a conclusion your sample is too thin to support. There is no single number and no confident verdict at the end — only observations you can trace back to the lines that produced them. The Telegram chat analyzer explains exactly what a read covers.
Quick answers
Can I export a Telegram chat from my phone?
No. The Android and iOS apps and Telegram Web have no export feature — only Telegram Desktop can save a chat to a file. Install the desktop app on a Mac or PC, sign in, let it sync, and export from there. Your phone stays exactly as it was.
HTML or JSON — does the format really matter?
It decides everything. The HTML option produces a styled web page meant for reading in a browser; it cannot be parsed as data. Machine-readable JSON is a structured file where each message keeps its sender, date, and text as separate fields — that is the only Telegram format ReadBeneath can read.
How much of my chat history gets exported?
As much as your desktop app has synced locally. Telegram writes the full available history into the file, and the export dialog lets you set a date range if you only want a specific stretch. A larger export never hurts — thin samples are told apart from real patterns automatically.
What happens to stickers, voice messages, and GIFs?
Each one is recorded in the JSON with a media type — sticker, voice message, animation — even when you skip downloading the media itself. ReadBeneath recognizes those entries and counts each as an attachment, so a sticker-heavy chat is still described honestly; it just cannot show you the sticker.
Will the other person know I exported our chat?
No. Exporting happens entirely on your own computer. Telegram does not notify anyone, nothing changes inside the conversation, and the export is a private copy that lives only in the folder you chose.
Do I need to unzip or clean up the export first?
No. Upload result.json directly, or a zip of the export folder — ReadBeneath opens the archive, finds the conversation JSON, and reads it. App-generated entries like 'Channel created' are filtered out automatically so they never pollute the analysis.
Got result.json? You are a minute from a read.
Upload the Telegram export, pick a focus, and get a free descriptive analysis — every finding tied to cited messages, a fair alternative reading included, and a straight answer if the sample is too thin.