Emails from my domain go to spam: SPF, DKIM and DMARC

Your mail lands in spam when the receiving server cannot prove the mail came from you. Three DNS records do the proving. Most small business domains are missing at least one.

What to do, in order

  1. Check SPF. Run dig +short TXT yourdomain.com. You want exactly one line starting v=spf1 that names every service that sends for you, for example include:_spf.google.com for Google Workspace. Two SPF lines is an error. Merge them into one.
  2. Turn on DKIM. Your mail provider gives you a record to publish, usually a TXT or CNAME at something._domainkey.yourdomain.com. In Google Workspace it is under Apps, Gmail, Authenticate email. Publish it, then click "start authentication".
  3. Add DMARC. Publish a TXT record at _dmarc.yourdomain.com with v=DMARC1; p=none; rua=mailto:you@yourdomain.com. Start with p=none. Move to quarantine once the reports show your real mail passing.
  4. Check the website's contact form. Forms that send "from" your domain through the web host's server fail SPF. Send them through your real mail provider with an SMTP plugin instead.
  5. Test. Send a message to a Gmail address, open it, choose "Show original". SPF, DKIM and DMARC should all say PASS.

If one still fails, send me the domain and I will tell you which record is wrong.


Want the rest of your site checked after it is back? Run a free 40-point check at tinkeraudit.com.