The WhatsApp Chat Export File Explained (_chat.txt & attachments)
Open a WhatsApp export and you'll find a slightly baffling folder of a text file and a pile of oddly named images. Here's what everything in there actually is, line by line.
What's inside the zip
When you export a chat, WhatsApp hands you a single .zip file. Unzip it and you'll typically find:
- A text file called
_chat.txt— this is the entire conversation, every message, in order. - If you chose to include media: a collection of image files (usually
.jpg), videos (.mp4), and voice notes (.opus), each sitting loose in the same folder as_chat.txt.
There's no folder structure, no index, no thumbnails — just a flat pile of files. That's normal. It's a raw export, not a designed product.
Anatomy of a line in _chat.txt
Every message is one line (occasionally wrapping onto more if the message itself contains line breaks), following a strict pattern: date, time, sender, then the message. On an iPhone export, a line looks like this:
[15/01/2024, 14:32:05] Alice: Are we still on for Saturday?
On an Android export, the same message looks like this:
15/01/2024, 14:32 - Alice: Are we still on for Saturday?
Same information, different punctuation — iPhone wraps the timestamp in square brackets and records seconds; Android separates it with a hyphen and drops the seconds. If you're trying to make sense of an export manually, that inconsistency is the first thing worth knowing, especially in a group chat where you're scanning for a particular exchange.
How photos, videos and voice notes are referenced
When you exported with media included, a shared photo doesn't appear as an image inside _chat.txt — text files can't contain images. Instead, the line references the filename of the actual image sitting elsewhere in the same folder, something like:
[15/01/2024, 14:35:12] Alice: IMG-20240115-WA0007.jpg (file attached)
To actually see the photo, you'd need to open that file separately in the folder, matching the filename by eye. In a chat with hundreds of shared photos, that becomes tedious fast — there's no way to click through from the text line to the image itself without a tool that understands the connection between the two.
What <Media omitted> means
If you see this exact phrase in place of a filename, it means one of two things: either you exported the chat without media (so WhatsApp never included the actual files, just noted that something was shared), or the media in question was never fully downloaded onto your phone in the first place. Either way, there is no attached file to go and look at — <Media omitted> is a placeholder, not a broken link.
If you're seeing a lot of <Media omitted> and want the actual photos, you'll need to re-export the chat and choose "Attach Media" or "Include media" this time.
Voice notes and the .opus format
Voice messages are saved as .opus files — a compressed audio codec that's efficient for speech but isn't something every app or media player opens by default. Double-clicking a .opus file on a desktop computer sometimes does nothing, or opens an unfamiliar player, which is why voice notes are often the most frustrating part of a raw export to actually listen back to.
Why it looks so messy on its own
A few things compound to make a raw export hard to actually read as a conversation:
- No visual distinction between senders — in a busy group chat, every line looks the same until you read the name at the start.
- No inline images — you're constantly jumping between the text file and separate image files to see what was actually shared.
- No playback for voice notes — you have to locate and open each
.opusfile individually. - No sense of time passing — days blur into each other with nothing marking where one day ends and the next begins.
- System messages (someone changing the group photo, a security code update) sit in the same plain-text stream as real conversation, with nothing to tell them apart at a glance.
None of this is a fault in the export — WhatsApp's .zip was never designed to be read directly, it's a data dump meant to be processed into something else.
Turning it into something readable
The most direct way to make sense of an export is to let a tool reassemble it the way it was meant to be read: messages grouped by sender, images shown inline exactly where they were sent, voice notes playable with a tap, and days clearly separated. That's precisely what SaveMyChats does with the .zip you already have — it matches each attachment reference in _chat.txt back to its file, renders the whole thing as a proper scrollable chat page or a print-ready PDF, lets you choose which side of the conversation is "you," and can redact phone numbers or trim the date range if you only want part of it. It runs entirely in your browser, so the export never leaves your device — it's simply a faster way of reading the file you already exported. For the export steps themselves, see how to export a WhatsApp chat.
Ready to save yours? SaveMyChats turns a WhatsApp export into a beautiful web page or PDF — right in your browser, with nothing uploaded. Open SaveMyChats →