Email IP and Domain Warmup Guide
Home Blog Email Warmup Guide

How to Warm Up a New Email IP and Domain: My 6-Week Production Schedule

The exact day-by-day warmup plan I use for every new IP and domain — with PowerMTA config, monitoring checkpoints, and the mistakes that got me blacklisted.

Akshay Bangar
Written By
Akshay Bangar
Backend Engineer & Email Infrastructure Specialist

I build and manage high-volume email infrastructure using PowerMTA and MailWizz. This guide shares the exact warmup process I follow every time I bring a new IP or domain into production.

Every email guide tells you to "warm up your IPs." Almost none of them tell you exactly how. They say "start slow and gradually increase" — but how slow? How gradual? What does "gradually" look like in an actual PowerMTA config file?

I've warmed up dozens of IPs and domains for high-volume email infrastructure. Some went perfectly. Some got me blacklisted within 72 hours because I moved too fast or made a rookie mistake. This guide is the result of all those experiments — the exact 6-week schedule I now follow for every new IP and domain, with real config snippets and the monitoring checkpoints I use to know when it's safe to increase volume.

Prerequisites: This guide assumes you already have a working email server (PowerMTA, Postfix, or similar) with proper DNS authentication configured. If you haven't set up your server yet, start with my PowerMTA Configuration Guide first, then come back here.

1. What Is Email Warmup and Why It Matters in 2026

Email warmup is the process of gradually increasing the volume of emails sent from a new IP address or domain to build a positive sender reputation with ISPs (Internet Service Providers) like Gmail, Yahoo, and Outlook.

Why does this matter? Every IP address starts with zero reputation. ISPs don't know if you're a legitimate business or a spammer. They make this decision based on your sending behavior during the first few weeks. If you blast 50,000 emails from a brand-new IP on day one, the answer is obvious to them: you're a spammer.

In 2026, warmup is more critical than ever because:

  • Google and Yahoo enforce strict sender requirements — bulk senders (5,000+ emails/day) must have SPF, DKIM, DMARC alignment, one-click unsubscribe, and spam complaint rates below 0.1%
  • AI-powered spam filters now analyze sending patterns, engagement signals, and volume ramps in real-time — not just content
  • Microsoft Outlook has become significantly stricter, throttling or blocking senders with no established reputation
  • Shared blacklists propagate faster — one mistake can get you listed on 10+ DNSBLs within hours

2. IP Warmup vs Domain Warmup — What's the Difference?

This is a distinction that most guides completely ignore, and it's cost me deliverability more than once. There are two separate reputations you need to build:

Aspect IP Warmup Domain Warmup
What it builds Reputation for your sending IP address Reputation for your From/MAIL FROM domain
Who tracks it ISPs (Gmail, Yahoo, Outlook) at the network level ISPs at the domain/DKIM level + Google Postmaster Tools
When it applies New dedicated IP or IP that hasn't sent in 30+ days New domain or domain with no sending history
Failure symptom 421 temporary blocks, "too many connections" Emails land in spam despite good IP reputation
Recovery time 1-4 weeks (depending on blacklist severity) 2-8 weeks (domain reputation is stickier)

The critical insight: A warmed IP with a cold domain will still land in spam. A warmed domain on a cold IP will get throttled. You must warm both simultaneously. In my setup, I always register new sending domains at least 2-4 weeks before I even start sending from them — this gives the domain age, which ISPs factor into reputation scoring.

3. Prerequisites Before You Start Warming Up

Before you send your first warmup email, every one of these must be in place. Missing even one will undermine your entire warmup:

DNS Authentication (Non-Negotiable)

  • SPF Record: Lists your sending IP as authorized for your domain. Keep it under the 10 DNS lookup limit.
  • DKIM Signing: 2048-bit RSA key, configured in PowerMTA's domain directive. See my DKIM setup guide.
  • DMARC Policy: Start with p=none during warmup to collect data. Move to p=quarantine once you're confident all legitimate mail is authenticated.

