Home › Blog › Why Your Cold Emails Go to Spam (and How to Fix It)

Back to Blog
Deliverability7 min readOctober 17, 2026

Why Your Cold Emails Go to Spam (and How to Fix It, in the Order That Works)

A campaign that was landing is suddenly in spam. The cause is one of seven things, and they are worth checking in cost order: a broken record, a listing, pace that crept, a list that aged, a content change, a shared tracking domain, or a domain that is simply spent. Here is the diagnosis, the tool for each step, and the fix.

Cold Email Expert · WarmInboxes
Share this guide
Diagnosing why cold emails land in the spam folder

Quick Answer: Check Records, Listings, Bounces and Pace Before You Touch the Copy

Cold email goes to spam for one of seven reasons, and the cheap ones to check are the common ones: an authentication record that broke, a blacklist listing, a bounce rate above 2% from an aged list, a daily pace that crept above about 15 per inbox on Google or 8 on Microsoft, a tracking domain shared with other senders, a content change such as a link in the first touch, and, last, a domain whose reputation is spent. Work down the list in that order. Each step has a free check, each takes minutes, and copy is the last thing to change, not the first.

First, Confirm It Is Spam and Not Silence

Low replies have two causes that look identical from the sending tool: the mail is in spam, or it is in the inbox and nobody wants it. Before diagnosing deliverability, send the live campaign template from the live inboxes to three seed accounts you control, one on Gmail, one on Outlook.com, one on a Microsoft 365 tenant, and look at where they land. If all three inbox, your problem is targeting or offer, and the opens-but-no-replies article is the one to read. If any of them spams, continue.

1. A Record Broke

Authentication is pass/fail and it fails quietly: a registrar migration drops a TXT record, a new sequencer signs DKIM with its own domain, an SPF include pushes the domain over the ten-lookup limit and the record goes to permerror while still looking valid. Run the authentication checker on every sending domain, then read the headers of one of the seed messages with the header analyzer. You want spf=pass, dkim=pass signed by your domain, and dmarc=pass. Anything else is the cause, and it is fixed in DNS the same day.

2. A Listing

Run the blacklist checker on the domains and, if you send through a private server, the IPs. Most public lists carry little weight; a few carry a lot, and the checker names which. A SURBL listing means a link in your message, often the tracking domain, is listed rather than you. A Spamhaus listing is the one to take seriously; it usually indicates a spam-trap hit, which is a list-quality problem, and it is not something a free tool can check for you, because the DBL needs a paid key.

3. Bounces Climbed

Pull the bounce rate per domain for the last seven days. Above 2% the list is old or was never verified; above 3% receivers are already treating you as a sender who does not know their recipients. Paste the bounce messages into the bounce analyzer: 5xx unknown-user codes say verify the list, 4xx deferrals clustered on one provider say that provider is rate-limiting you, which is a pace problem. Re-verify anything older than 60 days before sending another message to it.

4. Pace Crept

Nobody decides to burn a fleet. Somebody approves 25 a day instead of 15 for one push, 25 becomes normal, 40 follows. Pull the per-inbox daily send count and compare it with the pace the fleet was launched at. The numbers that last are about 15 cold sends per inbox per day on Google Workspace, 8 on Microsoft 365, 2 on Azure tenants; the sending limits article explains why the provider ceilings are irrelevant to this. If pace crept, bring it back and give the domain a week; if it was never at a sustainable level, this is the cause and the rest of the list is secondary.

Volume is bought with inboxes, not with send counts. The campaign that needs 500 a day needs about 34 Google inboxes, not 10 inboxes at 50. Every fleet we have seen rebuilt quarterly was running the second arithmetic.

5. A Tracking Domain You Share

Open and click tracking rewrites your links through a tracking domain. If it is the sequencer's default, you share it with every other customer, and their reputation is yours. Run the tracking domain checker; if it resolves to a shared host, set up a custom tracking domain or turn tracking off. We turned open tracking off across our own fleet and the results are published.

