Home › Blog

How to Warm Up a New Domain for Cold Email, Step by Step

By BobWork23 Oct 20268 min read
Step-by-step checklist for warming up a new cold email domain, from DNS records to a daily sending ramp

To warm up a new domain for cold email, use a separate sending domain, publish SPF, DKIM and DMARC on it, then warm each mailbox from 3 to 30 emails a day. Start outreach only after 7 clean days with a spam rate under 10%, and give a brand-new domain 2 to 3 weeks before real volume. Send cold email from day one and you burn a domain that has no history to absorb the damage.

This page is the ten-step version, in the order you do it. Each step has a check you can run, most of them with our free SPF, DKIM, DMARC and blacklist checkers. If you would rather see the same plan as a 21-day calendar, the new domain warm-up plan lays it out day by day.

Why does a new domain need warming at all?

Mailbox providers judge a sender partly by history. A domain registered last week has none. It has no record of normal sending volume, no replies, and no track of how recipients treat its mail.

When that domain suddenly sends 200 cold emails, the pattern looks like a spammer who just bought a domain. Filters respond by sending mail to Spam or deferring it, and recovering reputation takes longer than building it.

Warm-up gives the domain a short, believable history first: small daily volume that grows slowly, mail that gets opened and replied to, and mail that is rescued when it lands in Spam. Our guide on whether warm-up still works covers what it can and cannot do.

How do you set up the new domain?

Steps 1 to 5 happen before any warm-up email is sent. Most new-domain problems trace back to one of them, so do not skip ahead.

Step 1: Use a separate sending domain

Do not run cold email from the domain your company uses for invoices, support and everyday mail. If a campaign goes badly, that reputation drop hits every email your team sends.

Register a close variant instead. If your company is example.com, a sending domain could be tryexample.com or example-mail.com. Keep it recognisable, because a confusing domain lowers replies and raises complaints.

Point the sending domain's website to your main site, so anyone who checks it lands somewhere real. Create mailboxes with real names, such as maya@tryexample.com, not sales1@.

Step 2: Set up mailboxes and MX records

Warm-up needs mailboxes that can both send and receive. Replies and rescue only work if the mailbox has an inbox to read.

Create the mailboxes with your provider (Google Workspace, Zoho Mail, or any host with IMAP and SMTP) and publish the MX records it gives you. Send one manual email to an outside address and reply to it, to confirm both directions work.

Use one mailbox per sending identity. If you plan to send 150 cold emails a day in total, you will need several mailboxes, each warmed separately.

Step 3: Publish SPF

SPF lists the servers allowed to send for your domain. It is a single TXT record at the root of the sending domain.

For Google Workspace it is usually v=spf1 include:_spf.google.com ~all. For Zoho Mail, use the include Zoho shows in its admin panel. If you also send through a platform such as Amazon SES or SendGrid, add its include to the same record.

Keep exactly one SPF record. Two separate SPF TXT records on the same host cause SPF to fail. Verify with the free SPF checker.

Step 4: Turn on DKIM

DKIM signs each message with a key published in your DNS. Receivers use it to confirm the mail really came from your domain and was not changed.

Your mail provider generates the key. In Google Workspace it is under Apps → Google Workspace → Gmail → Authenticate email, following Google's DKIM setup guide. Publish the TXT record, then go back and start authentication.

Check it with the DKIM checker. The selector depends on the provider: google for Google Workspace, zmail or zoho for Zoho, selector1 or s1 for many others.

Step 5: Add DMARC at p=none

DMARC tells receivers what to do when a message fails SPF and DKIM alignment, and where to send reports. Start with monitoring:

v=DMARC1; p=none; rua=mailto:dmarc@tryexample.com

Publish it as a TXT record at _dmarc.tryexample.com. Google and Yahoo both expect a DMARC record from senders, and Yahoo's sender requirements ask for at least p=none. Verify with the DMARC checker, then move to quarantine later once all legitimate mail passes.

RecordWhereStarting valueCheck with
MXSending domain rootFrom your mail providerA manual send and reply
SPFSending domain root, TXTv=spf1 include:<provider> ~allSPF checker
DKIM<selector>._domainkey, TXTKey from your providerDKIM checker
DMARC_dmarc, TXTv=DMARC1; p=none; rua=mailto:…DMARC checker
BlacklistsDomain and sending IPNot listedBlacklist checker

Run the blacklist check too. A newly registered domain can carry history from a previous owner. If it is listed, deal with that before you warm.

How do you warm up a new domain for cold email?

Steps 6 to 8 are the warm-up itself. Plan on two to three weeks for a domain with no history.

Step 6: Connect every mailbox to warm-up

Now connect each sending mailbox to a warm-up tool. In BobWork Email Warm-up, Gmail and Google Workspace connect with an app password over IMAP (recommended), Zoho Mail through its API or IMAP, and most other hosts through IMAP and SMTP. Outlook and Microsoft 365 are not supported yet.

By default, a mailbox joins a shared warm-up network and exchanges mail with other active mailboxes, so one mailbox is enough to start. Peers on a different domain or provider are picked twice as often. If you want only your own mailboxes to warm each other, switch to a private pool, which needs at least two.

Set each mailbox's time zone. Warm-up sends are spread across 09:00 to 18:00 in that time zone.