Infrastructure Checklist

  • Reverse DNS (PTR): Every sending IP must have a PTR record pointing to your mail hostname. Without this, Gmail and Yahoo reject at the SMTP handshake.
  • Dedicated warmup vMTA: In PowerMTA, I create a separate Virtual MTA specifically for warmup traffic with conservative rate limits. See my vMTA config.
  • Clean seed list: Your first warmup emails should go to addresses you know are valid — team members, personal accounts, engaged subscribers. Never start warmup with a cold list.
  • Bounce processing: Your bounce handling must be active from day one. A single unprocessed hard bounce during warmup is far more damaging than one during normal production.
Domain age matters. I register new sending domains at least 2-4 weeks before starting warmup. A brand-new domain (registered yesterday) sending emails immediately is a strong spam signal. Give the domain time to "age" with DNS records active before your first send.

4. My 6-Week IP Warmup Schedule

This is the exact schedule I follow for every new dedicated IP. The daily volumes assume you're sending to a mix of ISPs (Gmail, Yahoo, Outlook, corporate). If you're sending primarily to one ISP (like Gmail), reduce these numbers by 30-40%.

Day Daily Volume Max/Hour Target Recipients Checkpoint
Day 1 20 5 Internal team, personal accounts Verify inbox placement
Day 2 30 8 Team + close contacts Check for bounces
Day 3 50 12 Engaged subscribers (opened in last 30 days) Monitor spam folder placement
Day 4-5 75 18 Engaged subscribers Check Google Postmaster Tools
Day 6-7 100 25 Engaged subscribers ✅ Week 1 review: bounce <1%, complaints = 0
Day 8-10 200 50 Active subscribers (opened in last 90 days) Monitor delivery rate
Day 11-14 400 100 Active subscribers ✅ Week 2 review: delivery rate >95%
Day 15-18 800 200 Broader subscriber base Monitor per-ISP delivery rates
Day 19-21 1,500 350 Full subscriber list (verified) ✅ Week 3 review: Postmaster "Medium" or better
Day 22-28 3,000 700 Full list + begin cold outreach (small batches) ✅ Week 4 review: no blacklist appearances
Day 29-35 5,000 1,200 Production cold outreach ✅ Week 5 review: Postmaster "High" reputation
Day 36-42 8,000-10,000 2,000 Full production volume ✅ Week 6: IP is fully warmed
The golden rule: Never increase volume if your metrics are declining. If bounce rate exceeds 2% or you see spam complaints above 0.1% at any checkpoint, hold at the current volume (or reduce by 50%) until metrics stabilize. Patience during warmup saves you weeks of recovery later.

5. Warmup Progression Phases

Here's how I think about the warmup process — not as a linear schedule, but as four distinct phases, each with a specific goal and graduation criteria:

flowchart LR A["Phase 1: Foundation
Days 1-7
20-100/day"] -->|"Bounce <1%
Zero complaints"| B["Phase 2: Ramp
Days 8-21
200-1,500/day"] B -->|"Delivery >95%
Postmaster: Medium"| C["Phase 3: Scale
Days 22-35
3,000-5,000/day"] C -->|"No blacklists
Postmaster: High"| D["Phase 4: Production
Days 36+
8,000-10,000/day"] style A fill:#1a1a2e,stroke:#6366f1,color:#f1f5f9 style B fill:#1a1a2e,stroke:#818cf8,color:#f1f5f9 style C fill:#1a1a2e,stroke:#22c55e,color:#f1f5f9 style D fill:#1a1a2e,stroke:#f59e0b,color:#f1f5f9

Phase 1 — Foundation (Days 1-7): The goal is simply to prove you're a legitimate sender. Send only to addresses you control or that you know will engage. Every open, reply, and "not spam" click during this phase trains ISP filters that your IP is trustworthy.

Phase 2 — Ramp (Days 8-21): Gradually expand to your broader subscriber base. This is where per-ISP throttling becomes critical — Gmail has different tolerance thresholds than Yahoo. Monitor delivery rates per ISP, not just overall.

Phase 3 — Scale (Days 22-35): You can begin introducing cold outreach in small batches alongside your warm traffic. The warm traffic acts as a "reputation anchor" — its high engagement signals offset the lower engagement of cold emails.

Phase 4 — Production (Days 36+): Your IP should now have a "High" reputation in Google Postmaster Tools. You can operate at full production volume, but continue monitoring daily. Reputation can drop at any time if list hygiene slips.

6. How I Configure Warmup in PowerMTA

Here's the actual PowerMTA configuration I use for a warmup vMTA. The key is the max-msg-rate directive — I manually update it as I progress through the warmup schedule:

# /etc/pmta/config — Warmup vMTA Configuration

# ============================================
# vMTA: Warmup (New IP being warmed)
# ============================================
<virtual-mta mta-warmup>
    smtp-source-host 192.168.1.12 mail-wu.yourdomain.com

    # WEEK 1: Foundation phase
    <domain *>
        max-smtp-out          3         # Very few simultaneous connections
        max-msg-per-connection 5
        max-msg-rate           5/h      # Start at 5 emails per hour
        smtp-greeting-delay    1s       # Slow, natural-looking delivery
        retry-after            30m
        bounce-after           3d
        max-errors-per-connection 2
    </domain>

    # Gmail — Extra conservative during warmup
    <domain gmail.com>
        max-smtp-out          2
        max-msg-per-connection 3
        max-msg-rate           2/h      # Only 2/hour to Gmail initially
    </domain>

    # Outlook — Also very conservative
    <domain outlook.com>
        max-smtp-out          2
        max-msg-per-connection 3
        max-msg-rate           2/h
    </domain>
</virtual-mta>

As I progress through each phase, I update the max-msg-rate:

Phase Default max-msg-rate Gmail max-msg-rate max-smtp-out
Week 1 5/h 2/h 3
Week 2 25/h 10/h 5
Week 3 100/h 40/h 10
Week 4 350/h 120/h 15
Week 5-6 1,000/h 200/h 20
Production 2,000/h+ 200/h (cap) 20

After each config change, I reload PowerMTA without restarting to apply the new rates:

# Apply config changes without dropping active connections
sudo pmta reload

# Verify the new rates are active
pmta show vmtas
Why I keep Gmail capped at 200/hour even in production: Gmail is the strictest ISP when it comes to rate limiting. Even with a fully warmed IP, sending more than 200/hour to Gmail consistently triggers their 421 temporary blocks. I've tested higher rates and the tradeoff is never worth it — you lose more time waiting for blocks to clear than you gain from the higher throughput.

7. Domain Warmup: The Strategy Most Guides Miss

Most warmup guides focus exclusively on IP warmup. But in 2026, domain reputation is equally important — and in some cases, more important. Google Postmaster Tools tracks reputation at the domain level, not the IP level.

My Domain Warmup Strategy

  1. Register the domain 2-4 weeks early. Domain age is a ranking factor. A 30-day-old domain with active DNS records is far more trusted than one registered yesterday.
  2. Set up DNS immediately. As soon as you register, add SPF, DKIM (publish the public key), and DMARC records. Even before you send a single email, having these records active starts building your domain's identity.
  3. Use a "cousin" domain. Never use your primary business domain for cold outreach. Register a related domain (e.g., getbrand.com instead of brand.com). If the outreach domain gets blacklisted, your main domain stays clean.
  4. Start domain warmup alongside IP warmup. Your first warmup emails should use the new domain as the From address, sent through the new IP. This warms both simultaneously.
  5. Monitor domain reputation separately. Use Google Postmaster Tools to track your domain's reputation independently from your IP reputation. They can diverge — a strong IP with a weak domain still lands in spam.

Domain Types to Avoid for Cold Outreach

Domain TLD Deliverability Recommendation
.com Best ✅ Always preferred for cold outreach
.io / .co Good ✅ Acceptable for tech audiences
.net / .org Good ✅ Acceptable but less common
.xyz / .info Poor ❌ High spam association — avoid
.click / .top / .work Very Poor ❌ Blacklisted by many ISPs by default

8. How I Monitor Warmup Progress

During warmup, I check these tools and metrics every single day. The moment any metric goes red, I pause and investigate before sending another email.

Google Postmaster Tools (Primary)

This is the single most important monitoring tool during warmup. Here's what I look for:

  • Domain Reputation: Should progress from "N/A" → "Low" → "Medium" → "High" over the 6-week period. If it drops from Medium to Low, immediately reduce volume by 50%.
  • Spam Rate: Must stay below 0.1%. If it hits 0.3%, stop all campaigns and investigate.
  • Authentication: SPF, DKIM, and DMARC pass rates should all be 100%. Any failure means a DNS misconfiguration — fix immediately.
  • Delivery Errors: Track the rate of "Rate limited" and "Suspected spam" errors. A spike during warmup means you're increasing volume too fast.

Key Metrics I Track Daily During Warmup

>95% Target delivery rate
<0.1% Spam complaint threshold
<2% Bounce rate limit

PowerMTA Queue Monitoring

# Check delivery stats per domain — critical during warmup
pmta show topdomains --sort=connections

# Monitor deferred messages (sign of throttling)
pmta show queues | grep -i defer

# Watch for 421/550 blocks in real-time
tail -f /var/log/pmta/delivery.log | grep -E "421|550|blocked|spam"

External Monitoring Tools

  • MXToolbox Blacklist Check: Run daily during warmup. Getting listed on even one DNSBL during warmup can cascade into bigger problems. If you do get blacklisted, here's my recovery guide.
  • Mail-Tester.com: Send a test email before each volume increase to verify your spam score hasn't degraded.
  • GlockApps / Folderly: If you have the budget, these show actual inbox placement rates across Gmail, Yahoo, and Outlook — not just delivery confirmations.

9. 5 Warmup Mistakes That Got Me Blacklisted

Every one of these is a mistake I made in production. Learning from these cost me weeks of recovery time and, in one case, an entire IP that I had to abandon:

  1. The "I'll just send 5,000 on day one" mistake. Early in my career, I thought warmup was optional. I set up a fresh IP, loaded a campaign of 5,000 emails, and hit send. Within 4 hours, the IP was listed on Spamhaus ZEN and three other DNSBLs. Gmail returned 550 permanent blocks. The IP was effectively dead — I had to get a new one and start over. Lesson: There are no shortcuts. Follow the schedule.

  2. Warming up with a purchased email list. I used a "verified" list from a data broker for warmup because I didn't have enough engaged subscribers. The list was 60% invalid addresses, and my bounce rate hit 15% within the first 200 emails. Google flagged the domain as a spam source within 48 hours. Lesson: Only warm up with addresses you know are valid — team accounts, personal emails, confirmed subscribers.

  3. No per-domain throttling during warmup. I set a global rate limit of 100/hour but didn't configure domain-specific rules. Gmail received 60% of my warmup traffic (because most of my test list was Gmail). That's 60 emails/hour to Gmail from a brand-new IP — way too aggressive. Gmail throttled me with 421 blocks, and my domain reputation dropped to "Low." Lesson: Always configure per-domain limits, especially for Gmail. I now cap Gmail at 2/hour during Week 1.

  4. Ignoring soft bounces. I was processing hard bounces correctly but letting soft bounces (4xx) retry indefinitely. After 5 days of retrying the same deferred messages, my queue built up to 3,000+ messages. When they finally delivered, it created a volume spike that triggered ISP alarms. Lesson: Set bounce-after 3d during warmup. Let soft bounces fail after 3 days instead of the default 4.5 days.

  5. Skipping weekend monitoring. I was diligently checking metrics on weekdays but assumed things would be fine over the weekend. On a Saturday, a batch of warmup emails hit a spam trap that I had missed during list verification. By Monday morning, the IP was on two blacklists and my inbox placement had dropped from 95% to 40%. Lesson: During the 6-week warmup, monitoring doesn't take weekends off. I now set up automated MXToolbox alerts that notify me immediately of any new blacklist appearance.

10. When to Know Your IP Is Fully Warmed

Don't guess — use objective criteria. I consider an IP "fully warmed" when ALL of these conditions are met simultaneously for at least 7 consecutive days:

Metric Graduation Threshold Where to Check
Google Postmaster Domain Reputation "High" Google Postmaster Tools
Overall delivery rate >97% PowerMTA accounting logs
Spam complaint rate <0.08% Google Postmaster Tools
Bounce rate <1.5% PowerMTA accounting logs
Blacklist appearances 0 active listings MXToolbox Blacklist Check
Gmail inbox placement >90% inbox (not spam/promotions) Seed testing or GlockApps
Consecutive days at target volume >7 days Your sending logs

Once all criteria are met, I migrate the IP from the warmup vMTA to its production vMTA configuration with full production rate limits. But even after graduation, I never stop monitoring — reputation can drop at any time due to list quality issues, content changes, or ISP policy updates.

Frequently Asked Questions

How long does email IP warmup take?

A proper email IP warmup takes 4 to 6 weeks for most use cases. During this period, you gradually increase your daily sending volume from 20-50 emails per day to your target production volume. Rushing this process can permanently damage your IP reputation and lead to blacklisting that takes weeks to recover from.

How many emails per day should I send from a new IP?

Start with 20 to 50 emails per day in Week 1, targeting only your most engaged recipients. Increase by roughly 30-50% every 2-3 days. By Week 3, you should be at 200-500 per day. By Week 6, you can reach 5,000-10,000 per day depending on your list quality and engagement rates. Never increase volume if your bounce rate exceeds 2% or spam complaints exceed 0.1%.

Can I skip the email warmup process?

No. Skipping warmup is the fastest way to get your IP blacklisted. ISPs like Gmail, Yahoo, and Outlook track the reputation of every sending IP. A brand-new IP has zero reputation — which ISPs treat as suspicious. If you send thousands of emails from an IP with no sending history, ISPs will assume you are a spammer and block your traffic immediately.

What is the difference between IP warmup and domain warmup?

IP warmup builds reputation for a specific sending IP address with ISPs. Domain warmup builds reputation for your sending domain (the From address). Both are necessary because ISPs evaluate reputation at both levels. A warmed IP with a cold domain will still face deliverability issues. Always warm both simultaneously.

Do I need to warm up a Google Workspace or Microsoft 365 email?

Yes, but the process is shorter. With shared infrastructure like Google Workspace, the IP reputation is partially inherited from Google's pool. However, your domain reputation still starts at zero. Start with 10-20 emails per day and gradually increase. The warmup period is typically 2-3 weeks instead of 6.

What happens if my email warmup fails?

If warmup fails, your IP gets temporarily or permanently blocked by major ISPs. Signs of failure include delivery rates below 80%, emails landing in spam, 421/550 bounce codes mentioning "blocked," and "Bad" reputation in Google Postmaster Tools. Recovery requires pausing all sends, waiting 48-72 hours, and restarting warmup from scratch at lower volumes.

Can I warm up multiple IPs at the same time?

Yes, but each IP needs its own independent warmup schedule. Do not split your warmup traffic across multiple IPs — each IP must individually build its own reputation. In PowerMTA, I configure separate Virtual MTAs for each IP with its own max-msg-rate progression.

Should I use automated warmup tools or warm up manually?

Both have their place. Automated tools like Instantly or Warmbox simulate engagement by sending emails between accounts in a warm-up pool — useful for maintaining baseline domain reputation. For dedicated IPs on PowerMTA, I prefer manual warmup with real engaged recipients. Genuine engagement signals (opens, replies) build stronger reputation faster than synthetic warmup traffic.

Conclusion

Email warmup isn't glamorous, and it requires patience. But it's the difference between an IP that consistently delivers to the inbox and one that gets blacklisted within the first week. The 6-week schedule in this guide is what I follow for every new IP I bring into production — no exceptions, no shortcuts.

The key principles: start conservatively (20/day, not 200), warm both IP and domain simultaneously, configure per-ISP throttling from day one, monitor daily with Google Postmaster Tools, and never increase volume when metrics are declining.

If you want this entire warmup process handled for you — server setup, DNS configuration, warmup scheduling, and ongoing monitoring — check out my Email Infrastructure Setup services.