6. The Content Changed

Content is a real signal and an overrated one. The changes that matter: a link in the first touch, an image or logo, a signature with four links, HTML templates where plain text was, an attachment, a tracking pixel. The changes that do not matter much: one sentence for another, a different greeting, the word "free". Compare the current template with the one that was landing, revert the structural differences first, and run both through the spam checker and the link scanner to see what a filter sees.

7. The Domain Is Spent

If records pass, nothing is listed, bounces are under 2%, pace is sane, tracking is yours and the content is plain, and the seed test still spams, the domain has used up its reputation and no setting will restore it this week. Rest it on warmup-only traffic for one to two weeks and return at half pace to your most engaged segment, or retire it and move the campaign to a fresh domain. The decision tree says which, from the signature of the failure.

The Fix Sequence, Compressed

  • •Seed test on Gmail, Outlook.com and a Microsoft 365 tenant. Confirm it is spam.
  • •Authentication checker, then a delivered header. Fix DNS the same day.
  • •Blacklist checker on domains and IPs. Act on the listings that matter.
  • •Bounce rate per domain. Above 2%, re-verify the list before the next send.
  • •Per-inbox pace back to about 15 on Google, 8 on Microsoft. Hold it a week.
  • •Own tracking domain or no tracking. Plain-text first touch, no link.
  • •Still spam: rest or retire the domain. Move the campaign to standby infrastructure.

The last step is the one that hurts when there is no standby. It is why we keep prewarmed capacity in reserve for our own agency and why we sell it the same way: Google, Microsoft 365 and Azure inboxes on prewarmed domains with the DNS verified before you log in, delivered within 48 to 72 hours, so the day a domain burns is not the day a 21-day warmup begins. The inboxing playbook is the full operating pattern.

Frequently Asked Questions

My cold emails suddenly started going to spam. What is the most likely cause?

If nothing in your setup changed, pace or list quality. Someone raised the daily send count for a push, or the list is older and bounces climbed above 2%. If something did change, that change: a new sequencer that signs DKIM with its own domain, a new tracking domain, a link added to the first touch. Check authentication first because it is a two-minute test, then bounces, then pace.

How can I tell whether it is Gmail or Outlook filtering me?

Reply rate by recipient provider. Segment your list by ESP, compare positive reply rates, and the provider that collapsed is the one filtering you. Outlook-only trouble usually points at SCL scoring of an unfamiliar sender or a content signal Microsoft weighs harder; Gmail-only trouble usually points at engagement and complaint history. The Outlook spam, Gmail inbox article walks the Microsoft case.

Will a warmup tool fix a domain that is already in spam?

Sometimes, if the cause was volume or list quality and the damage is shallow. Rest the domain for one to two weeks on warmup-only traffic, then return at half pace to your cleanest segment. If it does not recover in that window, or if the cause was a spam-trap hit or a Spamhaus listing, retire the domain. Warmup tools do not undo a listing.

Does changing my copy fix spam placement?

Only when copy was the cause, which is less often than people assume. A link in the first touch, an image, heavy HTML or a tracking pixel on a shared domain are content signals that matter. Swapping one plain-text sentence for another plain-text sentence does almost nothing. Fix infrastructure and list first; test copy last, one change at a time.

Can I check my sender reputation directly?

No receiver publishes it. Google Postmaster Tools shows a coarse domain reputation band and your spam rate for Gmail traffic once volume is high enough, and that is the only receiver-side view. Everything else is inference from your own bounce, reply and seed-test data.

Found this useful? Share it

Get FREE .com Domains

Prewarmed Inboxes, With No Warmup Wait

Get Prewarmed & Fresh Inboxes

Prewarmed & Fresh Inboxes

Google, Microsoft 365 and Azure inboxes with free prewarmed domains and DNS configured before you log in. Prewarmed inboxes send the day they land; every order is delivered within 48 to 72 hours.

Get Prewarmed & Fresh Inboxes