Home › Blog › Cold Email Deliverability Questions, Answered by Operators

Back to Blog
Deliverability38 min readNovember 5, 2026

Cold Email Deliverability Questions, Answered the Way Operators Work Them

53 questions cold email teams bring us, from replies stopping after a strong start to bounce spikes, SURBL listings and how much infrastructure a volume needs, each answered the way we diagnose it: checks first, in order, and new infrastructure only when the evidence says so.

Cold Email Expert · WarmInboxes
Share this guide
Cold email deliverability questions grouped by problem

How to Use This Page

Find your problem below. Each answer is the short version of how we work it: what to check, in what order, and what to do with the result. They follow one rule: diagnose first, sell second. New infrastructure is the answer only when authentication, reputation, tracking, the list, the provider mix, the pace and the campaign have been checked.

The same answers are what the free Deliverability Agent gives inside your own AI, where it also runs the checks for you. The full method is in the operator playbook.

Replies dropped

My cold emails got great replies for the first 5 days, then stopped. What happened?

Rule out authentication, reputation, tracking and bounces first, and ask for the before-and-after numbers. If bounces spiked, classify them. If only replies fell on healthy infrastructure, the copy being recognised is the most common cause we see: test new copy at 5 a day and ramp.

What not to do

  • Do not sell replacement inboxes as the first answer.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Healthy, Fixable, Degraded, Campaign or copy issue, List or data issue

The agent checks with: check_email_authentication, check_domain_reputation, check_blacklist, check_tracking_domain, analyze_bounces, analyze_cold_email, segment_esp, get_diagnostic_playbook

Read the full method →

My reply rate fell from about 2% to under 1%. Is my domain burned?

Not from the reply rate alone. Ask for the baseline and bounces, and check authentication, listings, tracking and the provider split. If the infrastructure is healthy and it was working before, it is most often the copy being recognised: lower sending, raise warmup, spintax and clean up.

What not to do

  • Do not call a domain burned from the reply rate alone.

Evidence: WarmInboxes operating rule from running fleets; Measured in a WarmInboxes dataset (high confidence) · Can conclude: Healthy, Fixable, Unclear, Degraded, Campaign or copy issue

The agent checks with: expand_spintax, clean_csv, verify_email, check_domain_reputation, check_deliverability, check_surbl, check_tracking_domain, analyze_bounces, segment_esp

Read the full method →

Each new lead batch performs worse than the last. Is it my infrastructure or my targeting?

Compare the new list with the previous ones first. ESP mix shifting on consistent infrastructure is the flag; same composition and falling results points at the infrastructure; the same people again and again is lead fatigue. Bring each batch in at 5, then 10, then 15 a day.

What not to do

  • Do not blame the infrastructure before comparing the lists.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: List or data issue, Provider-specific issue, Degraded

The agent checks with: segment_esp, check_suppression, audit_campaign, segment_esp, analyze_bounces, check_domain_reputation

Read the full method →

One campaign is dead but another on the same inboxes works. Are the inboxes burned?

Not if the other campaign performs well on them: the infrastructure is healthy. Compare the two lists' ESP mix. If the dead campaign's mix differs, add WarmInboxes infrastructure that matches it; if the mix is similar, it is the copy or the list. Test the fix at 5 a day.

What not to do

  • Do not replace inboxes that are working for another campaign.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Campaign or copy issue, List or data issue, Provider-specific issue

The agent checks with: segment_esp, plan_from_list, audit_campaign, analyze_cold_email, segment_esp, clean_csv, check_tracking_domain

Read the full method →

Spam and placement

SPF, DKIM and DMARC all pass. Why am I still landing in spam?

Authentication is table stakes, not a placement guarantee. Once it passes, stop touching DNS. First check the senders match the recipients (Google to Google-hosted, Azure to everyone else), then reputation, SURBL, the tracking domain, pace, domain age, bounces, content, and Microsoft's SCL if Outlook is the problem.

What not to do

  • Do not change SPF, DKIM or DMARC again once they pass.

Evidence: WarmInboxes operating rule from running fleets; Measured in a WarmInboxes dataset (high confidence) · Can conclude: Provider-specific issue, Campaign or copy issue, List or data issue, Fixable

The agent checks with: segment_esp, plan_from_list, check_deliverability, check_domain_reputation, check_surbl, check_tracking_domain, check_domain_expiry, analyze_bounces, analyze_cold_email, analyze_headers, analyze_microsoft_headers

Read the full method →

My emails land in Gmail but Outlook puts them in junk. Why?

Confirm it is provider-specific, then read a raw Outlook-delivered header: SCL, BCL and Microsoft's authentication verdicts. Check domain age and how Microsoft-heavy the list is. Gmail placement is no evidence Microsoft will behave the same.

What not to do

  • Do not edit DNS records because Outlook junks mail that Gmail inboxes.

Evidence: WarmInboxes operating rule from running fleets; Measured in a WarmInboxes dataset (high confidence) · Can conclude: Provider-specific issue

The agent checks with: analyze_microsoft_headers, analyze_headers, check_domain_reputation, check_domain_expiry, segment_esp, check_tracking_domain

Read the full method →

My warmup tool says 100% health, but cold emails to real prospects land in spam. How?

