Find out why a campaign isn’t working

Check delivery, then the list, then the offer, then the words, in that order, and fix the first one that fails.

By Angelo Natale1 hourWhenever a campaign falls short

What it does

When a campaign gets no replies, most people rewrite the email. Usually the email isn’t the problem. Check in order: are the emails arriving, are they going to the right people, is the offer worth a reply, and only then, are the words right. Each check takes minutes, and the first one that fails is the one to fix.

What you need

  • The campaign’s numbers: sends, bounces, replies and spam complaints
  • A few test inboxes at Gmail and Outlook
  • Your sourcing spec and the email itself

How it works

  1. Check delivery first

    Bounces above 3% mean stop and clean the list (see verify every list). Google’s sender guidelines ask senders to keep spam complaints below 0.1% and never reach 0.3%. Then send the campaign to your test inboxes and see where it lands, and check that every sending domain passes SPF, DKIM and DMARC (see set up sending domains). If it lands in spam, nothing else matters yet.

  2. Then check the list

    Open 20 random leads and check each one against your sourcing spec by hand. If fewer than 16 of the 20 fit, it’s a list problem: fix the filters, or check every company with AI.

  3. Then check the offer

    Is what you ask for worth a reply from this person, right now? Would you answer a stranger who asked you for it? And is there a real reason to write now, like a signal, in the first line?

  4. Then check the words

    Read it out loud. Under 50 words, about them, one easy question, no links (see write a first cold email in under 50 words).

    Campaign check: copy into a doc and fill it in
    CAMPAIGN CHECK: [CAMPAIGN NAME], [DATE]
    
    1. DELIVERY
    Bounce rate: [ ]% (stop above 3%)
    Spam complaints: [ ]% (keep under 0.1%)
    Test inboxes at Gmail and Outlook: [INBOX / SPAM]
    SPF, DKIM and DMARC pass on every sending domain: [YES / NO]
    
    2. THE LIST
    20 random leads checked by hand: [ ] of 20 fit (fix below 16)
    
    3. THE OFFER
    Worth a reply from this person, now: [YES / NO]
    A real reason to write now, in the first line: [YES / NO]
    
    4. THE WORDS
    Under 50 words, one easy question, no links: [YES / NO]
    Sounds like a person when read out loud: [YES / NO]
    
    The first check that failed, and the fix:
  5. Fix one thing, then measure again

    Fix the first check that failed, send the next batch, and compare. Fix three things at once and you’ll never know which one mattered (see test one thing at a time).

What good looks like

You know which of the four checks failed, you fixed only that, and the next batch tells you whether it worked.

An example, not a client story. A campaign gets 1 reply from 800 sends. Bounces are 1.2%, so the list looks clean, but two of five test inboxes put it in spam. One sending domain is failing DKIM. That gets fixed, and the next batch goes out with the same words.

Mistakes to skip

  • Rewriting the email first.
  • Judging a campaign on opens.
  • Fixing everything at once, so you never learn what mattered.

More playbooks

All 64 playbooks →

Rather not run it yourself?

I build the whole system with you, so you just take the calls.

Every playbook here is one piece of it. On a 60-minute growth diagnostic we put your numbers on the system and work out how long it would take you to double.

Book your growth diagnostic