Outbound

Delivered Is Not Inbox. Why Cold Email Lands in Spam While Your Dashboard Stays Green.

Why cold email lands in spam while the dashboard says delivered: the two scoreboards, the bounce and complaint limits that burn a domain, and the upstream fix.

Vibe Prospecting team9 min readAugust 11, 2026
Delivered Is Not Inbox. Why Cold Email Lands in Spam While Your Dashboard Stays Green.

TL;DR

  • Delivered means a receiving server answered 250 OK. It says nothing about inbox versus junk, and no sending dashboard reports the difference.
  • Warmup and inbox health scores are calculated from mail circulating inside a vendor's own pool of mailboxes, so a score in the nineties can sit happily on top of a spam folder full of your emails.
  • Pull a sending domain once bounces pass 4% or spam complaints pass 0.3%. Google asks bulk senders to stay under 0.10% complaints and never reach 0.30%.
  • Gmail leans on domain reputation and recipient behavior while Microsoft weighs the sending IP harder for acceptance, so track placement per provider and never average the three together.
  • Both damaging rates are made by the list. Vibe Prospecting flags every contact as valid, catch-all, or invalid in chat, so the addresses that bounce never reach the sequencer.
  • Recovering a burned domain costs roughly six to eight weeks. A pre-send list pass costs minutes and a couple of credits per contact.

The dashboard said delivered. The prospect said spam. That gap is the entire reason why cold email lands in spam while every number on your sending screen stays a comfortable green, and it is how a three-person team ramping toward 200 messages a day can sit at a 99% accepted rate with a warmup score in the nineties, then find out from a reply that the last two emails went to junk.

Delivered means a receiving server answered 250 OK. It is a receipt for a handoff, not a report on where the message came to rest. Google's own spam rate counts only mail that reached an inbox and was then reported by the person who got it, and the same page says Postmaster Tools data applies to personal Gmail accounts rather than business ones. Most of the people you are writing to never appear in it.

So here is the short version of what actually decides placement: which scoreboard is worth reading, the two rates that take a sending domain out of service, a check you can finish in ten minutes a week, and the upstream fix that keeps those rates flat while volume climbs.

Two Scoreboards, and Only One of Them Is Yours

Your sending platform scores the handoff. The receiving provider scores the message. Only the second scoreboard decides whether a human ever sees the email, and nobody hands you a login to it.

What Each Number Is Really Counting

NumberWho produces itWhat it provesBlind spot
Warmup or inbox health scoreYour warmup toolMailboxes inside one pool accept each otherAnything about a stranger writing to a stranger
Domain reputationGoogle Postmaster ToolsGmail's four-tier read on your sending domainHow Microsoft sees you
Accepted or deliveredYour sending platformA server answered 250 OKInbox, promotions tab, or junk
Spam complaint ratePostmaster ToolsPeople who got it and pressed reportWorkspace and Microsoft 365 recipients
Bounce rateYour sending platformAddresses that came backCatch-all domains that accept then discard
Inbox placement rateAn independent seed testInbox, spam, or missing, per providerHow recipients with real history behave

Warmup Scores Are Bots Emailing Bots

  • Warmup traffic circulates inside a vendor's own pool of mailboxes, which open, reply, and flag each other on a timer. Your buyers do not.
  • Because that pool only ever writes to itself, no filter is asked the one question that matters: is this sender a stranger worth trusting?
  • A score of 94 and a spam folder full of your emails are not a contradiction. They are two unrelated measurements sitting next to each other.
Warmup mailboxes emailing each other in a closed loop, with a dashed line separating that loop from a real prospect it never reaches

The Numbers That Actually Burn a Domain

Two rates do the damage: bounces and spam complaints. Take a sending domain out of rotation once bounces pass 4% or complaints pass 0.3%, and run day to day well under both. Neither rate is produced by your sending software. Both are produced by who is on the list.

Bounce Bands Worth Knowing

  • Below 1% is where you want to live. The B2B software average sits at 0.93%.
  • 1% to 2% is survivable and earns a list review the same week.
  • 2% to 5% is where the big providers start filtering your future mail rather than just this campaign.
  • Past 5% you are in the danger band, and blocking replaces junking.

Complaint Rate Has Almost No Margin

Cold email bounce rate bands from under 1 percent to over 5 percent, with the danger band highlighted next to a pull the domain marker

Gmail and Microsoft Are Grading Different Things

One blended deliverability score averages two filters that weigh evidence differently, which is exactly how a campaign hides a total failure at one provider behind a comfortable headline number.