A warmup score measures mail between warmup accounts, not how real recipients' filters treat your cold email. Test it yourself, best of three; if most land in spam, stop cold on that inbox and raise warmup. Fix the copy and the list before anything else, since recipient spam reports burn senders fastest.

What not to do

  • Do not treat a warmup dashboard score as a receiver-side reputation score.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Unclear, Campaign or copy issue, List or data issue

The agent checks with: check_deliverability, check_domain_reputation, segment_esp, analyze_cold_email, check_tracking_domain, analyze_bounces, burned_inbox_guidance

Read the full method →

My sending domains look clean. Could my tracking domain be the problem?

Yes: the tracker is in every message, so a listed or abused one drags down clean mail, and a SURBL-listed main domain makes tracked links bounce. Mostly, turn open tracking off: it is what a tracker is mainly for, and we see it act as a strong fingerprint. Keep one only for click tracking.

What not to do

  • Do not buy new inboxes while a bad tracker is in every message; they would carry it too.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Fixable

The agent checks with: check_tracking_domain, check_surbl, check_ssl, check_cname

Read the full method →

My domain is listed on SURBL. Do I need to throw it away?

Depends on who you send to. To Google, Microsoft and other providers, no: in our SURBL study reply rate was flat across a first listing, and they run their own filters. If you mainly target secure email gateways, yes: replace it, and expect the new ones to burn fast too.

What not to do

  • Do not throw away a SURBL-listed domain that sends to Google, Microsoft and other mailbox providers.

Evidence: Measured in a WarmInboxes dataset; WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Healthy, Degraded

The agent checks with: check_surbl, check_domain_reputation, check_tracking_domain, segment_esp

Read the full method →

Metrics that matter

Is a 1% reply rate good? What numbers should I actually care about?

Compare against your own baseline and sibling campaigns on comparable lists, not a generic benchmark. Track positive reply rate, meetings, bounce rate and placement; open rate is the weakest signal.

What not to do

  • Do not compare against a generic reply-rate benchmark.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Healthy, Unclear

The agent checks with: find_resources, analyze_bounces

Read the full method →

My open rate went from 70% to 35%. Does that mean I am going to spam?

Not on its own. Opens are noisy: privacy protection and security scanners inflate and distort them, and tracking setup changes move them. Check replies, positive replies, bounces, placement and provider-specific trends first.

What not to do

  • Do not read an open-rate drop as proof of spam placement.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Unclear

The agent checks with: check_tracking_domain, analyze_email_html, segment_esp

Read the full method →

Sending volume and warmup

I send 15 cold and 30 warmup emails per inbox a day. Is that too much? Does warmup count?

Receivers see all of an inbox's activity, whatever the sequencer calls it. 15 cold with 30 warmup is our minimum 1:2 ratio and 45 in total, under the roughly 50 a day a Google inbox should stay below. Start lower on young or recovering accounts.

What not to do

  • Do not count warmup inside the cold cap.

Evidence: WarmInboxes operating rule from running fleets; A mailbox provider or legal requirement (high confidence) · Can conclude: Healthy, Capacity

The agent checks with: plan_infrastructure, plan_rotation, check_domain_expiry

Read the full method →

What is the safest number of cold emails per inbox per day?

About 15 a day on Google Workspace, 8 on Microsoft 365, and 2 per inbox on a full Azure tenant, from the planner. Scale by adding inboxes and domains, never by pushing a few inboxes harder, and never use a provider's published ceiling as a target.

What not to do

  • Do not use a provider's published sending ceiling as a cold email target.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Capacity

The agent checks with: plan_infrastructure, plan_rotation

Read the full method →

I bought a new domain. How long do I warm it before sending cold email?

Ideally, let a new domain age about a month before setting up inboxes on it, then warm the inboxes for 14 to 21 days and ramp rather than start at full pace. The month is ideal, not required. If waiting is not an option, prewarmed inboxes are the alternative, and they arrive with sender history.

What not to do

  • Do not send cold email from a fresh inbox before its warmup is done.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Capacity

The agent checks with: check_domain_expiry, check_email_authentication, plan_infrastructure

Read the full method →

Does inbox rotation actually help, or am I wasting money keeping half my inboxes resting?

Resting inboxes are not idle: in our warm rotation they stop first-touch cold mail but still send follow-ups, and late replies land. In our fleets rotation typically about doubles inbox and domain life, so it books more meetings and costs less than rebuying. Show the fleet size and cost.

What not to do

  • Do not present rotation as a placement guarantee.

Evidence: WarmInboxes operating rule from running fleets (medium confidence) · Can conclude: Capacity

The agent checks with: plan_rotation, plan_infrastructure

Read the full method →

Is 1, 2, 3 or 5 inboxes per sending domain best?

There is no universal number; it is a trade-off. More inboxes per domain is cheaper, fewer is a smaller blast radius. We run two or three, and prewarmed Google and Microsoft inboxes come three to a domain.

What not to do

  • Do not put five or more inboxes on one domain to save money.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Capacity

The agent checks with: plan_infrastructure

Read the full method →

Sequences, timing and follow-ups

How many follow-ups should I send before I am just hurting deliverability?

Fewer than most people think. One-step campaigns recycled over the list last longest; two steps is the common default; three to five sit past diminishing returns, worth it only on a tiny list you expect to burn. Our go-to is two emails from batch A, then a re-hit from batch B with new copy.

