Most cold email deliverability problems start with infrastructure, not copy. Wrong DNS records, under-warmed domains, and too many emails per inbox are the root cause of most inbox placement failures. This guide covers everything you need to set up cold email infrastructure correctly from scratch - domains, DNS records, inbox structure, warmup schedule, and safe sending limits.
Never send cold email from your primary company domain (company.com). If it gets flagged or domain reputation drops, it affects all email from your business - marketing, support, and transactional.
Choose domains that look intentional and professional, not random. Avoid hyphens in the middle of the domain and country TLDs (.ru, .cn, .biz) for B2B cold email.
| Daily volume | Inboxes | Domains |
|---|---|---|
| 50-100 emails | 2-3 | 1 |
| 200-300 emails | 6-10 | 2-3 |
| 500 emails | 15 | 5 |
| 1,000 emails | 30 | 10 |
| 2,000+ emails | 60+ | 20+ |
Both Google Workspace and Microsoft 365 provide the exact MX record values to enter when you set up the account. Copy them exactly.
For Google Workspace. For Microsoft 365: v=spf1 include:spf.protection.outlook.com ~all. If you use additional senders (e.g. a third-party cold email tool with its own SMTP), add their include: before ~all.
DKIM records are generated per-domain in Google Admin (Apps > Gmail > Authenticate email) or Microsoft 365 Admin (Exchange admin > DKIM). Do not manually create DKIM TXT records - use the values generated by your provider.
Start with p=none to monitor. After 30 days with no legitimate email failures, move to p=quarantine, then p=reject. The rua address receives aggregate reports - use a tool like Postmark DMARC or Google Postmaster to read them.
| Week | Warmup emails/day | Campaign emails/day | Notes |
|---|---|---|---|
| Day 1-3 | 0 | 0 | Set up DNS only. Verify SPF, DKIM, DMARC pass on MXToolbox before enabling warmup. |
| Week 1-2 | 5-20 | 0 | Warmup tool only. Do not start campaigns. Build initial reputation. |
| Week 2-3 | 20-50 | 5-10 test only | First low-volume test campaigns to known contacts or warm leads. |
| Week 3-4 | 50+ | 10-20 | Ramp campaign volume slowly. Monitor domain reputation in Google Postmaster. |
| Week 4-6 | 50+ | 20-30 | Continue warmup in parallel with campaigns - keep warmup running indefinitely. |
| Week 6+ | 50+ | 30-50/inbox | Full campaign volume. Warmup running in parallel. Never disable warmup. |
Even perfect infrastructure fails if the list has a 10% bounce rate. Verify every contact list before your first send on each new sending domain. 100 free credits, no card required.
Provider behaviour, DNS setup, warm-up, and inbox placement
Continue through related topics