Scaling to 10,000 cold emails daily requires 334–400 mailboxes across 112–134 domains, 4–8 week warm-up periods, and daily reputation monitoring to maintain deliverability.
- Never send cold emails from your primary brand domain to protect reputation
- Keep each mailbox volume between 25–50 sends per day for safe scaling
- Scale requires 334–400 mailboxes across 112–134+ domains for 10K daily sends
- Pause immediately if bounce rates exceed 2% or complaints pass 0.1–0.3%
- Verify all lists before sending and maintain 15–20% domains in warm-up rotation
- Monitor Google Postmaster Tools and inbox placement daily to catch issues early
How to Scale Cold Email to 10K Sends/Day Without Getting Banned
Sending 10,000 cold emails a day without bans comes down to one thing: spread risk across many domains and inboxes, then watch reputation every day. I'd plan for 334–400 mailboxes, about 112–134 domains minimum, a 4–8 week warm-up, and a monthly cost near $2,300–$4,200 if I wanted to do this with low risk.
If I had to boil the article down, I'd keep it simple:
- I would never use my main brand domain for cold outreach
- I would set up SPF, DKIM, DMARC, MX, and a custom tracking domain before sending
- I would keep inbox volume low, usually around 25–50 emails per mailbox per day
- I would add capacity with more domains and more inboxes, not by pushing one mailbox harder
- I would verify every list and pause fast if bounces pass 2% or complaints pass 0.1%–0.3%
- I would track placement and reputation with tools like Google Postmaster Tools, MXToolbox, GlockApps, Smartlead, and Instantly
- I would keep 15%–20% of domains in warm-up as backup
Here's the short version: this is not a copy problem first. It's a setup, pacing, and reputation problem. If I get the infrastructure, warm-up, throttling, list hygiene, and monitoring right, I have a much better shot at hitting scale without burning domains.
| Area | What I'd do |
|---|---|
| Domain setup | Use secondary domains only |
| Email auth | Add SPF, DKIM, DMARC, MX |
| Volume | Keep each inbox around 25–50/day |
| Scale target | Use 334–400 mailboxes for 10,000/day |
| Warm-up | Start slow for 4–8 weeks |
| Risk control | Pause on 2%+ bounces or 0.1%–0.3% complaints |
| Monitoring | Check reputation and placement every day |
That's the whole playbook in plain English: build the system first, send slow, verify data, and cut volume the second performance slips.
how I scaled from 100 to 10,000 cold emails per day
1. Build your cold email infrastructure before sending anything
Before you touch copy or upload leads, get your setup done first.
Use separate sending domains to protect your main brand domain
Your primary domain - the one linked to your website, transactional email, and internal sales flows - should never handle cold outreach. If a secondary sending domain gets blacklisted, the damage stays boxed in.
For naming, use patterns like getbrand.com, brandhq.com, trybrand.com, or brandapp.io. Put each secondary domain on a simple branded site, not a blank page. Roll out domains slowly so you don't trip pattern detection at Google and Microsoft.
Once those domains are live, the next step is spreading sends across inboxes so no single mailbox gets too hot.
Set up SPF, DKIM, DMARC, and a custom tracking domain
Every domain needs a full DNS auth stack before even one mailbox goes live.
| Record | Purpose | Example Value (Google Workspace) |
|---|---|---|
| SPF | Authorizes sending servers | v=spf1 include:_spf.google.com ~all |
| DKIM | Cryptographic signature per email | 2048-bit generated key |
| DMARC | Failure handling policy | v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com |
| MX | Mail routing (required even for send-only) | aspmx.l.google.com |
| CNAME | Custom tracking domain | track.yourdomain.com → ESP endpoint |
Start DMARC at p=none so you can collect reporting data without blocking mail. Then move to p=quarantine once alignment looks clean.
Use a 2048-bit DKIM key. That's the current standard, and it gives you stronger authentication than older 1024-bit keys. The custom tracking CNAME matters too. Shared tracking links from platforms like click.instantly.ai often get flagged by spam filters, while a branded subdomain keeps your reputation separate.
Run every domain through MXToolbox to check DNS propagation before you connect any mailbox to a sending platform. Only connect mailboxes after authentication passes cleanly.
Provision mailboxes with tools built for scale
Use Google Workspace or Microsoft 365 for premium domains. For scaled provisioning, use Maildoso, Mailforge, or Mailreef.
If you want automated inbox provisioning, Icemail.ai is the premium option for fast, automated inbox provisioning, while zapmail.ai is the standard self-serve pick.
Then connect the mailboxes to Smartlead or Instantly and turn on inbox rotation. That rotation layer is what keeps scale from turning into a ban.
2. Distribute your sending volume across domains and mailboxes
Once your setup is live, the next step is simple: grow by adding capacity, not by pushing one inbox too hard. DNS and mailboxes may be ready, but volume distribution becomes the next bottleneck fast.
Set safe daily sending limits per mailbox and per domain
Think of each mailbox as having a hard ceiling. For warmed Google Workspace inboxes, stay around 25–30 sends per day. For Microsoft 365, keep it at 30–50 per day.
Once you go past 50 sends/day, deliverability risk climbs fast. Yes, providers may allow more. But provider limits are not safe cold email targets.
Calculate how many inboxes and domains you need for 10,000 sends per day
Use the table below to size your account pool, and follow the formula outlined in how many email accounts you need for outreach to ensure you're properly scaling without overloading individual mailboxes.
| Daily Volume Target | Mailboxes Needed (at 25–30/day) | Domains Needed (at 3 mailboxes/domain) |
|---|---|---|
| 1,000 | 34–40 | 12–14 |
| 2,500 | 84–100 | 28–34 |
| 5,000 | 167–200 | 56–67 |
| 10,000 | 334–400 | 112–134 |
If you're aiming for a real 10,000/day setup, don't stop at the bare minimum of 112–134 domains. Plan for 150+ domains instead.
Why the buffer? Because things rarely go perfectly. Some domains will need a break. Some will slip. Some will need to be rotated out while others take over. That extra room helps you keep sending without jamming up the whole program.
For that domain footprint, expect to spend about $125–$188 per month.
Once the pool is big enough, the next call isn't just how many accounts you have. It's when to rotate domains.
Know when to add more domains instead of more inboxes
Mailbox saturation happens when one inbox is doing too much. Domain saturation is different. That's when the domain itself starts losing reputation.
And here's the trap: adding another inbox on the same domain doesn't fix it. It usually makes it worse.
Use these thresholds as your line in the sand:
- If bounces go above 2%
- If spam complaints go above 0.3%
At that point, move the domain into a retired pool and swap in a pre-warmed replacement.
Domain rotation isn't just about volume. It's a reputation move. You're not only making room for more sends - you're protecting the domains that still have room to perform.
Add new domains slowly, around 5–10 per week. Jumping from 3 to 30 all at once can set off spike alerts with providers.
After distribution comes ramp speed: warm the inboxes before pushing volume higher.
3. Warm up inboxes and throttle sending volume
Once your domains and inboxes are spread out, don't rush into cold outreach. Start with warm-up first. The goal is simple: build sender reputation before live campaigns start. And even after you go live, keep a small amount of warm-up traffic running in the background.
Follow a staged warm-up schedule before going live
Set aside at least 4 weeks to warm up new Google Workspace domains or inboxes. For Microsoft 365, plan on more time. Those accounts usually need around 6–8 weeks before you push toward full cold outreach volume.
| Week | Cold Sends/Day | Warm Sends/Day | Total Daily Volume |
|---|---|---|---|
| 1 | 5 | 10 | 15 |
| 2 | 10 | 10 | 20 |
| 3 | 15 | 8 | 23 |
| 4 | 20 | 8 | 28 |
| 5 | 25 | 7 | 32 |
| 6 | 30 | 7 | 37 |
| 7 | 35 | 5 | 40 |
| 8+ | 35–40 | 5 | 40–45 |
After launch, keep warm-up running at 5–10 emails/day. It's a small step, but it helps preserve the reputation signals you've built while outreach is live.
Use throttling, randomized intervals, and provider-friendly sending patterns
Volume isn't the only thing that matters. Timing matters too.
A giant batch sent at 9:00 AM screams automation. Mail providers notice that fast. Instead, spread sends across normal business hours and add randomized delays between messages. That makes activity look more natural.
You should also rotate subject lines and body copy. If too many messages look almost the same across multiple mailboxes, providers can fingerprint that pattern and filter it.
Pause on warning signals before accounts get burned
Keep a close eye on early signs of reputation drop. If you wait too long, the account can get cooked.
| Warning Signal | Threshold | Required Action |
|---|---|---|
| Spam Complaint Rate | ≥ 0.3% | Rest for 7 days; review copy and list |
| Bounce Rate | ≥ 2% | Pause 48 hours; re-verify data; resume at half volume |
| Google Postmaster Reputation | "Bad" | Retire domain if no recovery within 14 days |
| Gmail Placement Test | < 80% | Pause production sends; run content checks and re-warm |
If your sending logs show deferred messages or temporary soft blocks, stop for 24 hours. Then come back at 75% volume. Don't keep pushing through it. Wait until the issue clears.
4. Control list quality and sending load
Once your inboxes are warm, the next place things fall apart is list quality.
At 10,000 sends per day, bad data can wreck deliverability fast. And in plain terms, list quality decides whether your warmed setup can handle scale or starts to crack.
Send only to verified lists and remove risky contacts before they enter a sequence
Run every list through a verification service like NeverBounce, ZeroBounce, or EmailListVerify before any contact enters a sequence.
Cut risky contacts early. That means removing generic addresses like info@ and sales@. You should also treat catch-all domains as high-risk, because they can hide bad addresses and make your numbers look better than they are right up until bounce rates jump.
Verify every list before sending. Use the same bounce thresholds from Section 3.
Set up a global suppression list that automatically blocks anyone who has already bounced, unsubscribed, or filed a complaint. Manual cleanup sounds fine on paper, but it almost always misses people.
Segment by intent, source, and sending load
Segment leads by source, intent, and sending load so you can contain risk.
Higher-intent leads should go through your best-performing inboxes. These are people showing clear signals, like new hires, funding announcements, or pricing page revisits. Lower-intent leads can go to secondary inboxes that aren't handling your most important campaigns.
If you run an agency, never pool client lists into the same mailbox group. One client's bad list can hurt the reputation of inboxes used by every other client. It's like letting one leaky pipe flood the whole building. Keep separate workspaces and separate domain pools for each client so damage stays contained if something goes wrong.
After segmentation, manage launch timing so several campaigns don't spike at once.
Stagger campaigns inside Smartlead or Instantly