What not to do

  • Do not run three to five steps on a list you want to keep using.

Evidence: WarmInboxes operating rule from running fleets (medium confidence) · Can conclude: Campaign or copy issue

The agent checks with: audit_campaign, plan_infrastructure

Read the full method →

Should I follow up after 1 day, 3 days, 5 days, or a week?

No cadence is universally best. Avoid packing several cold touches into a few days. Our default is 3 to 4 business days between touches, adjusted for the ICP and sales cycle, and tested on a small cohort before the whole fleet.

What not to do

  • Do not pack several cold touches into a few days.

Evidence: WarmInboxes operating rule from running fleets (medium confidence) · Can conclude: Campaign or copy issue

The agent checks with: audit_campaign

Read the full method →

I add 200 new leads a day but send 700 or more emails. Are follow-ups causing this?

Yes: new leads a day is not daily cold volume. Every active sequence step sends too, so the infrastructure must be sized for first emails plus follow-ups, never from new prospects a day alone.

What not to do

  • Do not size infrastructure from new leads a day.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Capacity

The agent checks with: audit_campaign, plan_infrastructure

Read the full method →

Is there a best time of day to send cold email?

Timing is a secondary lever. Send in the recipient's local business hours, spread each inbox's sends through the day rather than in bursts, and test any new timing on a small cohort. No clock time is universally best.

What not to do

  • Do not fire an inbox's sends in one burst.

Evidence: WarmInboxes operating rule from running fleets (medium confidence) · Can conclude: Campaign or copy issue

The agent checks with: audit_campaign

Read the full method →

Should I keep cold campaigns running on Saturday and Sunday?

There is no universal answer. For most B2B audiences weekdays are the safer default. If the ICP may be active at weekends, test a small cohort at 5 a day and scale only if it works.

What not to do

  • Do not turn weekend sending on across the whole fleet without a test.

Evidence: WarmInboxes operating rule from running fleets (medium confidence) · Can conclude: Campaign or copy issue

The agent checks with: audit_campaign

Read the full method →

Message format, links and opt-outs

Should cold email be plain text or HTML?

Text-first. Minimal HTML of the kind an ordinary email client generates is fine; no images, no heavy template, no unnecessary links. Cold email should read like person-to-person mail, not a newsletter.

What not to do

  • Do not send a designed marketing template as cold email.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Campaign or copy issue

The agent checks with: analyze_email_html, analyze_cold_email

Read the full method →

Does a logo, headshot, image signature or banner hurt cold email deliverability?

Default: no decorative images, logo banners or image-heavy signatures, and no tracking pixel. Use a simple text signature. If an image is essential to a highly personalised campaign, treat it like rich media: lower cold volume, more warmup, more monitoring.

What not to do

  • Do not put logo banners, image signatures or a tracking pixel in cold email.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Campaign or copy issue

The agent checks with: check_bimi, analyze_email_html

Read the full method →

My Gmail placement test says Promotions. Is that the same as spam?

No. Primary versus Promotions is Gmail's categorisation inside the inbox; inbox versus spam is the deliverability line. Do not replace infrastructure for a Promotions placement. Strip marketing-style formatting, links and images if the goal is person-to-person.

What not to do

  • Do not treat a Promotions placement as spam.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Healthy, Campaign or copy issue

The agent checks with: analyze_email_html, analyze_cold_email

Read the full method →

Domain and account health

My domain used to work and now performs badly. Should I rest it or replace it?

Fix anything fixable first. A temporary reputation or throttling problem is worth a meaningful rest of one to two weeks, which may still fail. If it keeps underperforming after the cause is fixed and it has rested, retire it. The trade-off is the operator's call.

What not to do

  • Do not rest a domain without fixing the cause first.

Evidence: WarmInboxes operating rule from running fleets (medium confidence) · Can conclude: Fixable, Degraded

The agent checks with: quote_inboxes, plan_infrastructure, check_domain_reputation, check_blacklist, check_surbl, check_deliverability, analyze_bounces

Read the full method →

Should I send cold email from mail.company.com or buy separate domains?

Separate root domains, two or three inboxes each. Subdomain setups save on domains, but they pile inboxes onto one domain and one admin panel, read as a red flag to mature buyers, and Google counts subdomains toward the parent. WarmInboxes builds only on main domains.

What not to do

  • Do not send cold email from the main company domain.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Fixable

The agent checks with: check_domain_reputation, check_domain_expiry, plan_infrastructure

Read the full method →

Should I buy aged domains for cold email, or are fresh domains just as good?

Domain age is one signal, not a guarantee. Fresh domains work when warmed and run properly. Never pay a large premium for age without checking the domain's actual history and reputation first.

What not to do

  • Do not pay a premium for age without checking the domain's history.

Evidence: WarmInboxes operating rule from running fleets (medium confidence) · Can conclude: Fixable

The agent checks with: check_domain_expiry, check_domain_reputation, segment_esp

Read the full method →

Which TLD should I buy for cold email: .com, .co, .info or .link?

.com. In our sending it drew Google's reputation refusal least often; .co and .org more, and .link far more. Past .com, use only TLDs no abuse source names, and weigh renewal price, brand credibility and availability.

What not to do

  • Do not buy .link or .info for cold email.

Evidence: Measured in a WarmInboxes dataset (high confidence) · Can conclude: Fixable

