Warming up a new sending IP: a realistic 30-day schedule

The first thing every email sender learns, often the hard way, is that a brand-new IP address is treated as guilty until proven innocent. You can have perfect SPF, DKIM, and DMARC records, a squeaky-clean list, and compliant content, but if your sending IP has no history, the big providers will throttle, defer, or flat-out reject your mail. The fix is not technical configuration alone; it is a deliberate, gradual ip warmup schedule email that builds reputation over time. This article gives you a realistic 30-day ramp, the commands to set it up, and the operational logic behind every step.
Why a new IP must be warmed up
Internet providers (ISPs) and mailbox providers such as Gmail, Outlook, and Yahoo maintain a reputation score for every sending IP. A fresh IP with no track record has a neutral score, which is effectively a low score because the default posture is skepticism. If you send 50,000 emails from a cold IP on day one, the providers see a sudden burst from an unknown source and flag it as spam. The volume looks like a hijacked machine or a spam campaign, not a legitimate sender onboarding a new address.
Warming up solves this by starting at a low volume and doubling or increasing gradually. Over the 30-day window, each mailbox provider records that the IP sends increasing amounts of mail without generating complaints or bounces. After 30 days, the IP carries a positive history and the throttling is removed.
预热新 IP 的 30 天计划,可避免被邮箱服务商误判为垃圾邮件。
A 30-day IP warmup schedule prevents mailbox providers from mistaking your traffic for spam.
Prerequisites before you start sending
Before the first email leaves your new IP, the surrounding infrastructure must be in place. These are not optional.
- rDNS (PTR record): The IP must have a reverse DNS record pointing to a domain that resolves forward. Example:
mail.yourdomain.com. Without it, many providers reject outright. - SPF record: Publish a TXT record in your DNS that lists the IP as an authorised sender for your domain.
- DKIM signing: Sign every outgoing message with a DKIM key and publish the public key as a TXT record.
- DMARC policy: Set a
p=nonepolicy initially, monitor reports, then move top=quarantineorp=rejectonce you are confident. - Feedback loops: Register for abuse feedback loops (FBLs) with major providers (Comcast, Yahoo, Outlook) so you know when a recipient marks your mail as spam.
- A clean list: Only send to recipients who have explicitly opted in. Never warm an IP with purchased, scraped, or old unengaged addresses, this guarantees blacklisting.
Step 1, Set up rDNS and authentication
Log into your VPS control panel and set the rDNS (PTR) for your new IPv4. The value must match the hostname your mail server announces in the EHLO/HELO handshake. On a typical Linux VPS running Postfix or Exim, the hostname is set in /etc/mailname and /etc/hosts.
# On the VPS itself, check the current hostname
hostname -f
If it does not match the rDNS you configured, update /etc/hosts so the first entry after localhost is:
203.0.113.10 mail.yourdomain.com mail
Then restart the mail server and verify with a tool such as dig -x 203.0.113.10. The PTR record must return the same hostname.
For DKIM, generate a key pair using opendkim-genkey or your MTA's built-in tool, publish the public key as a TXT record, and test with:
opendkim-testkey -d yourdomain.com -s default -vvv
This should return key OK.
Step 2, The 30-day volume schedule (the core table)
Below is a conservative schedule that works for a new IP sending transactional or permission-based marketing mail. Do not exceed these per-day volumes. If your list is smaller, cap at your list size for that day, do not artificially inflate to match the table.
| Day Range | Daily Volume | Cumulative | Notes |
|---|---|---|---|
| 1-3 | 200 | 600 | Your most engaged recipients only. Send only to users who opened in the last 30 days. |
| 4-6 | 500 | 2,100 | Expand to recipients active in the last 60 days. |
| 7-9 | 1,000 | 5,100 | Now include moderately engaged users. |
| 10-12 | 2,000 | 11,100 | All engaged users. Monitor bounce and complaint rates daily. |
| 13-15 | 4,000 | 23,100 | Increase gradually. If bounce rate exceeds 3%, pause and clean the list. |
| 16-18 | 8,000 | 47,100 | Full list now, provided complaint rate remains under 0.1%. |
| 19-21 | 12,000 | 83,100 | Continue monitoring. Watch for deferred (4xx) responses, they signal throttling. |
| 22-24 | 15,000 | 128,100 | If a provider starts deferring, hold at this volume for three extra days. |
| 25-27 | 20,000 | 188,100 | Approaching full capacity for most small-to-medium senders. |
| 28-30 | 25,000 | 263,100 | At this point the IP should have a positive reputation with all major providers. |
If your maximum daily volume is lower than 25,000, stop when you reach your ceiling. The schedule already ends on day 30; you simply do not increase past your limit. If you plan to send more than 25,000/day, extend the schedule by repeating the last week's increments until you reach your target volume.
Step 3, Segment recipients by engagement
Do not send your entire database on day one. Segment your recipients into tiers:
- Tier 1 (days 1-6): Recipients who opened an email or clicked a link in the last 30 days.
- Tier 2 (days 7-12): Recipients who opened in the last 60-90 days.
- Tier 3 (days 13-18): Recipients who are subscribed but have not opened in 90+ days (re-engagement tier).
- Tier 4 (days 19-30): Full list, including low-engagement subscribers.
This ensures that the IP's first impressions are built on positive signals, opens and clicks, rather than unopened mail or bounces.
Step 4, Monitor your reputation in real time
During the warmup, you must check daily that you are not being blacklisted or experiencing unusual deferral rates. Use these tools:
- Postmaster tools: Google Postmaster Tools and Microsoft SNDS (Smart Network Data Services) show your IP's reputation, spam rate, and delivery errors. Set these up before you start.
- Blacklist monitoring: Services such as MXToolbox or Spamhaus check your IP against dozens of blocklists. Run a daily check.
- Mail server logs: Parse your MTA logs (
/var/log/mail.logon Debian/Ubuntu) for 4xx and 5xx responses. A sudden spike in 4xx from a single provider means they are applying backpressure, slow down.
What to do if a provider blocks you mid-warmup: Stop sending to that provider entirely. Check the reason (usually listed in the bounce message or the provider's abuse form). Fix the issue (clean bounces, reduce complaints) and wait 48 hours. Resume at the volume you were at before the block, not higher.
Step 5, Spread volume across the day
Do not send the entire day's allocation in one burst. A single spike of 25,000 messages in five minutes looks like a botnet even on day 30. Spread the sending evenly over the day's sending window (typically 08:00, 20:00 in the recipient's time zone). Most MTAs have a smtp_destination_rate_delay or similar parameter:
# Postfix example, limit to 60 deliveries per minute per destination
smtp_destination_rate_delay = 1s
default_destination_concurrency_limit = 20
default_destination_recipient_limit = 50
This ensures the 2,000 emails for a given day are sent as roughly 33 per minute over 10 hours, rather than all at once.
Step 6, Prepare for the possibility of a cold restart
If your warmup is interrupted, for example, you stop sending for a week due to a server migration or a list cleaning, the IP's reputation can decay. A cold IP that was partially warmed may be treated as a new IP if the gap is long. For gaps of 3-7 days, resume at the volume you reached before the pause, do not jump ahead. For gaps longer than 7 days, restart from day 1. It is painful but cheaper than landing on a persistent blacklist.
How a Vietnam-based IP fits into a warmup strategy
Running your email infrastructure on a SMTP VPS located in Vietnam, with a dedicated IPv4 from the local address pool, has one specific advantage: your mail routes domestically when the recipient is inside Vietnam. Connections to Viettel, VNPT, FPT, and CMC Telecom (the four largest internet and telecom providers in Vietnam) do not leave the country, which means lower latency and fewer intermediate relays that could introduce delays or filtering.
For international recipients, the mail still traverses standard international transit and its delivery depends on the network path at both ends, your provider's upstream and the recipient's ISP. A Vietnam IP is not a fast lane to North America or Europe. The value is that Vietnamese recipients see a local IP, which reduces the chance that their provider's inbound filters treat the connection as foreign spam.
Any VPS used for email sending should have its rDNS correctly set, its authentication records published, and its warmup schedule followed regardless of the IP's geographic location. The same schedule works for any IP on any provider's network. The Vietnam location is a benefit for Vietnamese recipients; it does not change the warmup mechanics.
FAQ
Can I warm up two IPs at the same time?
Only if you rotate the sending across both IPs from the start, following the same total volume split between them. For example, if your schedule says 200 emails on day 1, send 100 from each IP. Do not warm one IP completely and then start a second, the second IP will still be cold and the same throttling applies.
What happens if I ignore the warmup and send full volume on day 1?
Most providers will temporarily defer or permanently block your IP. Gmail may throttle to a few hundred messages per day regardless of how many you send. Yahoo and Outlook may blacklist the IP outright. Recovering from a block can take 1-4 weeks of low-volume sending, which is slower than doing the warmup correctly the first time.
How do I know if my warmup is working?
Monitor your delivery rates. If 95% or more of your emails are accepted on the first attempt (no 4xx or 5xx), and your complaint rate stays under 0.1%, the warmup is on track. Google Postmaster Tools showing a "High" or "Medium" reputation for your IP confirms success after 30 days.
Do I need a dedicated IP for sending, or can I share one?
A dedicated IP is strongly preferred. A shared IP carries the reputation of all senders sharing it. If another sender on the same IP sends spam, your legitimate mail inherits the damage. A dedicated IP means you control the reputation through your own practices.
Is the warmup schedule the same for transactional and marketing email?
Yes, the volume ramp is the same, but the content matters. Transactional email (password resets, order confirmations) typically has very high engagement and low complaint rates, so some senders accelerate the schedule slightly. Marketing email must be more conservative because the complaint risk is higher. Stick to the table if you send marketing mail.
How often should I refresh or check my authentication records during warmup?
Once at the start is enough unless you change sending domains or IPs. The most common error is a missing or misconfigured DKIM record that causes a fraction of bounces that the sender does not detect. Run opendkim-testkey and a SPF validation tool before each new week of the schedule as a safety check.
Related articles
- SPF, DKIM and DMARC on a self-hosted SMTP server
- Why shared SMTP relays hurt deliverability once you scale
- Set up a WireGuard VPN on your VPS in 10 minutes
新发信IP的30天预热计划
新IP需要按计划逐步提升发送量,让接收方建立信誉。文中给出按天推进的发送量表和监控指标。跳过预热几乎必然影响送达率。


