Fix Mailchimp emails going to spam

Mailchimp always sets the Return-Path to its own domains (subdomains of mcsv.net, mcdlv.net, or rsgsv.net), so SPF can never align with your domain and DMARC passes through DKIM alone. That makes the two DKIM CNAME records in your Domains settings the single highest-leverage fix on this page. Below: the Mailchimp-specific causes (authentication, Omnivore, shared IPs, list hygiene) and how to verify a fix with a real campaign send.

Why Mailchimp emails land in spam.

01

Your DKIM still signs a Mailchimp domain, not yours

Until you complete custom domain authentication, Mailchimp signs campaigns with its own DKIM identity. Since the February 2024 Google and Yahoo bulk sender rules, anyone sending 5,000+ emails a day to those providers needs authentication aligned with the From domain, and unaligned DKIM gives Gmail nothing to build your reputation on. Add the two CNAMEs from Account & billing > Domains > Start authentication (typically k2._domainkey pointing to dkim2.mcsv.net and k3._domainkey to dkim3.mcsv.net). Validation usually finishes in minutes but can take up to 48 hours.

02

SPF will never align, so DKIM is doing all the DMARC work

Mailchimp sets the Return-Path to a subdomain of mcsv.net, mcdlv.net, or rsgsv.net. SPF passes against Mailchimp's domain but cannot align with yours, and adding include:servers.mcsv.net to your own SPF record changes nothing for campaigns. That means DMARC on Mailchimp passes through DKIM alone. If the DKIM CNAMEs are missing or broken, every campaign fails DMARC outright.

03

Omnivore flagged your list, and Gmail would have too

Omnivore is Mailchimp's pre-send abuse-prediction system. It scans imports and new recipients for likely bounces, spam traps, and complainers, and it will pause a campaign or disable sending to an audience it distrusts. Treat the warning as a free audit: the same stale addresses that trip Omnivore generate the bounces and complaints that sink your Gmail reputation. Remove or externally verify flagged segments instead of looking for a workaround, because there isn't one.

04

You inherit the reputation of Mailchimp's shared IP pools

Regular Mailchimp campaigns always leave on shared IPs, and there is no self-serve dedicated IP for the marketing platform (dedicated IPs are a Mailchimp Transactional add-on at $29.95 per month). Mailchimp's deliverability team manages the pools and argues most senders do better on them. So the levers you actually control are domain reputation and list quality, which is exactly why aligned DKIM and a clean audience matter more on Mailchimp than on ESPs that sell dedicated IPs.

05

Stale, cleaned, and re-imported contacts are dragging engagement

Mailchimp marks hard-bounced addresses (and repeated soft bouncers) as cleaned and permanently excludes them from sends; you cannot flip a cleaned contact back to subscribed. If every send produces a fresh batch of cleaned contacts, Gmail saw those bounces before Mailchimp did. For audiences you have not mailed in months, run Mailchimp's reconfirm flow (export the audience, bulk unsubscribe, then invite contacts back through your signup form) before any full-list campaign.

How Mailchimp authenticates your mail.

As far as DMARC alignment goes, Mailchimp authentication is DKIM-only: the envelope always belongs to Mailchimp, so the two CNAME records decide everything.

