How To Prevent Email From Going Into Recipient's Junk Box ?
As business owner, many times we miss out opportunities / business deals just because the recipient do not receive the email we sent out. In actual fact, email did arrive but ended up in the SPAM / JUNK box.
Some large corporation will have very strict spam filtering system enforced. Free email providers like Hotmail and Yahoo frequently put legitimate email into Junk box.
Can we prevent this ? Yes.. by doing the following 2 basic things we can at least increase the chance of outgoing emails reaching the recipient’s INBOX most of the time.
First thing first, why our emails had been categorized as SPAM ?
- No / invalid SPF records
- No / invalid DKIM records
- Message looks spammy because it is too short
- Mail Server IP Blacklisted (beyond this topic)
- Email sent from unauthorised server (beyond this topic)
- many more..
I know, there are many reasons (eg : IP blacklisted, email contains virus, ….), but today I am going to discuss just a few. When email arrives at the recipient’s mail server, the system will first check for valid DNS SPF and DKIM text records for our domain.
For example if our outgoing email is : firstname.lastname@example.org, we need to have at least a SPF record in the bes1.com DNS settings, similar to the following :-
SET SPF TXT RECORD
bes1.com TXT “v=spf1 a mx ip4:184.108.40.206 redirect=_spf.yandex.net”
This is not enough… we need to further enhance its trustability by digitally signed all outgoing messages. We achieve this by having a DKIM record . Example of a dkim record :-
SET DKIM TXT RECORD
mail._domainkey.bes1.com TXT “v=DKIM1; k=rsa; t=s; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCyC0/qBSpbGxd5Qli1l2i07yO34lmScR60GUt2YOBo96NcNdmlNChQ/60E8w+weq6rEYInRkdC0kHRnwNSiNJntMUlibpopfcvaJuKGwcwQs1weBqxXJhFvSLWL8BGD3tUDW3HK/aZpI8j5ZkyYObehhPQB9z5JgLcWRyJRVRsiQIDAQAB”
So, how do I know that an email has been digitally signed and having proper SPF record ?
Easy, just check the Original email header in Hotmail / Yahoo . It will show you something similar to this :
Authentication-Results: spf=pass (sender IP is 220.127.116.11)
smtp.mailfrom=bes1.com; hotmail.com; dkim=pass (signature was verified)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bes1.com; s=mail; t=1498206177;
These are the validation done by recipient’s mail server. Email with this kind of header is highly trusted and it is unlikely that it will end up in Spam / Junk box. However, one more thing to add is to make the email message looks “longer” and standard (not spammy). How ? see below :-
SET EMAIL FOOTER SIGNATURE
So from now on, even if we write just a few words in the email, the overall message still consists of at least 10 lines, and more than 50 characters. It looks more tidy and more importantly it arrives in INBOX.
This is how it looks when email arrived in recipient’s inbox :-
In gmail, you may click “Show Original” to see gmail’s verification like this sample
In Hotmail, click Message Source to see