Watch the full video: I Sent 10,000,000 Cold Emails, Here's What Works in 2025
The Numbers
In the past 4 years, we have sent over 30 million cold emails. In the past 90 days alone, we have averaged 222 positive responses every single day on behalf of our customers. Along the way, there were a lot of mistakes. Here is everything worth knowing.
Domain Management: Throw It Away
Two years ago, if you asked whether to rehabilitate a burned domain, I would have said let it warm up for 45 days and it will come back. Today? Throw it away. We do not put any effort into saving domains anymore.
Any time you spend trying to fix a $12 domain with a $6 inbox on it is wasted. Instead, always keep the exact number of inboxes you need for sending, plus a one-to-one backup for every customer so you can immediately rotate in fresh inboxes.
How to Know Your Inboxes Are Burned
There are four signals, and they give you different insights:
1. Reply Rate Drops Below 1%
If you are sending emails and getting zero out-of-office replies, zero automated messages, zero negative responses, zero leads -- your inboxes are probably burned. The caveat: bad copy or wrong list can also cause this. But if reply rate drops below 1%, shut down the campaign and investigate.
2. Bounce Rate Climbs
If bounces are going up and you know your list is validated, your domains are likely burned. Check the bounce codes. If they say "undeliverable" or "email doesn't exist," that is bad data. But if they say "reported as spam", "message blocked", or status code 550, your domains are the problem. Upload the bounce codes to ChatGPT to understand what is happening.
3. Inbox Reputation Drops
On SmartLead, Instantly, or whatever platform you use, check the warm-up score. If that score ever drops below 100%, we assume the entire inbox is burned. If it is going to spam in the warm-up pool with generic copy, your sales copy in the real world is definitely going to spam.
4. Open Tracking (Last Resort)
Turn on open tracking for 2 days only. With any subject line, you should see around 60% open rates if you are landing in the inbox (most opens are automatic from Apple). If some inboxes show 10% opens, cut them. Keep the healthy ones. Every time we have run this process, reply rates go up after cutting the underperformers.
Sending Volume: 30 Emails Per Day Per Inbox
We start at 30 emails per day per inbox. Some people do 50, some do 15. It depends on your offer and risk tolerance.
If your campaign is getting a 2% response rate and you do not want to invest in more domains, you can push to 50 emails per day -- just watch for drop-offs, keep testing, and have extra inboxes on the sidelines.
Starting Fast When You Cannot Wait
If you are a sales rep at a new company and cannot wait for a two-week warm-up, here is what to do:
Think about what a spammer does and do the opposite. A spammer buys a domain and sends thousands of emails immediately. If you need to start on day one, take a subset of your inboxes and send just 5 emails per day, set to 1 email per hour. It is totally normal for a founder to set up a domain and start emailing. Just keep it slow and ramp over time. Always have other inboxes warming for their full term in the background.
Domain Aging Is Going to Matter More
We recently launched a campaign for a customer targeting Fortune 1000 companies. Inboxes that warmed for the standard 2-3 weeks got terrible placement. But inboxes that warmed for 6 weeks started making it into those accounts.
What I think you will need to start doing:
- One batch of inboxes warming for 2 weeks
- Another batch warming for 4 weeks
- Another batch warming for 2 months
The shorter-warmed inboxes will burn faster. The aged ones will penetrate harder filters. Also: domains are an annual cost, inboxes are monthly. When registrars like Porkbun or Dynadot run sales on .com or .co domains, buy them in bulk and let them age for 3 months before setting up inboxes. You are going to need the domains eventually -- take the discount now.
Domain Names Do Not Matter as Much as You Think
We buy extremely generic domains for free tests and still get positive responses from companies you have heard of. Some of our domains are literally 30 characters long. Obviously make them look decent, but do not stress about this.
Unlocking Local Leads with Clay
If your target market does not have a LinkedIn presence, use the Google Maps scraper inside Clay. Scrape areas for keywords, then use Clay Agent to find the owner's name. Once you have the name, guess their email addresses with your favorite email providers. Local leads are now fully unlocked because of Clay.
Targeting Competitor Customers
Two powerful approaches:
- BuiltWith.com -- finds companies using specific technologies on their website
- Clay's Jobs Source -- search for job descriptions mentioning specific tools ("responsible for managing Salesforce") to identify companies using your competitor's product even if it is not installed on their website
The Golden ICP Framework
This concept comes from Nikolai at Clay and it is only possible to execute in clay.com.
Take "founders of small businesses" as your ICP. Then layer it:
- Founders of small businesses who have never raised money
- Who founded their company less than 2 years ago
- Who have no history of being a CEO (they do not know the headache yet)
In Clay, when four criteria are true, send message A. When three are true, send message B. When only one thing is true, send the generic version. Only Clay lets you do this level of golden ICP enrichment. Not enough people are taking advantage of it.
Triangulating Employee Headcount
LinkedIn company pages have two numbers:
- Associated members (how many people claim to work there)
- Company bracket (self-reported: "50-200 employees")
For SaaS companies, associated members is accurate. For e-commerce or local businesses, it might not be. Cross-reference with Glassdoor (self-reported, but actively maintained for recruiting). Then use Clay Agent to triangulate and get more accuracy.
Build Your Own Intent Signals
Use Zenrows for scraping programmatic SEO pages (it handles proxies and anti-scraping tech). Instant Data Scraper is the Chrome extension every salesperson should have. Or have ChatGPT create Python scrapers for sites like Yelp. There is no excuse for manually collecting data anymore.
Tie Your Lead Magnet to the Call
A chocolate company came to us with a 3% reply rate but could not book meetings. Their CTA was: "Next time you want to do gifts, consider our chocolate. We will send you a free sample."
The fix: change the CTA to "To show you how it works, let's hop on a call, and as an example, I'll send you a free chocolate basket." Booking rates immediately increased. Always tie the lead magnet to the call so both sides get what they want.
Pain-Based Messaging (Josh Braun Framework)
Instead of: "We do taxes and help people save money."
Try: "How do you know your current accountant is using every legal loophole to get you as much money back from the government as possible?"
This works because you acknowledge they already have a solution, you lean into their real worry, and "legal loophole" is irresistible. Apply this twist to your own messaging.
Lead Magnets When You Think You Have None
One of our best lead magnets: a Google Sheet of every person in the United States with a director-level-and-above position who joined a company in the last month. We pull this from Clay and say "request access to get the sheet."
If you are a SaaS company and do not have a tangible freebie, remember: most businesses are built on information arbitrage. You know something about the market your prospects would find valuable. You do not even have to prepare a deliverable -- just say "on the call, we will go over our framework for X." Always answer the question: if this person responds yes, what do they get in return?
Testing: Change a Whole Sentence, Not a Word
Do not A/B test "Is this worth a chat?" versus "Would you be open next week?" The difference is statistically insignificant. Instead, test a whole chunk of messaging: pain-based value proposition vs. benefit-based value proposition. AI-generated first line vs. no first line. Change something big enough to actually move the needle.
Only Three Things Can Go Wrong
- The campaign needs to be rewritten -- not enough replies
- You are not sending enough Email 1s -- Email 1 is the top performer across all our customer sequences (yes, some people get replies on Email 6, but Email 6 also gets the most spam reports)
- Your inboxes are getting trashed -- bounce rates climbing, reputation dropping
Monitor leading indicators for all three so you catch problems early.
Real Campaign Examples
Clay: Case Study Campaign
Use Clay Agent to find a case study on the prospect's website. First line: "I saw that great case study you had with [company] and how you helped them [result]." Follow-up: "How are you finding more customers like those? You can use Clay's lookalike feature to expand and find more companies exactly like the ones in your case studies." Simple playbook, consistently outperforms more complex campaigns.
Instantly: Creative Ideas Campaign
We have run every kind of targeting for Instantly -- large sales teams, founder-led sales, new VPs of sales, companies without DMARC. The winner after a year and a half: analyze what the company does, send three creative ideas for how they could use Instantly, and ask if they want to start a trial. AI messaging that is extremely relevant to the recipient beats complex signal-based targeting.
E-Commerce Sustainability Plugin
- No segmentation: 1 positive response per 650 contacts
- Clay Agent finds sustainability goals + mention in email: 1 in 250
- Add screenshot of their sustainability page: 1 in 120
Yes, images can lower deliverability. But if the image increases response rate enough to net out positive, send the image. The worst that happens to a domain is spam reports -- and you are already treating domains as disposable.
Sales Tax Compliance
Manually research how many states a prospect collects sales tax in. If they are missing states: "Hey, you're missing these states. We can automate your compliance." If they cover all states: "Hey, you're doing a great job. Is it a lot to handle?" Clay Operator will soon automate this kind of page-by-page research.
The Offer Matters More Than the AI
We ran our own outbound with AI-generated creative ideas emails. Good response rate. Then we added a free test offer -- we will launch a free campaign for you. That blew out any improvement from the AI. The AI was still great, but the offer made it a no-brainer. Always think about your value proposition alongside your personalization strategy.
Key Takeaways
- Throw away burned domains -- do not rehabilitate $12 domains
- Four signals to watch: reply rate, bounce rate, inbox reputation, open tracking (last resort)
- Start at 30 emails/day/inbox, push to 50 if you are getting 2%+ response rates
- Domain aging will matter more -- start buying domains in bulk and letting them age
- Use Clay's Golden ICP framework to layer enrichment and send different messages by match quality
- Tie lead magnets to the call so both sides win
- Test whole chunks of messaging, not individual words
- The offer often matters more than the personalization