record default the problem the fix
DKIM New accounts send campaigns DKIM-signed by Mailchimp's own domain until custom domain authentication is finished. Unaligned DKIM means your domain builds no reputation, and bulk senders fall short of the Gmail and Yahoo authentication rules in force since February 2024. Go to profile icon > Account & billing > Domains > Start authentication and add the two CNAMEs shown for your account, typically k2._domainkey to dkim2.mcsv.net and k3._domainkey to dkim3.mcsv.net.
SPF Every campaign's Return-Path is a Mailchimp subdomain (mcsv.net, mcdlv.net, or rsgsv.net), so SPF is evaluated against Mailchimp's domain. SPF passes but never aligns with your From domain, so it contributes nothing to DMARC on Mailchimp. Leave include:servers.mcsv.net out of your SPF record (it does nothing for campaigns) and rely on aligned DKIM instead.
DMARC Mailchimp does not publish a DMARC record for you; it lives in your own DNS. Without one, senders pushing 5,000+ emails a day to Gmail or Yahoo get throttled or rejected. Publish a TXT record at _dmarc.yourdomain.com starting with v=DMARC1; p=none; plus an rua reporting address; Mailchimp's Domains authentication flow prompts you for this same record.
Tracking domain Click tracking rewrites every link through a shared usX.list-manage.com redirect. The link domain never matches your From domain, and the shared redirector's reputation is outside your control. Marketing campaigns offer no custom tracking domain (only Mailchimp Transactional does), so for a strict B2B segment your only lever is unchecking Track clicks in the campaign's Settings & Tracking.

Once you have updated these records, confirm they pass with Unspam's free SPF checker, DKIM checker, and DMARC checker.

How to test a Mailchimp campaign with Unspam.

Inbox Preview generates screenshots without sending any mail, and Mailchimp's own docs warn that test emails are handled differently: they can take 24 hours or more and corporate firewalls are especially strict with them. Only a real campaign send carries your final DKIM signature, the Mailchimp Return-Path, and the rewritten list-manage links.

  1. 01

    Add Unspam's seed addresses to your audience

    Start a spam test or inbox placement test in Unspam and copy the test address or seed list. In Mailchimp, go to Audience > Add contacts > Import contacts, choose Copy and paste, paste the addresses, and apply a tag like Unspam-seeds. A handful of addresses will not trip Omnivore.

  2. 02

    Build the campaign exactly as you plan to send it

    Click Create > Email > Regular, use your authenticated From domain, and keep the final subject line and content. Skip placeholder copy; Mailchimp itself warns that filler text and the word test in subject lines trigger filters.

  3. 03

    Send the real campaign to the seed segment

    In the To step, pick your audience and segment by the Unspam-seeds tag, then send for real. Do not use Send a test email here; only an actual send goes through your k2/k3 DKIM keys, the Mailchimp Return-Path, and click-tracking rewrites.

  4. 04

    Read the results in Unspam

    Open the test in Unspam for the SpamAssassin-style spam score, placement across Gmail, Outlook, Yahoo, Zoho, ProtonMail, and AOL seeds, and SPF, DKIM, and DMARC verdicts measured on the live send. Client previews and the AI eye-tracking heatmap run on the same message.

  5. 05

    Fix, replicate, re-test

    Apply the fixes, then use Replicate from Campaigns > All campaigns to resend the identical campaign to the seed segment and compare runs. The free tier covers 10 spam tests and 3 inbox placement tests per month with no card; paid plans start at $9 per month with a 14-day refund.

The same test renders your campaign in 50+ real email clients, Gmail, Outlook, Apple Mail, iPhone, and Android among them, each in light and dark mode, via email client previews, so you confirm placement and rendering in one pass.

Mailchimp features that quietly affect delivery.

Omnivore screens every import and send

Mailchimp's abuse-prediction system checks addresses you have not contacted through Mailchimp before, both at import and at send time. A high predicted bounce or abuse rate pauses the campaign or disables sending to that audience entirely. The warning is list-level, not an account suspension, and the only way out is removing the flagged addresses.

No authentication? Mailchimp swaps in a mailchimpapp domain

Since the February 2024 sender rules, campaigns from free email addresses or unauthenticated domains go out with a Mailchimp subdomain (send.mailchimpapp.com or mail.mailchimpapp.com) as the sending domain. Mail keeps flowing and passes DMARC, but recipients see the substitute address and your own domain builds zero reputation.

Every tracked link goes through list-manage.com

