Agency Cold Email, Optimized for Yield Per Prospect
Every lead gen agency eventually hits the same wall: the client's addressable list is finite. You can't invoice your way past a market that only has 4,000 companies in it, and burning through those prospects with a one-size-fits-all sequence means the retainer ends when the list does. The agencies that survive small-TAM clients learn to optimize a different number — not sends per month, but meetings extracted per thousand prospects. Woodpecker is built for exactly that game: its condition-based follow-up paths route each prospect down a different branch depending on what they did with the last email, so a non-opener, an opener, and a clicker each get the follow-up most likely to convert them specifically.
This guide covers how agencies run that yield-per-prospect model on solid ground: ColdRelay provides the infrastructure layer — the domains, mailboxes, and dedicated IPs — and Woodpecker provides the branching, timing, and sequencing layer on top. We'll walk through provisioning the mailbox pool, building condition-based paths that treat engagement signals as routing data, using timezone-aware delivery to keep those signals honest, and running per-client campaign hygiene from Woodpecker's agency panel.
Why Branch-Heavy Campaigns Need Their Own Infrastructure Layer
Condition-based paths only work if the signals feeding them are trustworthy. An if-opened branch is making a routing decision based on whether the prospect opened — but if half your emails are landing in spam, the 'didn't open' branch fills up with people who never had the chance. The branching logic is only as good as the inbox placement underneath it, which makes infrastructure the first lever of yield, not the last.
That's the division of labor in this stack. Woodpecker handles the decision layer: condition-based follow-up paths that branch on opens and clicks, A/B testing to sharpen each branch, timezone-aware delivery so every prospect gets the email at a sensible local hour, and human-like sending intervals that keep the pattern natural. ColdRelay handles the trust layer: secondary domains, mailboxes on isolated Azure tenants with dedicated IPs, and DNS (SPF, DKIM, DMARC) pre-configured — provisioned in about an hour, running at 95%+ inbox placement, with warmup running continuously as part of each mailbox's budget so there's no waiting period before campaigns start.
The pairing is additive, not competitive: ColdRelay is the infrastructure layer, Woodpecker is the sending and sequencing layer on top of it. For an agency selling against a finite list, the combination is the whole pitch — placement gets the email seen, and the branches turn what the prospect did about it into the next best move.
Visit Woodpecker →From ColdRelay Pool to a Live Condition-Based Campaign in Woodpecker
Provision the client's mailbox pool on ColdRelay
Size the pool from the client's list, not from a volume habit: a yield campaign touches each prospect 4-6 times over several weeks, so a 4,000-prospect list at 2 outbound sends/day per mailbox (4/day total, split 2 outbound + 2 warmup) typically needs a 30-60 mailbox pool to work through the list at a steady cadence. Order secondary domains echoing the client's brand — ColdRelay supports 100-150 mailboxes per domain, so most client pools fit on a single domain — and the pool is live on isolated Azure tenants with dedicated IPs in about an hour, DNS (SPF, DKIM, DMARC) pre-configured.
Add the client and connect mailboxes in Woodpecker's agency panel
In Woodpecker's agency panel, add the client as their own company workspace so their campaigns, prospects, and stats stay separated from the rest of your book. Then connect each ColdRelay mailbox under that client via SMTP/IMAP using the credentials exported from the ColdRelay dashboard, and set each mailbox's daily sending limit to 2 outbound emails per day — mirroring the ColdRelay budget of 4 sends/day total, 2 outbound + 2 warmup. Leave Woodpecker's human-like sending intervals on so the 2 sends land at irregular, natural-looking times rather than on a robotic schedule.
Build the condition-based follow-up path
This is where yield is engineered. In the Woodpecker campaign editor, build the sequence as branches rather than a straight line using condition-based paths: prospects who didn't open the first email get a follow-up with a rewritten subject line on a fresh thread (the original subject already failed for them); prospects who opened but didn't click get a social-proof follow-up — a relevant customer result or a one-line case study; prospects who clicked the link get the shortest path to the calendar, a direct one-or-two-sentence meeting ask. One list, three conversations, each matched to demonstrated intent.
Turn on timezone-aware delivery per prospect
Enable Woodpecker's timezone-aware delivery so each prospect receives emails during their own local business hours, whatever timezone their row in the list says. This does double duty for a branching campaign: morning-local delivery lifts open rates outright, and it makes the open signal itself more honest — an email that arrived at 3am and got buried reads as 'not opened' to the condition logic, sending a perfectly good prospect down the wrong branch. Clean delivery windows keep the router fed with real signal.
Launch with per-campaign deliverability monitoring on
Launch the campaign and keep Woodpecker's per-campaign deliverability monitoring in view alongside the branch stats. Because every branch decision depends on placement, a dip in this campaign's deliverability shows up downstream as a bloated non-opener branch — so the monitoring panel is your early warning. If a campaign's numbers slide, pause it and check list quality and copy before blaming infrastructure: on ColdRelay's dedicated IPs and isolated tenants, the placement baseline is 95%+, which makes anomalies easy to spot and attribute.
The Yield Playbook: Extracting More Meetings From the Same List
Treat engagement signals as routing data, not reporting decoration
Most agencies log opens and clicks into a report and send everyone the same follow-up anyway. The yield model inverts that: every signal is an instruction. No open means the subject line failed — so the non-opener branch re-attempts the open with a new subject on a fresh thread, not a 'just bumping this' reply to an email they never saw. An open without a click means the offer didn't clear the bar — so that branch escalates proof, not pressure. A click means intent — so that branch stops selling and asks for the meeting. If two branches of your path contain the same email, you don't have branches; you have a line with extra steps.
A/B test at the bottleneck stage, one variable per branch
Woodpecker's A/B testing is most valuable when it's aimed. Read each client's funnel and find the stage that's leaking: if opens are low, test subject lines on the first touch; if opens are fine but the click branch is starving, test the proof email's angle; if clickers aren't booking, test the calendar ask. Testing one variable at the bottleneck stage produces a verdict in a week or two of sends — testing everything everywhere produces noise. Each winning variant compounds, because a 10% lift at one stage flows through every branch downstream of it, and on a finite list, compounding per-stage lifts is the only way the meeting count grows without new prospects.
Recycle exhausted branches into next quarter's list
When a prospect exits the path without converting, they're not dead — they're data. Tag exits by the branch they ended in: a prospect who opened three times but never clicked is a warm re-target for a different offer angle next quarter; a never-opener might respond to a completely different sender persona or channel; a clicker who went quiet is the first name on the re-engagement list. On a small TAM, this recycling is the difference between a retainer that ends when the list runs out and one that runs the same market in waves — each wave informed by exactly how every prospect behaved in the last one.
Run a weekly hygiene pass across the agency panel
Yield campaigns rot quietly: a branch that made sense in week one fills with prospects it no longer fits, bounces accumulate, and one client's stats drift while another's spike. Block a weekly pass through Woodpecker's agency panel — client by client, campaign by campaign — checking three things: per-campaign deliverability (placement trouble shows up here first), branch distribution (a non-opener branch above ~60% of prospects means a subject line problem or a list problem, not a follow-up problem), and prospect aging (anyone stuck mid-path beyond the intended cadence gets resolved or recycled). Thirty minutes a week per handful of clients keeps every path doing what it was designed to do — and gives you a per-client yield number to put in the report.
Typical Yield-Model Benchmarks (Woodpecker + ColdRelay)
| Metric | Benchmark | Notes |
|---|---|---|
| Inbox placement rate | 95%+ | Dedicated IPs and isolated Azure tenants — the placement floor that keeps branch signals trustworthy |
| Outbound capacity per mailbox | 2/day | 4 sends/day total per mailbox — 2 outbound + 2 warmup, with warmup running continuously |
| Meetings per 1,000 prospects | 8-15 | Condition-based paths with branch-matched follow-ups; linear sequences on the same lists typically run 4-8 |
| Reply rate lift from branching vs. linear | 1.5-2x | Subject rewrites for non-openers and intent-matched follow-ups recover prospects a straight sequence loses |
| Time to onboard a new client | Same day | ~60 minutes to provision the ColdRelay pool, plus client setup and path-building in Woodpecker's agency panel |
What It Costs: Woodpecker + ColdRelay
You pay per mailbox per month for the infrastructure, with volume tiers that drop as you scale (see the table below). Yield-model pools are sized to each client's list rather than to raw volume, but every client's pool totals into one agency bill — so a multi-client book reaches the cheaper per-mailbox tiers quickly. DNS, dedicated IPs, and isolated Azure tenants are included.
Woodpecker is billed separately on its own subscription, with condition-based paths, A/B testing, deliverability monitoring, and the agency panel priced per its current plans.
The cost structure matches the model: infrastructure cost is pinned to list size (mailboxes scale with how many prospects you're working, not how hard you're working them), while Woodpecker's cost covers the branching logic that raises output from the same inputs. When the pitch to clients is meetings per thousand prospects, both bills divide cleanly into that denominator — which makes the yield story auditable in the same spreadsheet you price retainers from.
| Mailboxes | ColdRelay price / mailbox / month |
|---|---|
| 1–199 | $1.00 |
| 200–999 | $0.85 |
| 1,000–4,999 | $0.70 |
| 5,000+ | $0.55 |
Each mailbox sends 4 emails per day — 2 outbound to prospects + 2 warmup. ColdRelay provisions mailboxes on isolated Azure tenants with dedicated IPs; Woodpecker handles the sending, sequencing, and inbox rotation on top.
Frequently Asked Questions
Does ColdRelay replace Woodpecker?
No — they're complementary layers. Woodpecker handles the sending and sequencing: condition-based follow-up paths, A/B testing, timezone-aware delivery, deliverability monitoring, and the agency panel for client campaigns. ColdRelay provides the layer underneath — the domains, mailboxes, and dedicated IPs those campaigns send from. Agencies use them together: ColdRelay for infrastructure, Woodpecker for the branching and delivery logic on top.
Do condition-based paths use more of my email budget than a linear sequence?
No — branching changes which email a prospect gets, not how many. Each prospect still receives a capped number of touches as they move through the path; the branches just route them to the follow-up matched to their behavior. Total sends are governed by the same per-mailbox budget either way: 4 sends/day per mailbox, split 2 outbound + 2 warmup. The yield gain comes from relevance per touch, not from extra volume.
Do I need a warmup period before launching Woodpecker campaigns on ColdRelay mailboxes?
No. ColdRelay mailboxes run continuous warmup as part of the per-mailbox budget — 4 sends/day total, split 2 outbound + 2 warmup — with no waiting period before campaigns can start. Connect the mailboxes in Woodpecker, set each one's daily limit to the 2 outbound sends, leave human-like sending intervals on, and launch the same day the pool provisions. Don't layer a second warmup system on top; ColdRelay handles it underneath.
How many mailboxes does a yield-focused client need?
Work backward from the list and the cadence rather than from a volume target. At 2 outbound sends/day per mailbox (4/day total with 2 warmup), a 30-mailbox pool delivers about 1,800 outbound sends a month — enough to carry a few thousand prospects through a 4-6 touch condition-based path over a quarter. Since ColdRelay supports 100-150 mailboxes per domain, most yield-model clients fit on one domain, and the pool provisions in about an hour when the client's list grows enough to justify expanding it.