There's more to an email than just the "To" and "From" addresses. Sometimes, you might receive an email that doesn't have your address in the To: or Cc: fields. The content of an email is actually completely separate from how the email is delivered between computers on the internet. So, the addresses you see on the To
or Cc
lines of an email are not necessarily who the email's actually delivered to, and the From
line of an email isn't always who actually sent it. The To
and From
email addresses listed have nothing to do with the delivery process.
There is a legitimate case where the To
and Cc
lines may not list your address. That's when someone sends to you via Bcc
. When someone Bcc's you in on an email, their email client uses your address in the "envelope-to" when delivering, but removes the Bcc header before sending. So if you see your address in the X-Delivered-to
header but not in To
or Cc
in a message you received that wasn't spam, it means that the sender put your address in the Bcc
field when they sent the messasge.
Sometimes, people intentionally change the To
and/or From
lines of an email. Changing email headers so the To
and/or From
lines are different from the actual sender or recipient is called "forging" or "spoofing." Unfortunately, the email system was designed back in the early days of the internet, when it was simply used to send messages between trusted university computers and no one had a need or reason to forge headers. Now, there are more spammers out there who can use forged headers to trick people into thinking an email was sent to or from someone else. Good email software and systems do set the To
, Cc
, and From
lines of email so that they match with who the email was sent from and to. Spam-sending software, however, will usually make up different entries.
How email is sent
If the actual content of the email doesn't control where the email goes, what does?
Email is sent by a separate system called SMTP (Simple Mail Transfer Protocol). When email is handed over from one computer (the "SMTP client") to another computer (the "SMTP server"), the sending computer creates a sender address (the "envelope-from", which is the address that bounce messages will go to if delivery fails at a later stage) and one or more recipient addresses ("envelope-to"), which tells the email where to be sent to.
These addresses are not part of the email message itself, and normally they are just discarded once the message has been delivered. At Fastmail, we add special headers called X-Mail-from
(for "envelope-from") and X-Delivered-to
(for "envelope-to") to the email so you can always see how the message ended up at your account.
We also add another header, X-Resolved-to
, that shows the final address that was used for internal delivery to your mailbox. This address is determined by the address in X-Delivered-to
using the resolving rules described in our documentation of the process email delivery goes through.
You can view these headers for an email by clicking the Actions menu at the top right of the message, then clicking Show raw message.