Click tracking rewrites all links through shared usX.list-manage.com redirects, and the marketing platform has no custom tracking domain option. Link domains that never match your From domain are one more trust gap, and the shared redirector's reputation is whatever other Mailchimp senders make it.

Cleaned is forever, archived comes back

One hard bounce marks a contact cleaned, and you cannot resubscribe them; only the contact can, through your signup form. Unarchiving old contacts quietly restores stale, unengaged addresses to your sendable audience. For dormant lists, Mailchimp's reconfirm flow (export, bulk unsubscribe, signup-form invite) is the safe path.

What real Mailchimp senders run into.

The deliverability problems Mailchimp senders hit most often, each with the fix that resolves it.

We switched to single opt-in and started collecting spam traps without knowing it

Mailchimp's hosted signup forms default to single opt-in, so any person or bot can type any address onto your list with no confirmation. That quietly seeds recycled spam traps and typo or role addresses, driving the hard bounces and complaints that tank reputation and can trip Omnivore or a compliance review.

The fix Turn double opt-in back on for the audience: Audience > Contacts, pick the audience, then the three-dots menu > Audience settings > Form settings > edit the Email opt-in settings, choose Double opt-in, and save. New contacts from hosted or embedded forms must then click a confirmation link before landing on the list, which filters out most spam traps and typo or role addresses and cuts hard bounces and complaints. Double opt-in also auto-enables reCAPTCHA on those forms to block bots, with nothing extra to configure. One caveat: this governs only Mailchimp's own forms, not contacts added through the API or a third-party integration, so keep verifying imported and integration-sourced addresses externally.

One high-unsubscribe campaign got our sending suspended, not just throttled

Mailchimp's Compliance team auto-flags a single campaign that draws too many unsubscribes or spam complaints and disables all sending, including test emails, while it reviews the account. Senders describe it hitting out of the blue after one aggressive or off-audience send, and because forms and the API keep working, the block is easy to miss.

The fix This is a compliance pause, not a filtering problem, so no DNS, authentication, or content change will lift it. Find the details on your Account page under Account History, then fix the root cause: segment to recently engaged contacts, stop mailing purchased or long-dormant lists, and make the permission reason obvious. Follow the instructions in the Compliance message and reply if one is requested. Reviews run business hours only (Monday to Friday, 9am to 5pm EST) on a first-come, first-served basis, so expect a wait, then send conservatively once reinstated and do not re-blast the same list.

Everything technically 'delivers' but every campaign lands in Gmail's Promotions tab

Inbox placement is technically fine but functionally invisible: mail routes to Gmail's Promotions tab, not spam, so opens crater. Stripping images, links, and promo words rarely helps, because the tab decision is driven mostly by low engagement, the marketing-ESP send pattern, and lack of prior contact, not content.

The fix Promotions placement is engagement-driven, so chase engagement, not content tricks. Since Gmail's September 2025 switch to algorithmic Most Relevant sorting, even plain-text campaigns still land in Promotions if engagement is low. The highest-leverage moves are on your side: complete custom DKIM domain authentication, mail only recently engaged segments, and prune or sunset non-openers so your engaged rate climbs. On your confirmation page and welcome email you can ask subscribers to add your From address to their Google Contacts, though a saved contact makes Primary more likely rather than guaranteed. The reliable subscriber-side fix is dragging one email to Primary, which Gmail then offers to repeat for future messages. Do not expect subject-line edits to move it.

Our links started tripping 'possible fraud' and phishing warnings on recipients' security software

Mailchimp rewrites every tracked link through its list-manage.com redirector, so corporate security tools and browser or AV scanners sometimes flag campaigns where the visible link text does not match the underlying redirect URL, the same pattern phishers use. Senders report their own legitimate emails getting quarantined or warned about as possible fraud, especially in stricter corporate environments.

