Glossary

What Is the EML Format? A Plain-English Reference

What is an EML file? A practical explainer of the EML single-message format, how it's used in migrations, and how to bulk-import EMLs without losing data.

DO

Dan Okafor

MSP Practice Lead

· 5 min read
Stack of paper documents representing individual EML message files

You've right-clicked a message in Outlook and chosen Save As. You've dragged a thread from Apple Mail to your desktop. You've received a legal-hold export of 12,000 individual files with .eml extensions. All three give you EML files, and they're the simplest, most portable format in the email-archive world — but importing them at scale is where most migrations come unstuck. This page covers what EML actually is, where it comes from, and how to bulk-load them somewhere useful.

Skip the manual setup — let Mailbox Taxi handle it

One desktop app, every IMAP provider, zero data leaving your machine.

The short version

An EML file is one email message, saved to disk in the same RFC 822 / RFC 5322 format the message would have on the wire. Open one in a text editor and you'll see:

Received: from mail.example.com ...
From: alice@example.com
To: bob@example.com
Subject: Project update
Date: Mon, 12 May 2025 09:14:22 +0000
Message-ID: <abc123@example.com>
Content-Type: multipart/mixed; boundary="=_NextPart"

--=_NextPart
Content-Type: text/plain; charset=utf-8

Hi Bob, ...

That's it. Headers, blank line, body, MIME parts. No proprietary wrapper, no database, no index. One message per file.

Where the format comes from

EML was popularised by Microsoft Outlook Express and Windows Mail in the late 1990s and early 2000s. The extension .eml simply meant "email file." Underneath, it's a faithful serialisation of the message format defined by RFC 822 in 1982 and updated by RFC 5322 in 2008.

Because the format is just "the message itself, on disk," basically every mail client can read EML. Outlook, Thunderbird, Apple Mail, mutt — they'll all open one with a double-click. That portability is the format's biggest strength.

How EML differs from MBOX and PST

EML stores one message per file. The MBOX format concatenates many messages into a single file. The PST file wraps the entire mailbox (folders, calendar, contacts, rules) into a proprietary Microsoft database. Three different shapes for the same underlying RFC 5322 message.

Picking the right one depends on what you're doing:

  • EML — best for evidence preservation, drag-and-drop sharing, and small numbers of important messages.
  • MBOX — best for whole-folder exports from Unix-style clients (Thunderbird, Apple Mail, Google Takeout).
  • PST — best when you're staying inside the Microsoft world and want calendar plus contacts in the same archive.

For a full comparison of the three, see the PST, MBOX, and EML migration guide.

Where EML shows up in real migrations

Three scenarios cover most of it.

Drag-and-drop exports. Someone wanted to keep a few critical threads when leaving a company. They dragged them to a folder on the desktop. You now have between 5 and 5,000 loose EML files to put somewhere sensible.

Ediscovery and legal hold. Compliance tools almost universally export to EML because the headers (especially the Received: chain and any DKIM signature) survive intact. If your migration touches a litigation hold dataset, EML is what you'll get.

Single-message archives. Some workflow tools save attachments and confirmations as EML so the originals can be replayed later. You'll often find these in shared drives, ZIP files, or .eml-stuffed folders inside a SharePoint export.

Preserve the original Date header

When you import EMLs into a new mailbox, make sure your tool writes the message with its original Date: header — not "now." Otherwise every imported message appears at the top of the inbox dated today, which destroys the chronology and breaks any sort-by-date or retention rule. Any IMAP APPEND with the right INTERNALDATE argument does this correctly.

How to bulk-import EML files

There's no native bulk-EML import in Gmail, Microsoft 365, or Fastmail. The path that actually works in 2026 looks like this:

  1. Group the EMLs by destination folder (Inbox, Sent, Archive, custom labels).
  2. Connect to the destination over IMAP with an account that has the right permissions.
  3. For each EML, IMAP APPEND the raw RFC 5322 bytes into the target folder, passing the original Date: as INTERNALDATE and the read/flag state as IMAP flags.
  4. Verify a sample and reconcile counts.

Mailbox Taxi does this on your desktop — the EMLs never leave your machine, and you keep the original headers intact. Provider-specific walkthroughs live at migrate EML to Gmail and migrate EML to Outlook.

A practical gotcha: EML inside ZIP inside ZIP

It's common to receive a "legal hold export" that is a ZIP file containing one ZIP per custodian, each containing folders of EMLs. Unzip everything before you start, count the files, and make sure your character-set handling is right. EMLs use whatever charset the original message declared — usually UTF-8, but plenty of older messages are still Windows-1252 or ISO-8859-1, and a naive import will mangle accented characters.

Try Mailbox Taxi

Migrate your mailbox the easy way

Join the waitlist for early access and lock in launch pricing.

Related reading

Try Mailbox Taxi

Migrate your mailbox the easy way

Join the waitlist for early access and lock in launch pricing.