The agent checks with: find_resources, check_domain_reputation

Read the full method →

What should happen if a prospect types my cold email domain into their browser?

Never leave it blank. Point it at the real site with a 301 redirect, or host a simple, legitimate brand page. Never clone someone else's site or build a page that misrepresents who is sending.

What not to do

  • Do not leave a sending domain blank or parked.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Fixable

The agent checks with: check_ssl, check_cname

Read the full method →

One of my Google or Microsoft mailboxes was suspended. Is my domain burned?

Not automatically. A suspension is an account event, often phishing or spam complaints aimed at that one mailbox. Have a WarmInboxes technician recreate it under a new name and rewarm it, fix the copy and list behind the complaints, and treat repeated suspensions on one domain as domain risk.

What not to do

  • Do not call the domain burned because one mailbox was suspended.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Degraded, Campaign or copy issue, List or data issue

The agent checks with: check_deliverability, check_domain_reputation, analyze_bounces

Read the full method →

Bounces and lists

My bounce rate jumped from under 1% to 4%. Should I pause everything?

Classify the bounces first; often both kinds are in the mix. Hard (invalid addresses): pause the list, verify it twice, and change verification tool. Sender-side (policy or reputation blocks): rest the inboxes, improve the copy, cut follow-ups, since recipient spam complaints drive these.

What not to do

  • Do not answer a sender-side bounce spike with a slower send; rest the senders.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: List or data issue, Degraded

The agent checks with: analyze_bounces, verify_email, plan_verification_waterfall, clean_csv, check_suppression, analyze_cold_email

Read the full method →

I got a 550, 5.7.1, 421 or 4.7.x error. What does it mean and what do I do?

Paste the full bounce. It is classified as invalid recipient, mailbox full, authentication failure, reputation block, throttling, content block or configuration issue, with whether it is hard or soft, whether to retry, whether to remove the recipient or pause the sender, and what to fix.

What not to do

  • Do not diagnose from the code alone; read the text after it.

Evidence: WarmInboxes operating rule from running fleets; A mailbox provider or legal requirement (high confidence) · Can conclude: List or data issue, Degraded, Capacity, Fixable

The agent checks with: analyze_bounces

Read the full method →

My infrastructure gets worse every few weeks. Could my lead list be burning it?

Often, yes. Check invalids, role addresses, duplicates, the list's age and source, and the bounces. Gateway-heavy lists and niches that report spam burn senders fastest: split out the gateways and run warm rotation. Replacing infrastructure without fixing the list repeats the failure.

What not to do

  • Do not replace infrastructure before fixing the list.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: List or data issue

The agent checks with: segment_esp, plan_rotation, clean_csv, verify_email, audit_campaign, check_suppression, analyze_bounces

Read the full method →

Apollo says these emails are verified. Can I send them straight into a cold campaign?

A database's verified flag is a fact about when it checked, not a send-time guarantee. Re-verify older lists and high-risk segments close to the send, and do not expect any verifier to resolve every catch-all.

What not to do

  • Do not treat a database's verified flag as a send-time guarantee.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: List or data issue

The agent checks with: verify_email, clean_csv, plan_verification_waterfall

Read the full method →

Half my list is catch-all. Should I send to them or remove them?

Catch-all does not mean invalid, and it does not prove the mailbox exists. Send catch-alls last, since spam traps sometimes hide behind them and can burn a few domains. Segment them, verify again or test small, and keep them off the clean list's infrastructure.

What not to do

  • Do not send catch-alls first, or mixed into the clean list.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: List or data issue

The agent checks with: verify_email, plan_verification_waterfall

Read the full method →

Infrastructure planning

I need to send 500, 1,000 or 3,000 cold emails a day. How much infrastructure do I need?

Size it: inboxes, domains, cold sends per inbox, rotation, the provider split and the monthly cost, from the target volume and, if they have one, the recipient list. This is a Fleet Planner job.

What not to do

  • Do not size the fleet from new leads a day; include follow-ups.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Capacity

The agent checks with: plan_infrastructure, plan_from_list, plan_rotation, get_pricing

Read the full method →

Is Google Workspace or Microsoft 365 better for cold email?

It depends on who you are emailing, not on the platforms in the abstract. Split the list by recipient provider: Google-hosted recipients from Google Workspace, everyone else from Azure. Microsoft 365 is available on request.

What not to do

  • Do not answer in the abstract; split the list by recipient provider.

Evidence: Measured in a WarmInboxes dataset; WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Provider-specific issue, Capacity

The agent checks with: segment_esp, plan_from_list, lookup_mx

Read the full method →

60% of my prospects are on Microsoft. Should I change my sending infrastructure?

Validate the split first. If it holds, show the costed fleet our routing gives (Azure for the non-Google share) against their current single-provider fleet, and present it as a measurable change to test, not a placement guarantee.

What not to do

  • Do not take "mostly Microsoft" on trust; segment the list.

Evidence: Measured in a WarmInboxes dataset; WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Provider-specific issue, Capacity

The agent checks with: segment_esp, plan_from_list

Read the full method →

Google Workspace, Microsoft 365, Azure or SMTP: what should I use for cold email?

No provider is universally best. Size from the actual list: Google-hosted recipients from Google Workspace, everyone else from Azure, Microsoft 365 on request, weighed against cost, safe pace, tenant and domain structure, and launch speed.

