How to export your Telegram chat history
Desktop only, two minutes, JSON or HTML. Here is the exact click path, and what is actually inside the file once you have it.
You need Telegram Desktop on a computer. Open the chat, click the three dot menu, choose Export chat history, and pick JSON or HTML. The phone apps cannot do this and there is no way around it.
Telegram is one of the few messaging apps that gives you a complete, properly structured export of your own conversations, rather than a folder of screenshots. This guide covers both ways to do it, which format to choose, and what is actually inside the file once you have it.
Can you export Telegram chats from your phone?
No. Neither the iPhone nor the Android app has an export function, and it is not hidden in a settings menu somewhere. The feature exists only in Telegram Desktop.
The good news is that your Telegram history lives in the cloud rather than on your handset. Install Telegram Desktop on any computer, sign in with the same account, and your full history will be waiting. You do not need the phone that sent the messages.
The workaround people try is forwarding messages to Saved Messages. That works for a handful and falls apart beyond that, because you lose timestamps and you are copying by hand.
How do you export a single Telegram conversation?
This is what most people actually want. It exports one chat rather than your entire account.
Open Telegram Desktop on a computer and sign in.
Open the conversation you want to export.
Click the three dot menu in the top right of the chat.
Choose Export chat history.
Pick your format, JSON or HTML. See below if you are unsure.
Set a date range if you only want part of it, and untick media if you only need the text.
Click Export and choose where to save it.
Turning media off is worth doing if you only care about the words. A chat with years of photos and voice notes can run to several gigabytes, and the text itself is a tiny fraction of that.
How do you export all your Telegram data at once?
If you want everything rather than one conversation, there is a separate account wide export.
In Telegram Desktop, open the hamburger menu and go to Settings.
Choose Advanced in the sidebar.
Scroll down and click Export Telegram data.
Tick the chat types you want, choose a format, set a date range, and decide which media to include.
Click Export and pick a destination folder.
This can take a long time and produce a very large folder. Use the single chat export unless you genuinely want the lot.
Should you choose JSON or HTML?
Pick based on whether a person or a program is going to read it.
| JSON | HTML | |
|---|---|---|
| Best for | Any tool or script that reads the chat | Reading it yourself in a browser |
| Opens in | A text editor, or any software | Your normal browser, formatted |
| Structure | Every message tagged with sender, timestamp and type | Laid out visually, harder to parse reliably |
| Human readable | Awkward but possible | Yes, it looks like the app |
Keeping a personal archive to read later, choose HTML. Running the conversation through any kind of analysis tool, choose JSON. Almost everything that reads chat exports expects JSON, because the structure is unambiguous.
What is actually inside the exported file?
This is the part most guides skip, and it matters before you send the file anywhere.
A Telegram JSON export is not only the words people typed. Depending on the chat and what was shared, it can also contain:
Numeric user IDs for everyone in the conversation
Display names, and in some cases phone numbers, particularly where a contact was shared
Exact timestamps for every message, down to the second
The full text of anything ever pasted into the chat, which for many people includes passwords, addresses, booking references and API keys
Location data from any shared locations
Filenames and paths for every attachment
A conversation spanning years is a far richer document than people expect, and it contains other people's information as well as your own. Two minutes with the file open is worth it.
The honest test for any service asking for your export is simple: does it tell you what it sends, or only that it is secure? Those are different claims.
An export is a two sided document, and only one of you clicked Export.
Worth a thought before it leaves your computer. The other person in that conversation did not choose this, and any service you hand it to inherits their words along with yours.
What does Telegram not export?
Some things are missing by design, and no setting brings them back.
Secret Chats
End to end encrypted and stored only on the two devices, so they are never part of a cloud export.
Deleted messages
Once deleted they are gone, for both sides.
Self destructing media
Anything that has already expired is not recoverable through an export.
If the conversation you want lived in a Secret Chat, the export will come back without it, and that is not a bug.
Why did Telegram warn your other devices?
When you request an export, Telegram notifies your other logged in sessions that a data export was requested. This is deliberate. If somebody had gained access to your account, you would find out that they were downloading your history.
The export may also not begin the instant you click. Telegram can hold the request for a period before allowing it to proceed, for the same reason. If nothing seems to happen straight away, that is normal.
Where does the file end up?
In the folder you chose, as a directory rather than a single file. Inside you will find result.json or messages.html depending on the format, plus subfolders for any media you included. The JSON file is the one an analysis tool will ask for.
Frequently asked questions
Can I export Telegram chats on iPhone or Android?
No. Neither mobile app has an export function and it is not hidden in a settings menu. You need Telegram Desktop on a computer. Because your history is stored in Telegram's cloud rather than on your handset, you can install Desktop on any computer, sign in, and the full history will be there.
How long does a Telegram export take?
A text only export of a single conversation usually finishes in seconds to a couple of minutes. Including photos, videos and voice notes can take hours and produce several gigabytes. If you only need the words, untick media before you start.
Why has my export not started?
Telegram can hold an export request for a period before allowing it to proceed, as a security measure against someone who has gained access to your account. Nothing appearing to happen immediately is normal. Leave Telegram Desktop open and it will complete on its own.
Does exporting a chat notify the other person?
No. Telegram notifies your own other logged in sessions that a data export was requested, so you would find out if somebody else were downloading your history. The other participant in the conversation is not told.
Can I export a Secret Chat?
No, and no setting changes this. Secret Chats are end to end encrypted and stored only on the two devices involved, so they never form part of a cloud export. If the conversation you wanted was a Secret Chat, the export will come back without it.
Should I choose JSON or HTML?
Choose HTML if you want to read the archive yourself in a browser. Choose JSON if any tool or script is going to process the conversation, because every message is tagged with its sender, timestamp and type. Most analysis tools expect JSON.
Can I export only part of a conversation?
Yes. Both the single chat export and the account wide export let you set a date range before starting, so you can pull a single year or a single month rather than everything.
Does the export include deleted messages?
No. Once a message is deleted it is gone for both sides and cannot be recovered through an export. The same applies to self destructing media that has already expired.
You have the file. This is what it was for.
Drop the export straight in. It is anonymised in your browser before anything is sent, and nothing is stored on our servers.
Upload your export →