Your cold email campaign is running. Your copy is solid. Your list is targeted. Then you check your delivery rates and realize 30-40% of your emails aren't even hitting the inbox - they're going straight to spam.

This isn't bad luck. It's infrastructure.

Most people think spam filtering is random or that Gmail just hates cold email. It's not. Spam filters use specific, measurable signals - and if you control those signals, you control your deliverability. Here's what actually determines whether your emails land in the inbox or the trash folder.

1. Your Email Domain Authentication - SPF, DKIM, DMARC

This is the foundation. If your authentication isn't set up correctly, you're already losing 20-30% of your emails to spam filters before they even read your copy.

SPF (Sender Policy Framework): This tells Gmail, Outlook, and other providers which servers are allowed to send emails from your domain. Without it, filters assume you're spoofing.

Your SPF record should look like this:

v=spf1 include:sendgrid.net include:mailgun.org ~all

If you're using lemlist, SendGrid, Mailgun, or another platform, they'll give you the exact string. Add it to your domain's DNS records. Check it at mxtoolbox.com - you should see a pass.

DKIM (DomainKeys Identified Mail): This cryptographically signs your emails so recipients know they actually came from you.

Your email platform will generate a DKIM record. It looks messy - a long string of characters - but it goes in your DNS exactly as provided. Once it's live, mxtoolbox will show "pass" for DKIM validation too.

DMARC (Domain-based Message Authentication): This tells providers what to do if SPF or DKIM fails. Set it to a strict policy, not a lenient one.

v=DMARC1; p=quarantine; rua=mailto:[email protected]

This quarantines failed emails instead of delivering them. It's stricter, which is what you want. It signals to providers that you take authentication seriously.

Setup takes 20 minutes. Not doing it is leaving money on the table.

2. Your Sending Volume and Warmup Schedule

Spam filters track sending patterns. If you send 500 cold emails from a new domain on day one, filters flag you immediately as a bot or spammer.

You need a warmup. Here's the actual schedule:

This isn't optional. Gmail and Outlook monitor new sending patterns closely. A domain that looks like it went from silent to blasting 1,000 emails overnight gets throttled hard.

3. Email List Quality Matters More Than You Think

Sending to invalid or outdated email addresses tanks your spam score. Here's why: every bounce, every hard failure, every "address not found" response tells Gmail your list quality is poor. They assume you're not careful about where you're sending, which means they assume you spam.

Clean your list before you send:

A clean list of 500 high-quality addresses outperforms a dirty list of 5,000 in both deliverability and reply rates.

4. Your Email Content - The Signals That Trigger Filters

Even with perfect authentication, certain content patterns trigger spam filters automatically.

Avoid these:

What actually works: Plain text emails with one clear call-to-action. Short paragraphs. Natural language.

Hey [Name], I noticed [Company] recently [specific trigger]. We work with [similar companies] to [outcome]. Worth a quick conversation? [Your name]

This format - conversational, no hype, one link - has a 5-8% reply rate and gets flagged by filters maybe 2-3% of the time. Compare that to templated, formatted emails with multiple CTAs. They hit spam at 15-20% rates.

5. Monitor Your Reputation Score

Every time someone marks your email as spam, your sending reputation drops. Gmail and Outlook track this per sending IP and per domain.

Monitor it using:

If your complaint rate hits 0.5%, reduce sending volume immediately. You're getting reported too much. If it climbs to 1%, providers will block you.

6. Soft Bounces and Hard Bounces - Handle Them Differently

A soft bounce is temporary (mailbox full, server down). A hard bounce is permanent (address doesn't exist). Treat them differently or your reputation tanks.

Hard bounces must be removed immediately and permanently. Keep sending to a hard bounce address and filters assume you don't maintain your list. Hard bounces above 5% of your sends will trigger blocks.

Soft bounces can be retried once, but not repeatedly. Most platforms retry automatically - that's fine. But if an address soft bounces 3+ times in a week, remove it.

7. Use a Dedicated Sending Domain

Never send cold email from your main business domain. Your brand domain is too valuable. One campaign with a slightly high complaint rate poisons it for transactional email (invoices, confirmations, password resets) for months.

Set up a subdomain for outreach. Something like:

Use this subdomain exclusively for cold email. Your main domain stays clean. If the outreach domain takes a hit, your core business email still lands in inboxes.

The Gap: Knowing This vs. Running It Well

Reading this, you now understand the mechanics. You can set up authentication, build a warmup schedule, clean a list, and write inbox-friendly copy.

But running this at scale - managing multiple sending domains, monitoring reputation scores across platforms, adjusting volume based on complaint rates, handling list maintenance, testing and iterating based on delivery data - that's where most people stumble. It's not one decision. It's ongoing operational work.

That's where many teams bring in an expert. Not because the fundamentals are hard - they're not - but because managing all of it simultaneously while also writing copy, managing replies, and tracking metrics is a full-time job that distracts from closing deals. Some teams hire for it, others outsource so they can focus on what they do best.

Related Guides