What not to do

  • Do not pick a provider in the abstract; size from the list.

Evidence: WarmInboxes operating rule from running fleets; Measured in a WarmInboxes dataset (high confidence) · Can conclude: Provider-specific issue, Capacity

The agent checks with: segment_esp, plan_from_list, plan_infrastructure, get_pricing

Read the full method →

Scaling and testing

My campaign works at 100 a day. How do I scale to 500 or 1,000 without burning everything?

Scale by adding infrastructure, not by pushing existing inboxes harder. Keep the proven fleet stable, bring new inbox and domain cohorts in at 5, 10, then 15 a day, keep reserve, and never change list, copy, offer and provider across the whole fleet at once.

What not to do

  • Do not scale by raising the cap on the inboxes that work.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Capacity

The agent checks with: plan_infrastructure, plan_rotation, plan_from_list

Read the full method →

I have a new list, new copy or a new offer. How do I test it without burning good infrastructure?

Start every meaningful new variable at 5 cold sends per inbox a day, then 10, then 15, only while it stays healthy, and only then scale wider. Audit the list and copy, check links and tracking, confirm authentication and split the list by provider before launch.

What not to do

  • Do not launch a new variable at full volume across the fleet.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Campaign or copy issue, List or data issue

The agent checks with: audit_campaign, analyze_cold_email, clean_csv, verify_email, check_tracking_domain, segment_esp

Read the full method →

Advanced diagnostics

My open rate is 60% or more but nobody replies. Is my copy bad?

Do not trust the opens yet. Security scanners and privacy systems open mail automatically, even mail that lands in junk. Check placement, open timing and the provider split before judging the copy.

What not to do

  • Do not trust open rates as human readership.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Unclear, Campaign or copy issue

The agent checks with: analyze_cold_email, preview_inbox, analyze_headers, segment_esp

Read the full method →

Does open tracking hurt cold email deliverability? Should I turn it off?

We run open tracking off across the whole fleet and optimise on replies, bounces and placement. If someone insists on it, use a clean custom tracking domain and treat opens as noisy.

What not to do

  • Do not track opens: in our fleets the pixel acts as a strong fingerprint.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Fixable

The agent checks with: check_tracking_domain, analyze_email_html

Read the full method →

SPF exists but receivers show SPF PermError. What did I break?

Usually one of two things: more than 10 DNS lookups once includes are counted recursively, or two SPF records on the domain. The fix is the exact include or record causing it, never another SPF record.

What not to do

  • Do not add a second SPF record.

Evidence: A mailbox provider or legal requirement (high confidence) · Can conclude: Fixable

The agent checks with: check_spf, lookup_txt, generate_dns_records

Read the full method →

My DKIM records are there but emails still show DKIM fail. Why?

A published selector is not the same as signing. Often the CNAME delegation exists but the provider has not activated signing, common on Microsoft 365 and Google Workspace, where you must click Start authentication. Check the selectors and a real message's headers.

What not to do

  • Do not assume a published DKIM record means mail is signed.

Evidence: A mailbox provider or legal requirement (high confidence) · Can conclude: Fixable

The agent checks with: check_dkim, lookup_txt, analyze_headers

Read the full method →

My DMARC policy is p=none. Is that why I am going to spam?

No. p=none meets the Google and Yahoo requirement, and it is what we recommend on new cold email domains. On older, aligned domains, moving to p=quarantine can help placement into more mature organisations. WarmInboxes inboxes arrive with DMARC already set.

What not to do

  • Do not call p=none broken.

Evidence: A mailbox provider or legal requirement; WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Healthy

The agent checks with: check_dmarc, check_email_authentication, analyze_headers

Read the full method →

Everything looks right and I still get zero replies. What do I check next, in order?

Run the full diagnosis in order: authentication, reputation, blocklists and SURBL, tracking, bounces, the recipient provider split, domain age, the message, the campaign and list, then provider headers or placement. Classify the outcome before anything is fixed, rested, resized or replaced.

What not to do

  • Do not fix, rest or replace anything before the outcome is classified.

Evidence: WarmInboxes operating rule from running fleets (high confidence) · Can conclude: Healthy, Fixable, Unclear, Degraded, Capacity, Campaign or copy issue, List or data issue, Provider-specific issue

The agent checks with: check_deliverability, check_domain_reputation, check_blacklist, check_surbl, check_tracking_domain, analyze_bounces, segment_esp, check_domain_expiry, analyze_cold_email, audit_campaign, analyze_headers, analyze_microsoft_headers

Read the full method →

Ordering and your account

How to buy inboxes and domains, in the app or through the Infrastructure MCP

Size the fleet first with the Fleet Planner. A first order, or a plan the account has never bought, is paid in the app. Re-ordering a plan the account already has can be done from an AI client through the Infrastructure MCP: catalogue, preview, the person's yes, then place.

What not to do

  • Do not ask the person to paste an API key into the conversation.

Evidence: WarmInboxes operating rule from running fleets (high confidence)

Read the full method →

How to cancel inboxes and domains, and what to check first

Cancellation is by domain, with all its inboxes, done by a person in the app. The Infrastructure MCP and API keys cannot cancel; a program can only ask the team to. Check first whether the problem is one inbox, which is recreated rather than cancelled.

