A delayed Bounce happens when a receiving party has multiple MX servers accepting email for a certain domain, configured in such a way that some servers are authoritative (in the back) but others are not (conveniently located at the front).
I would say it is a bad practice and it should not be used simply on the grounds that this method does not follow the SMTP protocol as intended. However it is possible to speed up email intake with this method and some companies use it.
Hence a front server will take an email just because it was sent to the destination domain, without making the required verifications. Later on, an authoritative server will make said mandatory verifications, find an issue and finally return an email that was previously accepted, hence the name “delayed bounce”.
Let’s see how this process works with a deep and keen look into the engineering involved:
SMTP Client (Origin): Hello mail.xyz.com, I was told you are in charge for email sent to the xyz.com domain.
SMTP Server (destination): Hey pal, yes, that would be me. My name is mail.xyz.com, I have 25 clones and we are all named mail.xyz.com. But you can tell us apart because we all have different IPs For example, I am 102.11.33.44, but my brother here is 102.11.33.45, completelly different!
102.11.33.45: hey there!
Origin: Hey.
Destination: Oh! and I speak 33 different protocols, let me list them for you…
Origin: Yeah, yeah, thank you for the list of 33 protocols, I will treasure it forever more in my RAM…
By the way, it is so great to chat with you guys, but the reason why I have connected with you is that I have this email for abc@xyz.com
Destination: Oh! yes, an email! Let me see… Yup, I have an abc mailbox on domain xyz.com, let me see if that account has free space… Yes it does, let me see if it is not blocked… or banned… or on vacation, or… Yes, it seems it meets the conditions to receive email… Yes it does, I’ll take your email and deliver it for you.
Origin: Thanks pal, take it easy and have a great day!
Destination: You too, see you soon, man I’m so eager to send you the list of protocols I speak, yet again!
Yes, the SMTP protocol is so old, even computers were kind to each other at the time…
But, nowadays, everything is so urgent! No one ain’t no time for chitchat!!!
So, in order to speed things up, some SMTP clients will go like this.
SMTP Client (Origin): Hello mail.xyz.com, I was told you are the…
SMTP Server (destination): Yup it’s here, give that email, c’mon hurry up, ain’t got all day!!!
Origin: I have an email for abc@xy…
Destination: Yes, yes, yes, we’ll take it! thank you for your visit, byyyeeee!
5 hours later…
SMTP server 1 (Receiver, aka destination… but not really): Hey Autho, I got this email for abc@xyz.com this morning, can you deliver it for me?
SMTP server 2 (I’m authoritative, but everyone calls me Autho): Yeah, about that, it would seem we do not currently have an account “abc” at the moment… you know what I’m sayin…
Receiver: Say whaaaaaat?
Autho: Yeah, it would appear that we do not currently have an account “abc”…
Receiver: I heard you the first time! it was a rhetorical question, you moron.
Autho: Well, you now have to deal with that, who’s the moron now, uh?
Receiver: You are the moron, I am not authoritative, so YOU deal with that.
Autho: OK, OK, give me the context and I’ll deal with it.
Receiver: You want some context? Go ask your mama for context, you called me a moron, I’m giving you no fucking context! You go ahead ans suck my context, moron!
One hour later:
Autho: Hey Origin, I think you gave us an email for abc@xyz.com this morning?
Origin: That’s right, gave it to… I’m not sure who I gave it to, it was all so fast…
Autho: Yeah well, as it turns out, we might or might not have an account abc on domain xyz.com
Origin: What do you mean?
Autho: Yeah, well, just that…
Origin: Just what???
Autho: We might or might not have an account abc on domain xyz.com
Origin: You guys took the email, it is your responsibility now!
Autho: OK, OK We do NOT have an account abc on domain xyz.com
Origin: What a bunch of mailerfuckers…
Autho: So I’m returning the email to you…
Some SMTP server in the background: We haven’t even opened it yet.
Some other SMTP server in the background: -muted laughter-
Origin: What is the context of this error?
Autho: Context? what do you mean context?
Origin: Well, you are returning an email, for which you took responsibility for, I now need to get that email back to whom created it, it would be great if I can give them a reason why this all happen…
Autho: I don’t know what you are talking about, there is no such thing as “context”, take the email and go mail yourself! you moron…