I've been running cold email campaigns for over a year across multiple businesses. The stack I've settled on after testing nearly every combination is simple: Apollo for finding and enriching leads, Instantly for sending and managing deliverability. The two tools together cost under $100/month and can generate a consistent pipeline of warm replies.
This blueprint walks you through the exact setup I use — from buying domains to getting your first positive reply. No theory. Just the steps.
Why Two Tools Instead of One?
Apollo is the best B2B contact database available right now. Its filtering is surgical — you can target by job title, company size, industry, revenue, tech stack, funding stage, and dozens of other signals. The free tier gives you 10,000 email credits per month, which is enough to test whether cold outreach works for your business before spending a dollar.
But Apollo's sending infrastructure has a problem. Multiple independent tests have shown that the same email copy sent to the same list gets dramatically different reply rates depending on whether you send through Apollo's built-in sequences or through a dedicated sending tool like Instantly. One widely-cited test showed 0.56% reply rate through Apollo versus 5.5% through Instantly — same leads, same copy, 10x the replies.
The reason is deliverability infrastructure. Instantly was built specifically for cold email sending. It manages inbox rotation, warmup, sending limits, and reputation monitoring in ways that Apollo's sequences — which were designed as a secondary feature — simply don't match.
So the play is: Apollo for data, Instantly for delivery. Best of both worlds.
Phase 1: Domain and Email Setup (30 minutes)
Never send cold emails from your primary business domain. If your domain gets flagged for spam, your regular business email goes down with it. Instead, buy 2-3 secondary domains that are similar to your main domain.
For example, if your business is operatorstack.com, you might buy operatorstack.co, getoperatorstack.com, and tryoperatorstack.com. These are your sending domains. Your main domain stays clean.
For each sending domain:
SPF record: Add a TXT record that tells receiving servers which IPs can send on your behalf. Both Google Workspace and Instantly provide the exact values.
DKIM record: Cryptographic signature proving your emails weren't tampered with. Google Workspace auto-creates this — verify it shows DKIM_VALID in email headers.
DMARC record: Start with p=none (monitor only). After 2-4 weeks with clean results, progress to p=quarantine, then p=reject. This tells servers what to do with emails that fail SPF/DKIM checks.
Custom tracking domain: Set this up in Instantly so your open/click tracking doesn't use Instantly's shared domain, which can hurt deliverability.
Set up 2 email accounts per domain (e.g., angelo@operatorstack.co and hello@operatorstack.co). This gives you 4-6 sending accounts total, which Instantly will rotate between to spread your sending volume and protect reputation.
Phase 2: Warmup (2 weeks — runs in background)
Brand new email accounts have zero reputation. If you start blasting 50 emails a day from a fresh account, you're going straight to spam. Warmup is the process of building sending reputation by gradually increasing volume with positive engagement signals.
Instantly has built-in warmup that works automatically. Connect your email accounts, turn on warmup, and Instantly's network of accounts will exchange emails with yours — opening them, replying to them, marking them as important, and moving them out of spam. This simulates real human engagement and tells email providers your accounts are legitimate.
Run warmup for a minimum of 2 weeks before sending any cold emails. I typically let it run for 3 weeks. During this time, you can be building your prospect lists in Apollo.
Deliverability Rules
Never exceed 30-40 emails per account per day. Even after warmup. Going above this is the #1 way to get flagged.
Keep warmup running permanently. Don't turn it off once you start sending. It maintains your reputation alongside your campaigns.
Verify every email before sending. Apollo's "verified" emails have about a 19% accuracy rate according to independent testing. Use a verification service like MillionVerifier or ZeroBounce before importing to Instantly. A single-digit bounce rate is your target.
Phase 3: Building Your List in Apollo (30 minutes)
This is where Apollo earns its keep. The quality of your list determines everything — the best email copy in the world won't help if you're emailing the wrong people.
Start by defining your Ideal Customer Profile (ICP) with hard filters: job titles (the decision makers who can say yes), company size (the range that can afford what you're selling), industry (where your offer is relevant), and geography (where you can actually serve them).
Apollo's filtering goes deeper than most people realize. You can filter by technologies used (companies running Shopify, HubSpot, or specific tools), by hiring signals (companies with open roles in your target department), by funding stage (recently funded companies have budget to spend), and by company growth rate. These secondary signals are what separate a mediocre list from a great one.
For each campaign, I build lists of 200-500 prospects. Not thousands. Smaller, more targeted lists with higher personalization consistently outperform massive spray-and-pray campaigns. A 5% reply rate on 300 well-targeted prospects (15 conversations) beats a 0.5% reply rate on 3,000 generic ones (also 15 conversations, but with 10x the effort and reputation risk).
Export your list from Apollo as a CSV. Run it through email verification. Then import the verified list into Instantly.
Phase 4: Writing the Sequence (30 minutes)
Your cold email sequence should have 3-5 touches spread over 10-14 days. Here's the framework I use:
The Soft Open
This is not a pitch. It's a relevant observation + a question. Reference something specific about their company — a recent hire, a product launch, a technology they use — and connect it to the problem you solve. End with a low-friction question, not a meeting request.
Subject line: Keep it short, lowercase, conversational. "quick question about [their company]" outperforms "Introducing Our Solution for [Industry]" every time.
The Value Add
Share something useful without asking for anything. A relevant case study, a data point, a quick insight about their industry. This builds credibility and shows you're not just another person trying to get on their calendar.
The Social Proof
Brief mention of a result you've delivered for a similar company. Keep it specific and quantified — "We helped [similar company type] reduce [problem] by [metric] in [timeframe]." Then the ask: "Would it make sense to spend 15 minutes exploring if something similar could work for [their company]?"
The Breakup
"I haven't heard back, so I'll assume the timing isn't right. If [problem] becomes a priority, feel free to reach out." This counterintuitively gets the highest reply rate of any email in the sequence. People respond when they feel the pressure is off.
The key insight that took me months to learn: personalization at the account level matters more than personalization at the individual level. Knowing that "their company just launched a new product line" is more powerful than knowing "they went to Duke." Business relevance beats personal flattery every time.
This is where my OpenClaw agent earns its keep. Before each campaign, I feed Molty the prospect list and it researches each company — recent news, product launches, hiring patterns, tech stack changes. That research becomes the personalization layer in my opening emails. The reply rate difference between a generic template and a research-backed opener is 3-4x in my experience.
Phase 5: Launch and Monitor (ongoing)
Once warmup is complete and your sequence is loaded, start with a small batch — 25-50 prospects. Monitor open rates, reply rates, and bounce rates for 3-5 days before scaling up.
Healthy Benchmarks
Open rate: 45-65% (below 40% = deliverability problem, above 70% = tracking pixel issue)
Reply rate: 3-8% (below 2% = list or copy problem, above 10% = you've found product-market fit)
Bounce rate: Below 3% (above 5% = verification failure, stop sending immediately)
Positive reply rate: 1-3% of total sends (this is the number that matters for pipeline)
If your numbers are healthy after the initial batch, scale to your full daily sending capacity across all accounts. With 4-6 accounts at 30-40 emails each, you can reach 120-240 new prospects per day. That's 2,400-4,800 per month — more than enough to build a consistent pipeline for most businesses.
The Economics
| Item | Monthly Cost | Notes |
|---|---|---|
| Apollo | $0-49 | Free tier: 10K credits/mo. Basic plan: $49/mo for more filters |
| Instantly | $30 | Growth plan: 5,000 contacts, unlimited accounts |
| Sending domains | $3-5 | 2-3 domains at ~$10-12/year each |
| Google Workspace | $14-28 | $7/user × 2-4 sending accounts |
| Email verification | $5-15 | MillionVerifier or ZeroBounce, pay per verification |
| Total | $52-127/mo | Full lead gen pipeline, hundreds of prospects per week |
Compare that to the cost of a single SDR hire ($50-80K/year + benefits) or a lead gen agency ($2-5K/month). This stack does 80% of what those options do at 5% of the cost. The remaining 20% — qualifying replies, booking meetings, closing deals — still requires a human. But the pipeline that feeds those conversations is automated.
What I'd Do Differently Starting Over
I'd spend more time on domain warmup. My first campaign, I only warmed up for 10 days and my deliverability suffered for weeks. Three weeks minimum is the rule now.
I'd verify every single email address independently of Apollo. I trusted Apollo's "verified" badge early on and my bounce rate hit 8% on one campaign, which tanked that sending account's reputation. Now every address gets verified through a third-party service before it touches Instantly.
I'd start with 200-person campaigns instead of 1,000. Smaller lists forced me to write better, more personalized emails. The reply rates were dramatically higher, and I learned what messaging worked before burning through thousands of prospects with mediocre copy.
And I'd set up the AI research pipeline from day one. Having Molty research each prospect before I write the opening email is the single biggest improvement I've made to my cold outreach. It takes the "cold" out of cold email.