What not to do

  • Do not cancel a domain because one inbox on it is quiet; recreate that inbox instead.

Evidence: WarmInboxes operating rule from running fleets (high confidence)

Read the full method →

How to connect WarmInboxes Infrastructure MCP, step by step

Account first, then an API key from the app (Settings, API keys), then add the server to the AI client with the key as a bearer token in the client's settings, never in the chat. Start with a test key to try it with nothing charged.

What not to do

  • Do not ask the person to paste their API key into the chat.

Evidence: WarmInboxes operating rule from running fleets (high confidence)

Read the full method →

The rules behind every answer

Separate what a check showed from what might explain it, and call a hypothesis a hypothesis. Never invent a baseline: until monitoring can read your campaign history, the agent asks for your numbers. Low replies and a bounce spike are different problems with different responses. Recovery has a cost and can fail, so the choice between waiting and replacing is yours. All of it, with the decision tree, is in the operator playbook.

Frequently Asked Questions

My cold emails got great replies for the first 5 days, then stopped. What happened?

Rule out authentication, reputation, tracking and bounces first, and ask for the before-and-after numbers. If bounces spiked, classify them. If only replies fell on healthy infrastructure, the copy being recognised is the most common cause we see: test new copy at 5 a day and ramp.

My reply rate fell from about 2% to under 1%. Is my domain burned?

Not from the reply rate alone. Ask for the baseline and bounces, and check authentication, listings, tracking and the provider split. If the infrastructure is healthy and it was working before, it is most often the copy being recognised: lower sending, raise warmup, spintax and clean up.

Each new lead batch performs worse than the last. Is it my infrastructure or my targeting?

Compare the new list with the previous ones first. ESP mix shifting on consistent infrastructure is the flag; same composition and falling results points at the infrastructure; the same people again and again is lead fatigue. Bring each batch in at 5, then 10, then 15 a day.

One campaign is dead but another on the same inboxes works. Are the inboxes burned?

Not if the other campaign performs well on them: the infrastructure is healthy. Compare the two lists' ESP mix. If the dead campaign's mix differs, add WarmInboxes infrastructure that matches it; if the mix is similar, it is the copy or the list. Test the fix at 5 a day.

SPF, DKIM and DMARC all pass. Why am I still landing in spam?

Authentication is table stakes, not a placement guarantee. Once it passes, stop touching DNS. First check the senders match the recipients (Google to Google-hosted, Azure to everyone else), then reputation, SURBL, the tracking domain, pace, domain age, bounces, content, and Microsoft's SCL if Outlook is the problem.

My emails land in Gmail but Outlook puts them in junk. Why?

Confirm it is provider-specific, then read a raw Outlook-delivered header: SCL, BCL and Microsoft's authentication verdicts. Check domain age and how Microsoft-heavy the list is. Gmail placement is no evidence Microsoft will behave the same.

My warmup tool says 100% health, but cold emails to real prospects land in spam. How?

A warmup score measures mail between warmup accounts, not how real recipients' filters treat your cold email. Test it yourself, best of three; if most land in spam, stop cold on that inbox and raise warmup. Fix the copy and the list before anything else, since recipient spam reports burn senders fastest.

My sending domains look clean. Could my tracking domain be the problem?

Yes: the tracker is in every message, so a listed or abused one drags down clean mail, and a SURBL-listed main domain makes tracked links bounce. Mostly, turn open tracking off: it is what a tracker is mainly for, and we see it act as a strong fingerprint. Keep one only for click tracking.

My domain is listed on SURBL. Do I need to throw it away?

Depends on who you send to. To Google, Microsoft and other providers, no: in our SURBL study reply rate was flat across a first listing, and they run their own filters. If you mainly target secure email gateways, yes: replace it, and expect the new ones to burn fast too.

Is a 1% reply rate good? What numbers should I actually care about?

Compare against your own baseline and sibling campaigns on comparable lists, not a generic benchmark. Track positive reply rate, meetings, bounce rate and placement; open rate is the weakest signal.

My open rate went from 70% to 35%. Does that mean I am going to spam?

Not on its own. Opens are noisy: privacy protection and security scanners inflate and distort them, and tracking setup changes move them. Check replies, positive replies, bounces, placement and provider-specific trends first.

I send 15 cold and 30 warmup emails per inbox a day. Is that too much? Does warmup count?

Receivers see all of an inbox's activity, whatever the sequencer calls it. 15 cold with 30 warmup is our minimum 1:2 ratio and 45 in total, under the roughly 50 a day a Google inbox should stay below. Start lower on young or recovering accounts.

What is the safest number of cold emails per inbox per day?

About 15 a day on Google Workspace, 8 on Microsoft 365, and 2 per inbox on a full Azure tenant, from the planner. Scale by adding inboxes and domains, never by pushing a few inboxes harder, and never use a provider's published ceiling as a target.

I bought a new domain. How long do I warm it before sending cold email?

Ideally, let a new domain age about a month before setting up inboxes on it, then warm the inboxes for 14 to 21 days and ramp rather than start at full pace. The month is ideal, not required. If waiting is not an option, prewarmed inboxes are the alternative, and they arrive with sender history.

Does inbox rotation actually help, or am I wasting money keeping half my inboxes resting?