Step 7: Let the ramp run

The engine starts each mailbox at 3 warm-up emails a day and adds 2 a day, up to 30. Weekends run at 30% of weekday volume. About 40% of received warm-up mail gets a reply, and threads end after three messages.

DayWarm-up sent (weekday)Real cold emailWhat to look for
13NoneNo login errors, DNS checks pass
37NoneFirst replies arriving
511NoneRescued-from-Spam count low
715NoneReady check may pass
1021None, or a handfulSpam rate stable at or under 10%
1429Small first campaignBounces and replies look normal
15 to 2130 (cap)Up to 30 a day per mailboxSpam rate stays low as outreach starts
22 onward10 to 15 during campaigns30 to 50 a day per mailboxAdd mailboxes, not volume per mailbox

Do not raise the cap to speed things up. A new domain gains more from steady days than from big ones. The free warm-up schedule generator prints this plan for your start date and mailbox count.

Step 8: Check inbox placement

Placement is where your mail actually lands: Inbox, Promotions, or Spam. Check it three ways.

Warm-up spam rate. BobWork measures this in the receiving mailboxes: the share of your warm-up mail that recipients found in Spam over the last 7 days. It is not a seed list estimate. Under 3% is good. Above 5%, pause the mailbox for a few days and look for the cause.

Manual test sends. Send a plain message to Gmail and Yahoo addresses you control. Look at where it lands and open the headers to confirm SPF, DKIM and DMARC all show pass.

Google Postmaster Tools. Add the sending domain to Postmaster Tools. It shows little at low volume, but once campaigns start it reports spam rate and authentication for mail sent to Gmail. Google asks senders to keep complaints below 0.1% and never reach 0.3%.

When can you start sending cold email?

Step 9: Wait for the ready check

A mailbox is marked "ready for outbound" when three things are true together:

On a domain with clean history, 7 days is often enough. On a brand-new domain, treat the ready check as permission to start small, and plan 2 to 3 weeks before campaigns reach full volume. If a mailbox stalls just above 3%, recheck DNS before anything else. Our page on new domain emails going to spam lists the usual causes.

Step 10: Start outreach small and keep warming

When you start cold email, keep it modest. Around 30 cold emails a day per mailbox in the first week after ready, and no more than 30 to 50 a day per mailbox after that. If you need more volume, add mailboxes and warm them the same way.

Keep warm-up running at 10 to 15 a day during campaigns. Switching it off the day outreach starts removes the steady background activity the domain just built. Use plain text, few links, a working unsubscribe, and a clean list. Bounces and complaints undo warm-up faster than anything.

Do this now

StepActionHow to verify
1Register a separate sending domain close to your brandDomain resolves and redirects to your main site
2Create named mailboxes and publish MXA manual send and reply both work
3Publish one SPF recordSPF checker passes
4Turn on DKIM at your providerDKIM checker finds the selector
5Publish DMARC at p=noneDMARC checker passes
6Check blacklistsBlacklist checker shows no listings
7Connect each mailbox to warm-upDashboard shows each mailbox active
8Let the ramp run with no cold email for 7 daysDaily volume climbs from 3 toward 30
9Check placement three waysSpam rate at or under 10%, headers show pass
10Start at about 30 cold emails a day per mailboxSpam rate stays low as outreach begins

BobWork Email Warm-up runs steps 7 to 9 for you for free, up to 10 mailboxes per account, with no card and no time limit. For the authentication detail behind steps 3 to 5, read SPF, DKIM and DMARC for cold email.

Frequently asked questions

How long does it take to warm up a new domain?

Plan 2 to 3 weeks before regular cold email from a new domain. A mailbox can pass a 7-day ready check sooner (7 days warming, spam rate at or under 10%, 30+ warm-up emails received), but a new domain has no history, so the extra time lowers the risk.

Should I use a separate domain for cold email?

Usually yes. A separate sending domain keeps cold email reputation away from the domain your invoices, support and team mail use. Pick a close variant of your brand and set SPF, DKIM and DMARC on it before sending anything.

How many emails a day should a new domain send?

Start warm-up at about 3 a day per mailbox and add 2 a day up to 30. After the mailbox is ready, keep real outreach around 30 a day per mailbox at first and no more than 30 to 50 a day once it is stable.

Can I send cold email while warming up a new domain?

Not in the first week. Wait for the ready check, then start small. Keep warm-up running at 10 to 15 emails a day during campaigns rather than switching it off.

How do I check inbox placement on a new domain?

Watch the warm-up spam rate, which measures where your mail actually landed in receiving mailboxes. Also send a few plain test messages to Gmail and Yahoo addresses you own, and add the domain to Google Postmaster Tools once volume grows.

What DMARC policy should a new domain use?

Start with p=none and a reporting address. It monitors authentication without telling receivers to reject mail while you are still testing. Move toward quarantine later, once every legitimate sender passes SPF or DKIM alignment.

Does warm-up guarantee my new domain lands in the inbox?

No. Warm-up builds a normal sending pattern and measures spam landings, but list quality, content, complaints and authentication still decide placement. No tool can guarantee the inbox.

Warm up your mailboxes free

Connect Gmail, Google Workspace, Zoho or Lark. Your mailboxes warm on a shared network, or in a private pool of your own, starting today.

Start free