How to Warm Up an Email Sending Domain
A cold domain sending at full volume lands in spam. Here is how to warm up an email sending domain the right way, with a ramp schedule and the signals to watch.
A brand new sending domain has no reputation, so mailbox providers do not trust it yet. Blast full volume from it on day one and a big chunk lands in spam, which teaches providers you might be a spammer and makes the hole deeper. Warming up means starting small and ramping volume gradually so providers learn your sending pattern and build trust in you. Done right it takes a few weeks. Skipped, it costs you months of poor inboxing.
Why does a new domain need warming
Reputation is earned through behavior over time. When a domain that has never sent mail suddenly sends thousands of messages, that pattern matches exactly what a spammer does after registering a throwaway domain. Providers respond by filtering hard.
Warming reverses this. You send a small, high-quality volume first, to people who actually engage, and let providers watch positive signals accumulate: low bounces, low complaints, real opens. As trust builds, you send more. The domain graduates from unknown to trusted.
This is why you cannot buy your way out of it or rush it. Reputation is a track record, and a track record takes calendar time. It is the same reason infrastructure that compounds beats a shortcut: the value is in the accumulated history, not a switch you flip.
What does a warmup schedule look like
There is no single official schedule, but the shape is always the same: start low, roughly double every few days, and watch the signals before each increase.
A reasonable ramp for a transactional domain: start around 50 messages a day for the first two or three days, then move to 100, then 250, then 500, roughly doubling every couple of days as long as your metrics stay clean. Within a few weeks you can reach thousands per day. Higher target volumes take longer to warm.
Send to your most engaged users first. Warming works best when the early mail gets opened and clicked, because that is the positive signal you want providers to see. Your active users opening receipts and login codes is ideal warmup traffic. Save the least engaged addresses for after the domain has a reputation.
If you use a platform that manages this, lean on it. Some transactional providers like Usermails handle IP warming and shared-pool reputation for you, so you focus mainly on your own domain reputation rather than the underlying IP.
What signals tell me the warmup is working
Watch three numbers before every volume increase.
Bounce rate. Keep it low. High bounces mean you are sending to bad addresses, which hurts reputation fast during warmup. Clean your list before you start.
Complaint rate. This is people marking you as spam. It has to stay very low, ideally near zero for transactional mail. A spike means back off and figure out why.
Placement. Actually check where your mail lands, not just whether it was accepted. Use seed inboxes across Gmail, Outlook, and Yahoo to confirm you are hitting the inbox, not just being accepted and quietly filtered.
If any of these degrade, hold volume steady or drop back a step until they recover. Do not push through bad signals. Pushing through is how you turn a slow warmup into a burned domain.
How this fits the rest of your setup
Warming only works on top of correct authentication. If SPF, DKIM, and DMARC are not aligned, no amount of careful ramping saves you, because providers cannot even confirm the mail is yours. Get authentication right first, then warm.
Use a dedicated subdomain for transactional mail and warm that specifically. Keep it separate from any marketing sending so the reputation you build stays clean. And treat the sending domain the way you would treat any deploy you actually control: deliberate, monitored, and never rushed into full load without a ramp.
The short version
Start low. Send to engaged users first. Roughly double every few days. Watch bounces, complaints, and actual placement before each increase. Hold or step back when signals degrade. In a few weeks a cold domain becomes a trusted one, and your transactional mail reaches the inbox reliably from then on. Rushing this is the single most common way teams sabotage their own deliverability before they have even sent their first real campaign.