Resting inboxes are not idle: in our warm rotation they stop first-touch cold mail but still send follow-ups, and late replies land. In our fleets rotation typically about doubles inbox and domain life, so it books more meetings and costs less than rebuying. Show the fleet size and cost.

Is 1, 2, 3 or 5 inboxes per sending domain best?

There is no universal number; it is a trade-off. More inboxes per domain is cheaper, fewer is a smaller blast radius. We run two or three, and prewarmed Google and Microsoft inboxes come three to a domain.

How many follow-ups should I send before I am just hurting deliverability?

Fewer than most people think. One-step campaigns recycled over the list last longest; two steps is the common default; three to five sit past diminishing returns, worth it only on a tiny list you expect to burn. Our go-to is two emails from batch A, then a re-hit from batch B with new copy.

Should I follow up after 1 day, 3 days, 5 days, or a week?

No cadence is universally best. Avoid packing several cold touches into a few days. Our default is 3 to 4 business days between touches, adjusted for the ICP and sales cycle, and tested on a small cohort before the whole fleet.

I add 200 new leads a day but send 700 or more emails. Are follow-ups causing this?

Yes: new leads a day is not daily cold volume. Every active sequence step sends too, so the infrastructure must be sized for first emails plus follow-ups, never from new prospects a day alone.

Is there a best time of day to send cold email?

Timing is a secondary lever. Send in the recipient's local business hours, spread each inbox's sends through the day rather than in bursts, and test any new timing on a small cohort. No clock time is universally best.

Should I keep cold campaigns running on Saturday and Sunday?

There is no universal answer. For most B2B audiences weekdays are the safer default. If the ICP may be active at weekends, test a small cohort at 5 a day and scale only if it works.

Should my first cold email contain my website, calendar link, case study or Loom link?

Prefer no links in the first message and ask for a reply. Every extra URL is another reputation and content variable. Move links later, once the recipient has engaged. Heavily personalised video is a separate operating model.

We make a personalised video for every prospect. Can I include the link in the first email?

It can work: we have seen it. Treat it as its own model: extremely low cold volume, much higher warmup, close monitoring, and domains that wear out faster, possibly every few months even when done well. Personalisation does not make a link safe.

Should cold email be plain text or HTML?

Text-first. Minimal HTML of the kind an ordinary email client generates is fine; no images, no heavy template, no unnecessary links. Cold email should read like person-to-person mail, not a newsletter.

Does a logo, headshot, image signature or banner hurt cold email deliverability?

Default: no decorative images, logo banners or image-heavy signatures, and no tracking pixel. Use a simple text signature. If an image is essential to a highly personalised campaign, treat it like rich media: lower cold volume, more warmup, more monitoring.

Should I put an unsubscribe link in every cold email?