Spread campaign launches 7–10 days apart across different domain groups. That helps you avoid a sudden wave of new cold-sending domains going live at the same time, which email providers notice fast.
Inside Smartlead or Instantly, use round-robin inbox rotation so each campaign's load is spread across the full mailbox pool. Cap each inbox at 30–50 cold emails per day for warmed inboxes, and start new domains much lower.
Use these thresholds to spot load issues early.
| Metric | Healthy Threshold | Action Required |
|---|---|---|
| Bounce Rate | < 2% | Above 3% = pause and re-verify list |
| Spam Complaints | < 0.08% | Above 0.1% = ISP compliance risk |
5. Monitor inbox placement and fix problems before deliverability breaks
Once volume, warm-up, and list quality are under control, monitoring becomes your last line of defense against reputation decay.
At 10,000 sends per day, reputation can slip fast. Check performance daily, or you can lose weeks of deliverability before reply rates start to drop.
Track domain reputation with Google Postmaster Tools and MXToolbox

Start with provider-level reputation. Then verify where messages are landing.
Google Postmaster Tools should be your main signal for Gmail reputation. Review it every day for spam complaint rates and domain reputation status. If a domain drops from "High" to "Medium," reduce sending volume right away. If it falls to "Low," stop sending from that domain completely and move it to warmup-only activity for 60–90 days before you test it again.
For Microsoft/Outlook recipients, use Microsoft SNDS to watch IP reputation and spam-trap hits on their own. Gmail and Outlook don't react the same way, so treat them as separate sub-pools. Also, check every sending domain each week in MXToolbox for blacklist listings. If you find one, fix it before sending starts again.
Watch inbox placement, bounces, and spam complaints closely
Reputation tools show how providers view your domain. They do not show where emails actually land.
To check that, use seed list tools like GlockApps or the built-in placement testing in Instantly. Run these checks on a recurring schedule. If primary inbox placement drops below 80% for Gmail or 70% for Microsoft, pause production on that domain. Then review content and spintax before turning it back on.
One bad day isn't the best warning sign. Trends matter more.
A 20–25% week-over-week decline in open rates - with no changes to subject lines or copy - almost always points to a placement problem, not a messaging problem, which is why understanding how poor sender reputation impacts inbox placement is critical for diagnosing these issues.
| Metric | Check Frequency | Action Threshold | Tool |
|---|---|---|---|
| Spam Complaints | Daily | > 0.1%: Cut volume immediately | Google Postmaster |
| Domain Reputation | Weekly | Below "High": Reduce volume | Google Postmaster |
| Blacklist Status | Weekly | Any listing: Remediate | MXToolbox |
| Inbox Placement | Weekly | Primary < 80%: Pause production | GlockApps / Instantly |
Score each inbox this way:
- 50% placement
- 30% bounce-free rate
- 20% complaint-free rate
Any inbox that scores below 85% should move into a cooldown phase automatically. That keeps one weak inbox from pulling down the rest of the pool.
Conclusion: The safe-scale checklist for 10,000 sends per day
With monitoring in place, the system can take a hit without falling apart.
Scaling cold email to 10,000 sends per day is an infrastructure problem, not just a volume problem. The teams that keep it working over the long run aren't squeezing more sends out of each mailbox. They're running more mailboxes, with more care, following the same principles outlined in scaling cold email with multiple mailboxes.
The core steps are simple:
- Separate domains
- Full authentication
- Low-volume inboxes
- Staged warm-up
- List verification
- Staggered launches
- Daily monitoring
Keep 15–20% of domains in warmup as replacements.
The goal is stable inbox placement over time. That only happens when the system is built to isolate problems, rotate capacity, and react fast when performance starts to slip.
Frequently asked questions
How many mailboxes and domains do I actually need to safely send 10,000 cold emails per day?+
You need 334–400 mailboxes spread across 112–134 domains minimum, though the article recommends planning for 150+ domains to account for rotation and potential issues. This assumes each mailbox sends 25–30 emails per day for Google Workspace, staying well below provider limits to maintain deliverability.
How long does the warm-up process take before I can start sending at full volume?+
Google Workspace domains need at least 4 weeks of warm-up, while Microsoft 365 accounts typically require 6–8 weeks. The warm-up follows a staged schedule starting at 5 cold sends per day in week one and gradually increasing to 35–40 sends by week eight, with ongoing warm-up traffic of 5–10 emails per day even after going live.
What bounce rate and spam complaint thresholds should trigger me to pause sending?+
Pause sending immediately if your bounce rate reaches 2% or higher, or if spam complaints exceed 0.1%–0.3%. When bounces hit 2%, pause for 48 hours, re-verify your list, and resume at half volume. For spam complaints at 0.3% or above, rest the domain for 7 days and review both your copy and list quality.
Why can't I just use my main company domain for cold email outreach?+
Your primary domain should never handle cold outreach because if it gets blacklisted, it damages all email tied to that domain including transactional emails, internal communications, and legitimate sales correspondence. Using separate sending domains like 'getbrand.com' or 'trybrand.com' keeps damage contained to secondary domains if deliverability issues occur.
What monthly cost should I expect for a 10,000 sends per day cold email infrastructure?+
The article estimates monthly costs between $2,300–$4,200 for the full infrastructure needed to safely send 10,000 emails daily. This includes domain registration costs of approximately $125–$188 per month for 150+ domains, plus mailbox provisioning and management tools like Google Workspace or Microsoft 365 subscriptions.
How do I know when to add more domains versus adding more mailboxes to existing domains?+
Add new domains instead of more mailboxes when existing domains show reputation problems: bounces above 2%, spam complaints above 0.3%, or declining Google Postmaster reputation scores. Adding another mailbox to a saturated domain makes the problem worse rather than solving it, because the issue is domain-level reputation, not just mailbox capacity.
What specific DNS records must be configured before sending any cold emails?+
Every sending domain requires SPF, DKIM (using 2048-bit keys), DMARC (starting at p=none policy), MX records, and a custom tracking domain CNAME. Start DMARC at 'p=none' to collect reporting data, then move to 'p=quarantine' once alignment is verified. All records should be verified through MXToolbox before connecting mailboxes to sending platforms.
