What we learned sending 50 cold emails and getting nothing back

Most of the value in an outreach sequencer is the part that decides who not to email. Ours declined 94 out of every 100 it looked at. That is the happy surprise, and the bit worth copying!

9 min readOutreach

A sequencer is a filter that occasionally sends an email

When people say outreach sequencer they usually picture the sending part. A list goes in, emails come out, and the tool is judged on how many it can fire. We built ours that way round at first, and it was absolutely the wrong shape!

The sending is the cheap bit. Any script can send! The really valuable thing to build, and the thing that decides whether you are running a business or a nuisance, is the machine that looks at a name and says no. Ours said no a lot!

Here is the run we did, end to end. We pulled 1,002 local businesses from a public directory. The scorer reached a real decision on 101 of them! It queued 6 to send, held 48 for later, and rejected 47 outright. We sent 50 emails in total, because some went out by hand before the scorer existed.

StageCountWhat it means
Drafted1,002Pulled from a public directory and given a draft email
Decided101The scorer reached send, hold or reject on these
Send6Cleared every signal and every guardrail
Hold48Interesting, not yet good enough
Reject47Never contacted at all
Sent50Emails that really left, including early manual ones

Of everything the scorer decided on, it declined to email 94 percent. That is not the system failing. That is the system working, and it is the single most useful number on this page!

Score signals you can see, never things you assume

A signal is a fact about a business that a script can check by looking. That rule sounds so obvious, and it is really easy to break! The moment you score something a human has to judge, your list quietly fills up with guesses wearing a number.

The signals we scored on are all things you can read off a website in a second, which is great! Is the site built on a generic template. Does it work on a phone. Is it served over a secure connection. Is the contact address a person or a shared inbox. Have we delivered for this kind of business before.

  • Generic template, which you detect from fingerprints in the page source
  • No mobile support, which you read from the page metadata
  • No secure connection, which is simply whether the address is http or https
  • A shared inbox rather than a named person
  • A business category we have worked with before

We also tried scoring on business size, and we very happily threw it away. You cannot tell the size of a business from a directory listing without guessing! A guessed signal is so much worse than a missing one, because it makes the final score look far better informed than it really is.

Weighting those signals and picking the cut line between send and hold is the fiddly part, and it is the part we charge for. The shape is yours for free! Observable facts only. A single number at the end. Three outcomes, not two, because hold is what stops you burning a decent prospect too early.

One more thing that matters more than the weights. Some rules have to beat the score outright! No contact address means no email, whatever the number says. Already contacted means never again. A franchise usually cannot buy a website at all, so emailing one really does waste their morning and yours.

Worked example 1: the cafe that scored well and heard from us

A neighbourhood cafe, and one of the 6 the scorer actually queued! Its site was built on an off-the-shelf template, the contact was a shared inbox, and cafes are a category we have built for before. Three signals, all visible, and not one of them a judgement call.

The draft named the template thing directly, in one line, as something we had noticed rather than as a problem with their business. Then a price range and a monthly figure, then one short question. Really short, and we love it that way!

It sent cleanly and the provider confirmed delivery. Then nothing happened at all. No reply, no bounce, no unsubscribe. This is what the great majority of perfectly good cold emails do, and you really should expect it!

We generate every email against the specific signal we saw. No templates with a name slotted in! It costs more per send and it is the only version of this we are willing to run.

Worked example 2: the 95 we decided not to email

This is the example we would absolutely love you to steal. Out of 101 decisions, 48 were hold and 47 were reject. Only 6 were send!

The rejects were mostly businesses with no reachable contact, or with a site that was already good! Emailing somebody about their bad website when their website is fine is how you teach a whole town to ignore you. The holds were real prospects that were simply not convincing enough yet.

Keeping hold as a separate outcome is worth so much. A binary yes or no forces every borderline prospect into one bucket. Yes means you email somebody you were really unsure about. No means you throw away a very decent lead forever. Hold means you look again when something changes, and it is so much better!

If your sequencer sends to most of its list, it is not really filtering. It feels productive because the cost lands on other people rather than on you. A high reject rate is what you want, and ours being this high was the first happy sign the machine was doing its job!

Worked example 3: 50 sends, and not one reply

Here is our actual outcome, and you absolutely deserve it before you copy any of this. We sent 50 emails across 6 days. Zero replies came back! No calls were booked. The last one went out weeks ago, so this is a settled result and not a funnel still filling up.

We were testing two different email styles and three subject line patterns when we stopped. One style opened with a really genuine compliment. The other led with the thing we had noticed about their site. We would absolutely love to tell you which won, and we cannot, because zero and zero have no winner!

