viewhack

EML viewer and e-mail header analyzer

Open a saved e-mail (.eml) or paste a message's raw source or just its headers. You get the sender, recipients and date in your own time zone, the message with every remote image blocked, the attachments to download, each server it passed through with the delay at each hop, and the SPF, DKIM and DMARC results the receiving server wrote down.

The message is read on your device. It is never uploaded, and nothing in it is loaded from the internet.

What it shows

What it cannot do

Getting the .eml or the headers

Gmail
Open the message, then the ⋮ menu next to Reply: “Download message” saves an .eml, and “Show original” shows the raw source with a “Copy to clipboard” button you can paste here.
Outlook
Outlook on the web and the new Outlook for Windows can save a message as .eml from the message's ⋯ menu. Classic Outlook for Windows saves only .msg; open the message, then File › Properties, and copy the “Internet headers” box.
Apple Mail
File › Save As… with the format “Raw Message Source” writes an .eml. View › Message › Raw Source (⌥⌘U) shows the same text to copy.
Thunderbird
File › Save As › File saves an .eml. View › Message Source (Ctrl+U) shows the raw text.

Useful to know about e-mail headers

Why remote images are blocked
Newsletters and marketing mail usually contain a 1 × 1 pixel image whose address is unique to you. Loading it tells the sender that you opened the message, when, roughly where (from your IP address) and with which program. A mail program that shows remote images, as Apple Mail does unless you change it, loads the pixel as soon as the message is opened, a saved .eml included. Here it is never requested.
Reading Received headers
Each server adds its Received line on top, so the raw headers read bottom-up. The top few lines were added by your own provider and are reliable. Everything below them was written by servers before it, including the sender's, and can be forged, so an IP address in the bottom line proves little on its own.
SPF, DKIM and DMARC in one line each
SPF: the sending server's IP address is on the list published by the domain in the Return-Path. DKIM: a domain (the d= value) signed the headers and body, and they were not changed on the way. DMARC: SPF or DKIM passed for a domain that matches the one in the From address, which is what stops simple From spoofing.
Why the file is bigger than its attachments
Attachments inside an .eml are stored as base64 text in 76-character lines, which makes them about 37 % larger than the real file. A 10 MB PDF makes an .eml of about 13.7 MB, which is why providers' 25 MB limits hold less than 25 MB of files.