███╗   ███╗ ██╗   ██╗  ██████╗ ███████╗ ██╗
████╗ ████║ ╚██╗ ██╔╝ ██╔════╝ ██╔════╝ ██║
██╔████╔██║  ╚████╔╝  ██║      █████╗   ██║
██║╚██╔╝██║   ╚██╔╝   ██║      ██╔══╝   ██║
██║ ╚═╝ ██║    ██║    ╚██████╗ ███████╗ ███████╗
╚═╝     ╚═╝    ╚═╝     ╚═════╝ ╚══════╝ ╚══════╝
DemoAcademyPricing
Sign inBook a meeting

Running an agency · August 30, 2026 · 9 min

Why your cold email stopped arriving

Cold email rarely dies from one bad day. It dies from a fortnight of small mistakes — a ramp that looks like a leak, a sequence that retries dead addresses, one domain quietly carrying the whole day — and by the time you notice, the fix is a new domain and three months of waiting.

By Islam Hachimi, Founder

Cold email usually does not die from one bad day. It dies from a fortnight of small mistakes that each looked fine, and by the time you notice, the fix is a new domain and three months of waiting.

Here is what actually happens, in the order it happens, with the numbers that matter.

Nobody blocked you. You just stopped being interesting

There is no bouncer at Gmail deciding whether you are spam. There is a score, held per sending domain and per sending address, and it moves on evidence: did the mail get delivered, did anyone open it, did anyone reply, did anyone press the spam button, and did you send to addresses that do not exist.

A new domain has no score at all. That is not neutral. Receivers treat "no history" almost identically to "bad history" for the first few weeks, because a domain registered on Monday that sends four hundred messages on Tuesday is, statistically, a compromised account or a burner. You are not being judged on your copy yet. You are being judged on your shape.

The first mistake: volume that looks like a leak

Five on Monday and four hundred on Tuesday is the pattern every receiver watches for. Not because four hundred is a lot, but because the SLOPE is wrong. Real mailboxes grow.

A schedule that works looks boring. Something like five a day in week one, fifteen in week two, twenty-five in week three, then thirty, thirty-five, forty, forty-five, and fifty from week eight. Eight weeks to steady state on one mailbox. If you need more than fifty a day, the answer is another mailbox, not a bigger number.

The number that gives a receiver pause is not fifty. It is fifty sent in four minutes. Fifty spread across a working day is one every ten minutes, which is a person working a list.

And the ramp has to be EARNED, not waited out. We found this on our own mailboxes: three addresses, all registered the same week, all sitting at calendar week two and therefore entitled to fifteen a day each. Their actual lifetime volume was two, one, and one. Four emails between them. Time had not built any reputation, because delivered mail builds reputation and there was none — and the schedule was about to hand them a fifteen-fold increase for having survived seven days of doing nothing.

The second mistake: retrying an address that does not exist

This is the one that kills domains, and it is almost always invisible.

When you email a dead address, the receiving server tells you. Sometimes immediately, as a 5xx during the conversation; sometimes hours later, as a bounce message from MAILER-DAEMON. Either way you now know that address is gone. If your sequence sends step two anyway, you have just bounced twice on the same address, and step three makes it three.

Bounce rate is the single number most likely to get a sending domain blocked. Above about 5% you are in trouble. A list with 2% dead addresses and a four-step sequence that ignores bounces produces an 8% bounce rate on paper, from a list that was actually fine.

How to tell if this is happening to you

  • Send yourself a test to an address you know does not exist at a domain you own.
  • Wait for the bounce.
  • Now check whether that address would receive step two of your sequence tomorrow.

If it would, that is your bug. No amount of copywriting fixes it.

The third mistake: treating a complaint like a bounce

They are not the same thing and the difference is worth understanding.

A bounce means the address was WRONG. That is a data problem, and the fix is upstream in wherever you got the list. A complaint means the address was RIGHT, a real person read what you sent, and pressed the button that says this is spam. That is a verdict on the message.

Providers weight it accordingly. A complaint rate above 0.1% is a warning and above 0.3% is an intervention. For scale: three complaints out of a thousand sends is enough to matter, and one bad campaign can produce that on its own.

Practical rule: a complaint should cost you roughly twice what a bounce costs. If a bounce knocks you back a week of your ramp, a complaint knocks you back two — and five complaints should end that mailbox permanently rather than slow it down.