The fix Prefer descriptive anchor text ("Read the guide") over a raw URL as the visible link, since a visible raw URL that redirects through Mailchimp's tracker is exactly the visible-text-versus-destination mismatch scanners look for. This is the single most effective first step and the one Mailchimp itself recommends. It does not always fully resolve the warning, because the tracking redirect can still be scanned as a redirect on its own, so the most aggressive corporate filters may still flag it. For a strict B2B audience where warnings persist, the fallback is to turn off Track clicks in the campaign's Settings & Tracking so links are not rewritten at all, at the cost of click stats; Mailchimp frames this as a last resort.

Bulk sending via Mailchimp tanked our main domain, so even everyday Google Workspace replies now land in spam

Senders assume a separate sending subdomain isolates reputation, then a large Mailchimp campaign sours their Gmail reputation and everyday mail sent from the main domain (often via a Google Workspace Send As alias) starts hitting spam too. Gmail evaluates reputation at the organizational domain level, so the subdomain rolls up to the parent, and the Send As alias links the two.

The fix Pause sending immediately, since mailing into a souring reputation compounds the damage. Diagnose in Google Postmaster Tools for both the root and sending domain: if the Spam Rate spiked above 0.3 percent during the send, that is your answer, because Gmail measures recipients hitting report spam, not your ESP's abuse metrics. Warm the reputation back by mailing your most engaged openers first, then widening over days. For genuine isolation you need separate sending infrastructure, and ensure Mailchimp is DMARC-aligned on the sending domain. Note that a real subdomain is mail.brand.com, not a lookalike separate domain like emailbrand.com.

Mailchimp deliverability, answered.

Why does my Mailchimp test email go to spam when the real campaign is fine, or the other way around?

Because test sends and campaign sends are not handled the same way. Mailchimp's own docs say test emails can take 24 hours or more to arrive and that corporate antispam firewalls are especially strict with them, while Inbox Preview never sends mail at all. The only reliable signal is a real campaign sent to seed addresses you control.

I authenticated my domain. Why do DMARC reports still show SPF failing?

That is expected on Mailchimp and not a problem by itself. The Return-Path is always a Mailchimp subdomain (mcsv.net, mcdlv.net, or rsgsv.net), so SPF passes for Mailchimp's domain but never aligns with yours. DMARC evaluates SPF and DKIM independently, and your mail passes through aligned DKIM. If DKIM also shows unaligned, your k2/k3 CNAME records are what need fixing.

Can Unspam pull my campaigns from Mailchimp automatically?

No. Unspam does not integrate with the Mailchimp API or any other ESP API. You add Unspam's test address or seed list as contacts in your audience, send a real campaign to that segment, and read the results in Unspam. Only a real send carries your final authentication and link rewriting, so this is also the more accurate way to test.

Will a dedicated IP fix this?

Probably not, and for regular campaigns you cannot buy one anyway. Dedicated IPs are only sold as a Mailchimp Transactional add-on at $29.95 per month, and Mailchimp's own deliverability team says most senders perform better on its managed shared pools. Spam placement on Mailchimp is almost always a domain reputation, authentication, or list quality problem.

Omnivore blocked my campaign. Is my account suspended, and can anyone override it?

Your account is not suspended; an Omnivore warning applies to the audience, not the account. Nobody can override it, and Unspam cannot either, since Unspam has no access to your Mailchimp account. Export the audience, run it through an external verification service, remove the failures, and re-import the clean list.

Does the free plan itself get worse deliverability?

No, free and paid campaigns leave from the same shared infrastructure. The real gap is behavioral: free-plan senders more often skip custom domain authentication or use a gmail.com From address, so Mailchimp substitutes a mailchimpapp subdomain as the sending domain. That keeps mail flowing and passes DMARC, but every send builds reputation for Mailchimp's substitute domain instead of yours.

Mailchimp platform details were verified against publicly available documentation in June 2026 and may have changed since. Mailchimp is a trademark of its respective owner. Unspam is not affiliated with or endorsed by Mailchimp.

Test your next Mailchimp campaign before your subscribers do.