The first question a zero should make you ask is not what to change. It is whether your instrument is broken! An empty reply table looks exactly the same whether nobody replied or your reply checker quietly stopped working. So go and prove the checker works before you believe a single thing it tells you!

Once you trust the reading, a zero is genuinely useful information! Fifty is enough to say this approach is not landing. It is not nearly enough to say cold email does not work. Our honest conclusion is a very narrow one, and it is ours alone.

Decide your stopping rule before you start sending, and write it down. The instinct when replies do not come is to send more, and that instinct is wrong every time!

Send slowly, stop early, and keep the receipts

Rate limits on a sending loop are usually explained as a deliverability trick. That is not really why they are there! A low daily ceiling is what stops a bug from emailing a thousand strangers before you have had your morning coffee. We are very glad ours was low.

Ours sends in two small windows on weekdays only, with a gap between each one, and a hard daily maximum it cannot exceed. We also scored overnight and sent in daylight, because scoring touches nobody and sending touches a real person!

Follow-ups stop at three. That is the initial email, one short nudge, and a final note that says plainly it is the last one. Then the prospect is marked and never contacted again. Stopping is a really good feature! A fourth email does not improve your chances and it does turn a quiet non-reply into a complaint.

Record proof for every stage, and take the sent timestamp from what your mail provider tells you rather than from your own clock. Store which email version and which subject pattern each one used. Months later that record is the only way to answer what you actually did, so it is well worth the effort!

One practical trap, since it cost us real time! Count your funnel on the server. Most database layers quietly cap a plain query at a thousand rows and tell you nothing about it. So the moment your list grows past that, counting rows yourself starts giving you a confidently wrong answer.

What we would change before running it again

We are writing these as open questions rather than answers, because we have not tested them yet and we are definitely not going to pretend otherwise!

  1. Test the reply path first

    Send a real reply to yourself and confirm the checker sees it. We should have done this on day one, before a single prospect email went out.

  2. Match replies by message, not by address

    People answer from a different address than the one you wrote to more often than you would think, and matching on address loses those silently.

  3. Question the offer before the wording

    We spent our effort on how the email was written. A zero across two very different styles points hard at what is being offered instead.

  4. Try a warmer channel for the best prospects

    Only 6 cleared the bar. At that volume a phone call or an actual visit is absolutely realistic, and it is a really different conversation.

We would absolutely love to update this page once we have run it again properly. That is the deal we make on every guide here, and we really enjoy keeping it. You get the real numbers, including the bad ones, as soon as we have them!

Common questions

What is a cold outreach sequencer?
It is a system that collects prospects, scores them on observable signals, decides which ones are worth contacting, and then sends a small number of personalised emails on a fixed cadence. The scoring and the declining matter far more than the sending does.
How many prospects should a sequencer actually email?
Far fewer than you expect. Our scorer declined 94 percent of everything it reached a decision on, sending to only 6 of 101. If your sequencer is emailing most of its list then it is not filtering at all, and the cost of that lands on the people receiving it.
What makes a good outreach signal?
Anything a script can verify by looking, such as whether a site uses a generic template, works on a phone, or is served securely. If a human has to judge it then it is a guess, and a guessed signal makes your score look better informed than it really is.
Did your outreach sequencer get any replies?
No. We sent 50 emails across 6 days and received nothing back, with no calls booked. We are publishing that because it is what happened. Fifty sends is enough to say our approach did not land, and nowhere near enough to say cold email does not work.
What should you do when outreach gets zero replies?
Check your instrument before you change your strategy. An empty reply table looks identical whether nobody replied or your reply checker is broken, so prove the checker works first. After that, change the offer or the channel rather than simply sending more.
How many follow-up emails should you send?
Three touches total, then stop permanently. That is the first email, one short nudge, and a final note that says it is the last one. A fourth does not improve your odds and it does turn a quiet non-reply into a complaint.

What this guide costs you: nothing

Everything above is free, and it is genuinely the useful half. You have the shape of the machine, our real numbers and the mistakes we made. The paid kit is the runnable version. You get the scoring rubric with the weights and the exact thresholds we used, both email prompts word for word, the send cadence as a schedule you install, and the verification playbook that proves a send really left and that your reply check works. It includes the stopping rule too. Buy it once and your link keeps serving updates!

The Outreach Sequencer Kit

The scoring rubric, with its real weights and cut lines. Both send prompts, word for word. The cadence as cron and launchd. The verification playbook that proves a send really left, and that your reply check actually works. Every assumption about what you bring is on that page, above the price. That includes the part where our own run got no replies. Buy once, and your access link always serves the current version.

Read the whole thing before you decide