Stop MailChimp campaigns going to spam and junk folders

Set up the SPF record between your domain and MailChimp’s servers

Taylor Cooney
ART + marketing
3 min readJun 15, 2017

--

Over the past 3 months, I’ve gotten a pretty good understanding of how email campaigns work and how to fight spam. I spent about two weeks redoing our transactional mailers at Nudge Rewards and, more recently, launching our Toronto Review website, d(ate). In those two weeks I was able to sanitize our mailers, improve our spam assassin score to a perfect 10/10 (up from 7/10) and increase delivery rates to subscribers.

Why do I get flagged as spam in the first place?

There are a handful of reasons why your email campaign may be getting flagged as spam by your subscribers inbox. Run a test on your emails and you’ll see how things such as broken links, image alt attributes, text-to-image ratio and missing list-unsubscriber headers can affect the delivery success of your email campaigns.

One thing that first-time marketeers often overlook is authenticating their domain with their mailing service (MailChimp). If you find that you’re not fully authenticated, you’ll need to configure an SPF record so that your server, example.com, is authorized to use MailChimp’s servers and safely send mail as mailinglist@example.com. This may seem overwhelming at first but adding the necessary DNS SPF and DKIM records for your domain is straightforward.

MailChimp account after being authenticated.

Authenticate your domain and SPF records

To authenticate your domain and verify MailChimp’s servers so that your mail can send reliably, you’ll need access to your domain’s DNS records and your MailChimp account:

· In MailChimp, go to Account → Settings → Verified Domains. Click View Setup Instructions to view your domain authentication (You should be verified to send, but not authenticated to send).

· In your domain, go to the DNS Zone Editor and view the DNS records for your domain. (a TXT record should exists for v=spf1 a mx include:websitewelcome.com ~all **Depending on your server, it could be either websitewelcome.com or google.com, not example.com as similar in the other examples. You can Google “SPF record websitewelcome.com” for more readings.)

· Create a new CNAME and modify the existing TXT record for your domain, one at a time. You should have access to the values for each record from the first step. The key here is modifying the existing SPF record as your domain can only have a single SPF record. You’ll still need to create a new CNAME record.

· DKIM: Create a CNAME record for k1._domainkey.example.com with this value: dkim.mcsv.net. If you need to insert a TTL for the record, follow your other records; I set the TTL to 144000.

Record   Name             Value
CNAME k1._domainkey dkim.mcsv.net

· SPF: Modify the TXT record for example.com. Your domain can only have a single SPF record. You’ll want to modify the SPF record that already exists in your DNS records and combine them like so (this is the main mistake that I made when I first configured this, and I set two SPF records which renders this void):

Record Name   Value
TXT none v=spf1 a mx include:servers.mcsv.net include:websitewelcome.com ~all.

-all: mails sent from hosts not specifically allowed are not permitted to send mails. ?all: means any not specified host is neutral and nothing can be said about the validity of it.

Delivery! Success!

After you’ve set the DKIM record and updated your SPF record to include MailChimp’s servers, you’re domain should be fully authenticated! In MailChimp under Verified Domains, you’re recent authentication should be reflected if you refresh the page. If you run another test on your emails, you should find that your score increases now that you’re domain is fully authenticated.

--

--

Taylor Cooney
ART + marketing

Ruby on Rails Developer at Universe. Previously Nudge Rewards and Kik.