The fourth mistake: one list, one mailbox, one domain

Everything above is per-address and per-domain. So the moment you have real volume, the question is not "how much can this mailbox send" but "how is the day spread".

Two things people get wrong here. The first is round-robin, which looks fair and is not: mailboxes have different ages and different health, so a fixed rotation over-serves the newest one. Spread by fraction of each mailbox's own limit instead.

The second is letting one domain carry the day. If you run two domains and one is healthier, an unconstrained system quietly routes everything through it — and then that is the domain that gets burned, which is precisely the one you could least afford to lose. Cap any single domain at something like half the day's total.

What to actually do, in order

  • Authenticate before you send anything. SPF, DKIM and DMARC on the sending domain. This is table stakes and it is also the only item on this list that is a one-off.
  • Never send cold mail from your main domain. Use a separate one that redirects to your real site. If it burns, you lose a domain rather than your company email.
  • Verify addresses before the first send, and drop the ones marked invalid. A known-bad address is worse than no address: it is the one thing guaranteed to bounce.
  • Suppress on the first hard bounce and on every complaint, permanently, across every sequence you run.One list, checked before every send, with no override. The moment there is a "just this once" flag, somebody will use it for a warm intro and mail a person who filed a complaint.
  • Send inside working hours in the sender's own timezone. Mail timestamped 03:14 on a Sunday is not from a founder.
  • Watch bounce rate weekly, not monthly. By the time a monthly report shows it, you have sent four more weeks into the problem.

The uncomfortable part

Most of this is arithmetic, and arithmetic is exactly the thing a person doing outreach between client calls will not do. Not because it is hard, but because the cost of skipping it arrives six weeks later and does not announce itself as a consequence of anything.

That is the honest argument for automating the boring half: not that a machine writes a better email, but that a machine will refuse to send the eleventh one today, and you will not.

Everything described here is in the kernel that runs Mycel — the scheduler, the wedges, the guards, and the tests that hold them.

Read the kernel →More writing →

Read next

  • How to tell if AI work is actually getting betterOne number tells you whether AI is doing your client work or drafting near it: how much of each draft you rewrite before it goes out. If it is the same in month three as in month one, you bought a tool, not a colleague — and most vendors have never measured it.
  • What a junior actually costsA junior on $55,000 costs about $100,000 in their first year once you count payroll tax, health insurance, recruiting, equipment and the fifteen days of your own time it takes to ramp them. Here is the full arithmetic, and the test for which work is worth hiring for and which is a process problem wearing a headcount costume.
  • Chasing an invoice without losing the clientMost overdue invoices are not a refusal to pay — they are an invoice that reached one person who is not the person who pays. A four-rung ladder where the escalation is in the specificity rather than the tone, the three rules underneath it, and the four things to fix before you fix the chasing.

Take the client you turned down last month.

Describe what you deliver and the first draft exists before you have finished your coffee.

Start 7 days free

The first AI delivery firm. You sign.

All systems operational

Ask an AI about us

  • Claude
  • ChatGPT
  • Perplexity

It reads the site and answers on its own. We do not get to edit what it says.

Product

  • What you get
  • Pricing
  • Changelog
  • What it runs
  • Free reports
  • Product map
  • Team
  • Blog
  • Glossary
  • AI Visibility Index
  • Sign in
  • Docs

Compare

  • vs ChatGPT, Claude, or whichever tab is already open
  • vs Grok Bot and the AI-employee platforms
  • vs Hiring an account manager
  • vs Profound
  • vs Otterly
  • vs Building it yourself
  • vs Zapier & n8n
  • vs Temporal
  • vs LangGraph
  • vs CrewAI & AutoGen
  • All comparisons

Legal

  • Privacy
  • Sub-processors
  • Terms
  • DPA
  • Security
███╗   ███╗ ██╗   ██╗  ██████╗ ███████╗ ██╗
████╗ ████║ ╚██╗ ██╔╝ ██╔════╝ ██╔════╝ ██║
██╔████╔██║  ╚████╔╝  ██║      █████╗   ██║
██║╚██╔╝██║   ╚██╔╝   ██║      ██╔══╝   ██║
██║ ╚═╝ ██║    ██║    ╚██████╗ ███████╗ ███████╗
╚═╝     ╚═╝    ╚═╝     ╚═════╝ ╚══════╝ ╚══════╝