I have a postfix SMTP server on Ubuntu. I have valid SPF and DKIM records, as verified by the email header my customer received.
Authentication-Results: spf=pass (sender IP is XXX.XXX.XXX.XXX) smtp.mailfrom=mydomain.com; hotmail.com; dkim=pass (signature was verified) header.d=mydomain.com;hotmail.com; dmarc=bestguesspass action=none header.from=mydomain.com;
However, the email falls into junk only in Outlook / Live.com / hotmail. The Spam Confidence Level (SCL) is 5 (spam).
X-MS-Exchange-Organization-SCL: 5
X-MS-Exchange-Organization-PCL: 2
The FAQ of SCL asks me to join 3rd party ReturnPath Certification Program to verify each email sent, but the certification program is very expensive.
Is there any alternatives to lower the SCL score? Does adding DMARC record help?
Update:
- DNS is configured correctly, including A, MX, PTR records.
- The server IP address is not on DNSRBLs (blacklist)
- Not enough sending volume to calculate Sender Score in http://www.senderscore.org
- No fake header. The mail is sent via PHP library SwiftMailer
This question is not about generic spam filter-fighting strategy; it's about Microsoft's Spam Confidence Level (SCL).
Here's what helped me:
Make sure that SPF and DomainKeys / DKIM are setup and working (DMARC might help you)
Try disabling IPv6 when sending mail (I had the problem with postfix that the HELO headers didn't work correctly with ipv6 and the mail got sent to spam
Make sure that your server supports TLS / SSL encryption for sending mail
Even if all of the above points are met and email reputation test return 100% trust levels, microsofts darn system might still send your mail to spam. Since their support isnt very helpful (it's an array of some automatic emails) you either need to wait until the system updates its database or ask your recipients to add your mail address to their contacts.
Same goes for Google and co as well