Two Filters, Two Weightings

  • Gmail leans on the reputation your sending domain builds over time, fed by what recipients do with your mail once it arrives.
  • Microsoft puts more weight on the reputation of the sending IP when deciding whether to accept at all, which is why brand new infrastructure feels harder there.
  • A fresh IP sitting under an authenticated domain in good standing ramps faster than a cold IP with nothing behind it.

How to Read a Drop

  • Keep Gmail, Microsoft, and Yahoo in three separate columns. Never collapse them into one figure.
  • A Gmail-only fall points at your copy, your links, and whether anyone is engaging.
  • A Microsoft-only fall points at DNS, authentication, and the IP you are sending from.

A Weekly Placement Check You Can Actually Run

Mail your live template from your live sending domain to a spread of seed addresses across Gmail, Microsoft 365, and Yahoo, then write down inbox, spam, or missing for each provider on its own line. Once the seed list exists, the whole thing takes about ten minutes.

The Ten-Minute Version

  • Build a seed list of at least ten addresses per provider, and make sure business tenants are in there, not only free consumer accounts.
  • Send the campaign exactly as it goes out, from the same domain and mailbox, with the same links intact.
  • Log the outcome per provider, and repeat after every rewrite, every DNS edit, and every bump in daily volume.

What Seed Results Will Not Tell You

"Seed addresses are not real subscribers. They do not build normal engagement history, they do not behave like individual recipients." Suped, on how accurate seed lists really are.
  • Treat each result as a confidence band rather than a verdict. False positives and false negatives both happen.
  • Corporate filters, the exact ones your buyers sit behind, are thin on the ground in most seed panels.
  • Act when the same provider files you in spam twice running, and only after reading DMARC reports and blocklist status alongside it.

Keep Cold Mail Off the Domain Your Business Runs On

Register separate domains for cold sending and never route cold volume back onto the one carrying your contracts, invoices, and calendar invites. A subdomain lives inside the parent's reputation, so trouble on it can travel upward. A separately registered domain starts from nothing, which is the entire point.

The Trade-Off, Stated Honestly

  • A brand new domain has no standing anywhere and needs a ramp before it carries normal volume.
  • Every sending domain needs its own SPF, DKIM, and DMARC records. None of that inherits usefully across separate registrations.
  • More domains means more rows to watch, and every row needs a name beside it.

Authenticate Each Sending Domain on Its Own

Text
; one set of records per sending domain, never shared between them
go.northwind-mail.com.                 TXT  "v=spf1 include:_spf.<your-provider>.com -all"
k1._domainkey.go.northwind-mail.com.   TXT  "v=DKIM1; k=rsa; p=<public-key>"
_dmarc.go.northwind-mail.com.          TXT  "v=DMARC1; p=none; rua=mailto:[email protected]"

; confirm every record resolves after any DNS edit
dig +short TXT _dmarc.go.northwind-mail.com
  • Google accepts a DMARC policy of p=none from bulk senders, so publish that first and tighten it later.
  • Add one-click unsubscribe and TLS. Both are requirements now, not optional polish.
  • Read the DMARC reports arriving at your rua address weekly. Anything sending as you without permission shows up there first.

The List Is the Deliverability Control

Bounces and complaints are made by who you put on the list, so the least costly deliverability work happens before the first send rather than after the domain is already in trouble. That is where Vibe Prospecting sits. You describe the accounts and people you want in plain language, look at a preview, and take out the addresses that are going to cost you before anything leaves a mailbox.

Where Bounces Actually Come From

  • A catch-all server says 250 OK to anything addressed to that domain, so an acceptance is not evidence that a mailbox is there. Up to 30% of a typical B2B list comes back catch-all or unknown.
  • Those are the addresses that read as delivered on Monday and turn up in your bounce rate on Wednesday.
  • Contact data ages out constantly. People change jobs and companies rebuild their mail setup without telling anyone.

Ask, Preview, Then Send

Text
Ask in chat:

  "Build me a list of heads of finance at US SaaS companies
   with 51 to 200 employees. Show me five sample rows and the
   cost before you build the rest."

Then, once the list exists:

  "Split it by email status. Give me the valid ones as a send
   file, and keep catch-all and invalid in a separate hold file
   with the reason on each row."

  ->  five rows and an estimate first, no credits spent
  ->  two files out, and only one of them goes near a mailbox
  • Every contact comes back with an email status of valid, catch-all, or invalid. Send to the first, hold the other two.
  • Nobody can promise a mailbox is live at the exact second you press send, so treat that status as a routing rule and keep the hold file rather than deleting it.
  • The preview returns five sample rows and a cost estimate before any credits move, so you see the shape of your own list before you commit to it.

