Scaling cold email is an architecture decision made once and lived with for a year. The layout that survives looks like this: your brand domain sends no outreach at all, outreach runs on a small number of properly configured secondary domains, each carries a handful of mailboxes, every mailbox has a low sustainable daily volume, and new mailboxes come online in waves rather than all at once.
The failure mode is equally consistent. A team buys thirty mailboxes across five freshly registered domains, ramps them identically in the same week on the same infrastructure, sees a good fortnight, and then watches placement collapse everywhere simultaneously — because nothing in that setup was independent.
The three layers, and who owns each
- Registrar. Register outreach domains yourself, in your own account, with auto-renew on. Never in a vendor's account. Every bit of reputation you build attaches to the domain, so losing the domain means starting over.
- DNS. Keep the zone editable by you. You will need to fix SPF, rotate DKIM and tighten DMARC without filing a ticket, and incident response is DNS work.
- Mailboxes. Buy from whichever provider suits you. Because layers 1 and 2 are yours, changing provider costs you a DKIM record and an SPF edit rather than your history.
Sizing: capacity is warmed mailboxes times a low number
The arithmetic people get wrong is treating the platform's per-mailbox ceiling as a target. It is a limit. Sustainable cold volume per mailbox is a fraction of it, and the fraction depends on your bounce rate, your complaint rate and how long the mailbox has been running.
Work the other direction instead. Decide how many *sends per working day* the campaign needs, divide by a deliberately conservative per-mailbox daily figure, and that is your mailbox count — plus spare capacity so that pausing one mailbox does not stop the campaign.
| Layer | Sensible shape | Why |
|---|---|---|
| Brand domain | Zero outreach | Protects invoices, resets, support mail |
| Outreach domains | A small number, each with a real website page | Verifiable by a recipient, and limits blast radius |
| Mailboxes per domain | A handful, not dozens | Domain-level reputation is shared by its mailboxes |
| Per-mailbox daily volume | Low, raised gradually, with headroom | The ceiling is not the target |
| Spare mailboxes | Warm and idle | Lets you pause a mailbox without pausing the campaign |
Note the second row. The reason to have several outreach domains is blast radius: if one gets filtered, the others keep running while you diagnose. The reason *not* to have thirty is that a large set of freshly registered, contentless domains starting to send in the same week is a correlated group, and correlated groups get treated as one.
Stagger everything
This is the part most setups skip, and it is what converts a single bad week into a total outage.
- Stagger domain registration. Do not register the whole pool on one day.
- Stagger mailbox creation and warm-up starts. Bring mailboxes online in waves a week or two apart, so they have different ages and different histories.
- Stagger the ramp. Different mailboxes at different volumes means a provider-side change does not hit all of them at the same point in their curve.
- Spread across providers if you can. Mailboxes split between Google and Microsoft fail independently; mailboxes in one tenant do not.
- Never put every mailbox in one tenant. A single outbound restriction then stops all of your sending at once.
Configure each domain completely
A half-configured outreach domain is worse than no extra domain. Each one needs:
- A real web page naming your company, linking to your main site, with a contact address. A domain that resolves to nothing cannot be verified by a recipient.
- SPF listing only the services that actually send for it, staying inside the hard limit of 10 DNS lookups during evaluation.
- DKIM with your provider's selector, and a check in real headers that the
d=tag is your domain rather than a vendor's. Unaligned DKIM means the reputation is not accruing to you. - DMARC at
_dmarc, starting atp=nonewith a reporting address someone reads, tightened once the reports are clean. - MX and a monitored mailbox, so replies, auto-responses and bounce messages land somewhere a human sees.
- Warm-up per mailbox before any live sending, continuing alongside it.
Monitor per domain and per mailbox, never in aggregate
The point of separating domains is to localise failure, and an average destroys that. Track bounce rate, complaint rate, blocklist status, DMARC failures and inbox placement per receiving provider for each sending domain, plus reputation per mailbox.
Define the thresholds that trigger a pause before you need them, and write down the response: pause the mailbox, verify authentication still passes, check the domain and sending IP against the major blocklists, audit the list and copy that preceded the drop, re-warm slowly, and retire the domain if placement does not recover.
What not to do
Do not send outreach from your primary domain. This is the one that cannot be undone cheaply.
Do not solve a reply-rate problem by adding mailboxes. More senders push the same unwanted message to more people. Narrow the segment instead.
Do not add mailboxes to a domain whose placement is already drifting. You are attaching new identities to a reputation that is going the wrong way.
Do not ramp everything in one week. Correlated setup produces correlated failure.
Do not let a vendor hold the registrar or the DNS zone. Portability is the whole value of the architecture.
Do not treat warm-up as a phase you finish. Reputation is a rolling judgement about recent behaviour; a mailbox that was clean in March can be filtered in June on the same setup.
Do not scale on sequencer metrics. "Delivered" is an SMTP acceptance. It cannot tell you that Gmail put the whole wave in spam.
Where MailPilot fits
MailPilot is built for exactly this shape: many domains, many mailboxes, each judged on its own. It warms every mailbox over OAuth on Gmail and Outlook or over SMTP/IMAP for SendGrid, Amazon SES, Mailgun, Postmark and custom SMTP, checks SPF, DKIM and DMARC per sending domain, measures real inbox placement per receiving provider through a seed-inbox network, and tracks reputation per mailbox daily. Every plan includes unlimited mailboxes, so adding a domain or a wave of mailboxes never means choosing which ones you get to monitor.
Ready to reach the inbox every time?
Automated email warmup across real peer mailboxes. Live inbox placement monitoring. Free 7-day trial - no credit card required.
Start free trial