For ordinary, low-volume, personalised B2B cold email we prefer a reply-based opt-out ('reply no and I won't follow up'). But one-click unsubscribe is required for bulk senders to Gmail and Yahoo, and law applies everywhere: check before omitting it.

My Gmail placement test says Promotions. Is that the same as spam?

No. Primary versus Promotions is Gmail's categorisation inside the inbox; inbox versus spam is the deliverability line. Do not replace infrastructure for a Promotions placement. Strip marketing-style formatting, links and images if the goal is person-to-person.

My domain used to work and now performs badly. Should I rest it or replace it?

Fix anything fixable first. A temporary reputation or throttling problem is worth a meaningful rest of one to two weeks, which may still fail. If it keeps underperforming after the cause is fixed and it has rested, retire it. The trade-off is the operator's call.

Should I send cold email from mail.company.com or buy separate domains?

Separate root domains, two or three inboxes each. Subdomain setups save on domains, but they pile inboxes onto one domain and one admin panel, read as a red flag to mature buyers, and Google counts subdomains toward the parent. WarmInboxes builds only on main domains.

Should I buy aged domains for cold email, or are fresh domains just as good?

Domain age is one signal, not a guarantee. Fresh domains work when warmed and run properly. Never pay a large premium for age without checking the domain's actual history and reputation first.

Which TLD should I buy for cold email: .com, .co, .info or .link?

.com. In our sending it drew Google's reputation refusal least often; .co and .org more, and .link far more. Past .com, use only TLDs no abuse source names, and weigh renewal price, brand credibility and availability.

What should happen if a prospect types my cold email domain into their browser?

Never leave it blank. Point it at the real site with a 301 redirect, or host a simple, legitimate brand page. Never clone someone else's site or build a page that misrepresents who is sending.

One of my Google or Microsoft mailboxes was suspended. Is my domain burned?

Not automatically. A suspension is an account event, often phishing or spam complaints aimed at that one mailbox. Have a WarmInboxes technician recreate it under a new name and rewarm it, fix the copy and list behind the complaints, and treat repeated suspensions on one domain as domain risk.

My bounce rate jumped from under 1% to 4%. Should I pause everything?

Classify the bounces first; often both kinds are in the mix. Hard (invalid addresses): pause the list, verify it twice, and change verification tool. Sender-side (policy or reputation blocks): rest the inboxes, improve the copy, cut follow-ups, since recipient spam complaints drive these.

I got a 550, 5.7.1, 421 or 4.7.x error. What does it mean and what do I do?

Paste the full bounce. It is classified as invalid recipient, mailbox full, authentication failure, reputation block, throttling, content block or configuration issue, with whether it is hard or soft, whether to retry, whether to remove the recipient or pause the sender, and what to fix.

My infrastructure gets worse every few weeks. Could my lead list be burning it?

Often, yes. Check invalids, role addresses, duplicates, the list's age and source, and the bounces. Gateway-heavy lists and niches that report spam burn senders fastest: split out the gateways and run warm rotation. Replacing infrastructure without fixing the list repeats the failure.

Apollo says these emails are verified. Can I send them straight into a cold campaign?

A database's verified flag is a fact about when it checked, not a send-time guarantee. Re-verify older lists and high-risk segments close to the send, and do not expect any verifier to resolve every catch-all.

Half my list is catch-all. Should I send to them or remove them?

Catch-all does not mean invalid, and it does not prove the mailbox exists. Send catch-alls last, since spam traps sometimes hide behind them and can burn a few domains. Segment them, verify again or test small, and keep them off the clean list's infrastructure.

I need to send 500, 1,000 or 3,000 cold emails a day. How much infrastructure do I need?

Size it: inboxes, domains, cold sends per inbox, rotation, the provider split and the monthly cost, from the target volume and, if they have one, the recipient list. This is a Fleet Planner job.

Is Google Workspace or Microsoft 365 better for cold email?

It depends on who you are emailing, not on the platforms in the abstract. Split the list by recipient provider: Google-hosted recipients from Google Workspace, everyone else from Azure. Microsoft 365 is available on request.

60% of my prospects are on Microsoft. Should I change my sending infrastructure?

Validate the split first. If it holds, show the costed fleet our routing gives (Azure for the non-Google share) against their current single-provider fleet, and present it as a measurable change to test, not a placement guarantee.

Google Workspace, Microsoft 365, Azure or SMTP: what should I use for cold email?

No provider is universally best. Size from the actual list: Google-hosted recipients from Google Workspace, everyone else from Azure, Microsoft 365 on request, weighed against cost, safe pace, tenant and domain structure, and launch speed.

My campaign works at 100 a day. How do I scale to 500 or 1,000 without burning everything?

Scale by adding infrastructure, not by pushing existing inboxes harder. Keep the proven fleet stable, bring new inbox and domain cohorts in at 5, 10, then 15 a day, keep reserve, and never change list, copy, offer and provider across the whole fleet at once.

I have a new list, new copy or a new offer. How do I test it without burning good infrastructure?

Start every meaningful new variable at 5 cold sends per inbox a day, then 10, then 15, only while it stays healthy, and only then scale wider. Audit the list and copy, check links and tracking, confirm authentication and split the list by provider before launch.

My open rate is 60% or more but nobody replies. Is my copy bad?

Do not trust the opens yet. Security scanners and privacy systems open mail automatically, even mail that lands in junk. Check placement, open timing and the provider split before judging the copy.

Does open tracking hurt cold email deliverability? Should I turn it off?

We run open tracking off across the whole fleet and optimise on replies, bounces and placement. If someone insists on it, use a clean custom tracking domain and treat opens as noisy.

SPF exists but receivers show SPF PermError. What did I break?

Usually one of two things: more than 10 DNS lookups once includes are counted recursively, or two SPF records on the domain. The fix is the exact include or record causing it, never another SPF record.

My DKIM records are there but emails still show DKIM fail. Why?

A published selector is not the same as signing. Often the CNAME delegation exists but the provider has not activated signing, common on Microsoft 365 and Google Workspace, where you must click Start authentication. Check the selectors and a real message's headers.

My DMARC policy is p=none. Is that why I am going to spam?

No. p=none meets the Google and Yahoo requirement, and it is what we recommend on new cold email domains. On older, aligned domains, moving to p=quarantine can help placement into more mature organisations. WarmInboxes inboxes arrive with DMARC already set.

Everything looks right and I still get zero replies. What do I check next, in order?

Run the full diagnosis in order: authentication, reputation, blocklists and SURBL, tracking, bounces, the recipient provider split, domain age, the message, the campaign and list, then provider headers or placement. Classify the outcome before anything is fixed, rested, resized or replaced.

How to buy inboxes and domains, in the app or through the Infrastructure MCP

Size the fleet first with the Fleet Planner. A first order, or a plan the account has never bought, is paid in the app. Re-ordering a plan the account already has can be done from an AI client through the Infrastructure MCP: catalogue, preview, the person's yes, then place.

How to cancel inboxes and domains, and what to check first

Cancellation is by domain, with all its inboxes, done by a person in the app. The Infrastructure MCP and API keys cannot cancel; a program can only ask the team to. Check first whether the problem is one inbox, which is recreated rather than cancelled.

How to connect WarmInboxes Infrastructure MCP, step by step

Account first, then an API key from the app (Settings, API keys), then add the server to the AI client with the key as a bearer token in the client's settings, never in the chat. Start with a test key to try it with nothing charged.

Found this useful? Share it

Add the free Deliverability Agent to your AI

Ongoing QA and advice for your cold email, to the best of our knowledge: ask it what is wrong in your own words, and it runs the checks, reads them against our published research, and tells you the fix. Works in Claude, ChatGPT, Grok and Cursor. Free, no account, no API key.

Add it to your AI

Runs on WarmInboxes Free MCP. Need inboxes? Get prewarmed and 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