Where It Runs

  • In Claude or ChatGPT, as a connector you add once and then simply talk to.
  • In Claude Code through the Vibe Prospecting plugin, with per-host install steps in the plugin repository.
  • In the web app, when you would rather look at the table than describe it.
  • All of it powered by Explorium Enterprise Business Data, spanning 150M+ company profiles and 800M+ people profiles, which is why the fit filter and the contact details read from the same place.
Fix the input before you rewrite the copy. Start free, describe the accounts you want, and preview five rows with a cost estimate before a single credit moves.

Who Owns Which Row

Deliverability is a rota, not a setup task. Every check below needs a cadence, a trigger, and one person's name on it, because an unowned row is the row nobody reads until a prospect tells you.

CheckHow oftenAct whenName on it
Bounce rate per sending domainDaily, rolling seven daysAbove 4%, pull the domainWhoever runs sends
List recheck in Vibe ProspectingBefore each batch, monthly on standing listsCatch-all and invalid share climbingWhoever builds lists
Spam complaint rateWeeklyAbove 0.3%, pull the domainWhoever runs sends
Seed placement test per providerWeekly, plus after any changeSpam at one provider twice runningWhoever runs sends
DMARC reportsWeeklySources you did not authorize appearWhoever owns DNS
Postmaster reputation and compliance statusWeeklyAnything under High, or a Needs Work flagWhoever owns DNS
Text
Ask in chat, first Monday of the month:

  "Re-check the saved outbound list. Tell me how many contacts
   moved from valid to catch-all or invalid since last month,
   and hand me the ones that changed as a suppression file."

  ->  a change count rather than a full re-export
  ->  the suppression file drops straight into the sequencer

The Recovery Math Nobody Prices In

Price a burned domain before you risk one. Park it for a month, register and authenticate replacements, ramp them from 20 to 50 messages a day, and you have spent roughly six to eight weeks getting back to the volume you had on a Tuesday afternoon.

What Those Weeks Cost

  • A month of silence on the flagged domain, with every sequence on it paused the same day you find out.
  • Replacement domains bought, authenticated, and ramped, which means weeks of deliberately low output before normal volume returns.
  • The pipeline that never gets created inside that window, which is the line item nobody puts in the spreadsheet.
  • Set that against a pre-send list pass that costs a couple of credits per contact and takes minutes.

The Two Moves That Make It Worse

  • Swapping sending tools. Reputation attaches to domains and IP addresses, not to the software you compose in.
  • Pushing volume up fast on the replacement to make up lost ground, which reproduces the original failure on a new domain inside a month.

Three Myths That Cost Founders a Domain

  • "A subdomain keeps the main domain safe." It sits inside the parent's reputation. Separate registration is what actually contains the damage.
  • "The warmup score is green, so we are fine." That score is a closed circle of mailboxes rating each other. It has never met a single one of your prospects.
  • "Deliverability is a sending problem." Mostly it is a list problem wearing a sending problem's clothes, which is why who you write to and why now moves the numbers further than whichever tool you write in.

Your First Hour

Sequence matters more than tooling here. Clean the input, separate the infrastructure, then start measuring where mail genuinely lands.

  • Minutes 1 to 15. Open a free Vibe Prospecting account, load your current list, and split it by email status. Anything that is not valid goes on hold.
  • Minutes 16 to 30. Confirm cold sending runs on separately registered domains, each with its own SPF, DKIM, and DMARC, and check that every record resolves.
  • Minutes 31 to 45. Assemble a seed list across Gmail, Microsoft 365, and Yahoo, then send the live template to it.
  • Minutes 46 to 60. Paste the rota table into your tracker, put a name in every row, and switch on the daily bounce check.

None of this turns deliverability into a solved problem, and anyone telling you otherwise is selling a warmup score. What it does is move the failure from silent to visible, and move the fix from a six-week domain recovery to a two-minute list pass. For the wider argument about why the list decides the outcome, start with building the list inside a chat session, then come back and set up the rota.

Keep bounces under 4% and complaints under 0.3% by repairing the list before the send instead of the domain after it.
FAQs

Frequently Asked Questions

Get Started Banner

Get Started for free

Sign Up
Why Cold Email Lands in Spam and Dashboards Miss It