Email Not Delivered? Here’s What Really Happened
Have you ever hit “Send” on an email, assumed it went where you sent it, but the other person swore they never received it? We expect it to just work, right? Well, like so much of our technology, because we don’t see what’s going on behind the scenes, it’s feels a bit like magic – it just goes and it gets there, like it travels on invisible strings from point to point. Today we’re going to follow one email’s journey and uncover where it might vanish along the way. We’ll look at how email travels, the checkpoints it passes, and the main ways messages disappear. Let’s go.
The Cast of Characters in the Email Drama
You interact directly with an email client. This could be Gmail in a browser or app, Apple mail, Outlook, Thunderbird, Yahoo mail, wherever you type a message in and hit “send.”
The server that handles mail messages from the client is called the SMTP server. SMTP stands for Simple Mail Transfer Protocol, and it only handles outgoing mail. What we call a “server” may not be a standalone machine. The “server” when we use it like this is actually a program that lives on a hardware server. It probably lives on a server with other programs.
There are records that constitute an address book that tell the server where to send mail. These are DNS and MX records. DNS is Domain Name System, the system that translates the names we know (google.com and amazon.com, for example) into the numbered addresses that the Internet needs in order to send data to the right place.
The person receiving the email has a mail server as well, called a Mail Transfer Agent (MTA). It stores the mail temporarily until time for a push or a pull. (I explain push and pull later.)
Your mail service operates according to inbox protocols that explain and govern how devices fetch and synchronize messages. Internet Message Access Protocol (IMAP) and Post Office Protocol (POP). They both move mail between server and devices. However, they behave differently when it comes to keeping multiple devices in sync.
Step-by-Step: How an Email Actually Travels
Step 1: You hit send – what the email client does
- First, it builds the “envelope,” which contains the header, and a separate part for the body of the email. The header holds the From, To, CC/Bcc, Subject, and date/time information. It also contains technical fields for things like the Message ID.
- Next, it encodes the content so that it can be sent safely. Any attachments and characters that aren’t “ordinary” are converted into a safe text format. If you’re using rich formatting like HTML (if you’re sending pretty fonts and pictures in the body of the email, you’re using HTML), your email client usually creates both a plain-text version and an HTML version inside the same message package. (The receiver may not be using HTML, so the pictures will be attachments instead of embeds in the message.)
- Now the client applies your email address, your display name, and your reply-to address into the header. If your provider uses DKIM to prove the message really came from your domain and wasn’t altered in transit, either your email client or the server will add a cryptographic signature.
- The client looks at your account settings to find the outgoing mail server (SMTP host, port, and encryption type). It gets ready to talk to that server, using Transport Layer Security (TLS) to encrypt the communications.
- The client connects to the server and logs in with either your username and password combination or a token assigned to the client. If that authentication fails, the message will stay in your outbox. You might see an error message, or you might not – depends on your mail service and your client.
- As long as authentication succeeds, the client hands the full package to the server – the header, the body, and any attachments – as one structured message. When the server confirms receipt of the package, the client moves the message from Outbox to Sent. The server now has responsibility for the message.
Your part of the journey is now complete.
However, this process is one of the bumpy spots in the email road. If your device is offline (no Internet connection), it can’t reach the server, so the app parks the email in the outbox. Your client will continue to try to send, but until it succeeds, that message never leaves your email client.
It’s also possible for your message to sit at the server for a time after it accepts it. If it’s dealing with high traffic rates, rate limits, or other issues, your message may not proceed to its next step. In that situation, you’ll see your message in the “Sent” portion of your client.
If the server can’t deliver the message after trying several times, it will usually send you a message to that effect – a “bounce-back” message. Because it will try several times, it may be a long time before that message comes back to you. All that time, you are thinking your receiver should have it.
Step 2: The Server looks up the delivery information
The email server quietly checks the Internet’s ‘address book’ (DNS) to figure out which mail server handles messages for the receiving domain, so it knows exactly where to deliver your email next. The DNS record for the receiving domain has an entry for the Mail Exchanger (MX), the the record that tells other servers which mail server will receive your email and process it for delivery on that end. When you send your message, you sent it to “somename@someplace.com” but networking doesn’t operate on names. DNS servers help senders translate the “someplace.com” into the numbers that represent the actual place’s receiving servers. Specifically, the email server needs to find the address of the specific email server for someplace.com, which has its own set of numbered addresses.
Step 3: Hopping across the Internet
Now that the server knows where to send the message, it uses information programmed into it to send the message to its “next hop.” If the message is too large to send all in one packet, it will be separated into smaller packets. Each packet will have a header that identifies where it’s supposed to go, and where it lives in the order of all the packets. Keeping in mind that the Internet is huge, each of those packets may take a different route through a different series of routers and servers along the way. That’s fine, each one has the address that will (hopefully) get it to the destination. The message might pass through multiple intermediate servers, security gateways, or relays on its way.
Step 4: Arrival at the recipient’s email processor
The message bits still haven’t reached your intended recipient. Their organization’s email server will reassemble the segments of the message into proper order, based on the information in the headers. That server, though, also has some security checkpoints that will scan the reassembled message and attachments for spam and viruses/malware. Those checkpoints will also do authentication checks similar to the ones that the outgoing mail server did. Based on the results of those checks, the server will accept the message, reject it and bounce it back to the sender, or, in extreme cases, silently drop it without acting on it at all.
Step 5: If accepted, landing in the mailbox.
The email message is stored on the server for a period of time, and that period of time can vary depend on how the system is configured to behave. If you are using Post Office Protocol, the server will know if you’ve downloaded it, and you can decide whether to leave a copy on the server, and under what conditions to delete it from the server. That may be fine if you only ever access email from one device.
IMAP lets you synchronize not just whether you’ve downloaded it and whether to delete it, but also whether you’ve opened it. It works a lot better for people who use several devices for their email. For me, IMAP is the only thing that works, because I use my mail on my laptop, in a mail client, but sometimes in a browser. I also use it on my phone, on an iPad, and on an Android tablet. It’s essential that I be able to move messages into folders on one device and find them in those folders on another device.
Step 6: Your device receives the message.
Even if you’re using email in a browser, that browser is acting as a client. The client doesn’t need to be a standalone program. Your client may go and fetch messages periodically, or the server may push messages to the client as soon as they come in, and you probably won’t notice a difference either way. However, if someone says “Hey, I just sent you an email,” you may not receive it immediately if your “fetch” is set on the longer end of the scale.
Why Emails Seem to Vanish Before They Arrive
Now you have a bit of an idea how many points there are where email can vaporize. Let’s take a look at them again.
Sender side
An email could be stuck in the outbox. That can be caused by no connection or a misconfigured account. It could be saved as a Draft, in which case, it never actually got sent. It may have been sent to the wrong address, due to typos or using the wrong domain. That’s an easy thing to happen, using .com instead of .net or another top level domain designator, or misspelling a domain name. Sometimes an email will hang up on the sender’s side if it has an attachment that is just too big for the email provider to handle.
DNS and Routing issues
If the domain itself is misconfigured, or if the domain registration has expired, those MX records won’t be able to help find that email server. Occasionally a DNS outage occurs, which usually only causes delays, but sometimes it will force a timeout, and the message is discarded. If DNS information changes and one of the servers doesn’t get the update, it may give outdated information to the query, sending the message in the wrong direction.
Security filters and spam defenses
A message may fail some of the DKIM checks I talked about, or one of the other checks a security filter performs, causing the message to end up as a reject or in a spam folder. If the content itself looks “spammy,” with lots of links, sketchy keywords, shortened URLs, or suspicious attachments, the filters will toss the message out. They’ll also reject bulk mails or newsletters from addresses with poor reputations. It’s also possible to set the filters to graylist or throttle messages from new or unknown senders to prioritize the messages from known and trusted senders.
Silent drops and quarantines
Some email providers just drop messages they consider to be dangerous. There are also corporate settings that might allow messages to be held in quarantine until an administrator can review them, rather than either delivering them immediately or rejecting them immediately. The server never gets a bounce message, the recipient doesn’t see the message, so it looks like the message just vanished.
Bounces and error messages (when you’re lucky)
Not all bounces mean the same thing. A “hard bounce” means that the address doesn’t exist, or the domain is invalid. A “soft bounce” happens when the mailbox is full, the server is temporarily unavailable, or the receiver can’t handle the attachment because it’s too big. In the bottom section of the bounce message, you’ll see something like “technical details” or “remote server said…”. If they don’t provide an explanation, use this quick reference: 550 means the mailbox is unavailable, or the address doesn’t exist; 552 means the box is full or they’re out of space due to storage; 554 indicates that the message was rejected; 421 or 451 indicates a temporary server problem.
Why Emails Disappear After Arrival
But what about those messages that you swear you saw, and they’re just not there now? There’s almost always a simple explanation, and once you know what happened, it’s usually an easy fix to keep it from happening again.
Filters, rules, and folders
Check to see if you have created a rule that moves a mail automatically to another folder. If you have auto-archiving set up, a message may get moved to the Archive, but not deleted, based on the rules that govern the auto-archiving. There may also be a conflict between a rule at the server and a rule at the client. You may think a rule does one thing but to the server, it means something different.
Spam and Junk filters
At the receiver’s end, a spam or junk filter may reclassify an existing message due to later user actions or some updated model. And some clean up actions by the provider may clean out a junk or spam filter automatically periodically – so remember that the spam folder is not a file cabinet. It’s important to train the filters to recognize messages that are important to you. If you get an opportunity to tell the client to move a message out of spam, that’s more effective than just dragging it out of that folder.
POP vs. IMAP confusion
In the paragraph above about POP and IMAP, I explained how they are different. If you think you’re using IMAP, but you’re really using POP, you may have deleted it from the server, so another device won’t see it. Or there may be a fight going on between different devices over what should be done with the message.
Storage limits and auto-deletion
Depending on the provider’s rules, a full mailbox may be causing older messages to be purged or new ones to be rejected. There may be automatic deletion rules as well, that delete trash or spam after a certain number of days. A provider might also have policies that remove emails after long periods of inactivity.
Account issues and compromise
It’s possible that someone has gained control of the account and they’re manually deleting or moving messages. Attackers often add filters and forwarding rules to hide incoming messages. The message may appear briefly before the filter or forwarder handles the message for the attacker. When this happens, it’ll be targeted at a certain type of emails. If you notice that it only happens with messages from a particular sender, or with a certain type of subject, check with the Support team to see if there’s a problem.
How to Track Down a “Missing” Email
You may want to print this off and keep it as a checklist:
- Confirm the exact address used by you or the sender
- Check All Mail items for the sender’s name, subject, or keywords
- Check Sent, Outbox, and Drafts to make sure the message actually went out
- Check Spam/Junk, promotions, updates, and Social tabs
- If you can look at Webmail, that can help rule out filters that operate on the device itself
- Check any rules you have set
- Look for forwarding addresses or auto-delete rules
- Look for deliver failure notifications and note any common error messages
- Contact support if everything looks right but messages still never get where they’re supposed to; provide the time, sender, recipient, subject line, and any error text.
Making Your Emails Less Likely to Vanish
If you send emails to a large group of recipients all at one time (like a newsletter or marketing message), make sure you’re using a reputable email provider or sending service, and avoid sending large attachments directly.
Encourage contacts to add you to their address book or safe-sender list
Use clear, non-spammy subject lines, and avoid deceptive formatting
If you’re running a business, make sure to authenticate your domain properly and monitor your sending reputation. Your mail host can help you with this.
Your Turn
Missing email is really frustrating – and it can be devilishly difficult to chase down! I hope I provided some useful explanation of what happens, and, even better, ways to find what went missing or at least stop the bleeding. Drop a comment with any further questions you may have.
My photography shops are https://www.oakwoodfineartphotography.com/ and https://oakwoodfineart.etsy.com, my merch shop is https://www.zazzle.com/store/south_fried_shop.
Check out my New and Featured page – the latest photos and merch I’ve added to my shops! https://oakwoodexperience.com/new-and-featured/
Curious about safeguarding your digital life without getting lost in the technical weeds? Check out ‘Your Data, Your Devices, and You’—a straightforward guide to understanding and protecting your online presence. Perfect for those who love tech but not the jargon. Available now on Amazon:
https://www.amazon.com/Your-Data-Devices-Easy-Follow-ebook/dp/B0D5287NR3
