Setting Up Email for Multiple Domains
6 min read
## Managing Email Across Multiple Domains
Owning multiple domains is common: a primary business domain, a domain hack for marketing, country-code variants for international reach, legacy domains from previous ventures. Each domain raises the same question: how do you handle email?
The options range from full independent Email Hosting for each domain to unified forwarding into a single inbox. This guide covers every approach, from the simplest to the most sophisticated.
## Understanding Your Options
### Option A: Independent Mailboxes per Domain
Each domain has its own Email Hosting account. `[email protected]` and `[email protected]` are completely separate mailboxes at separate providers (or separate organizations within the same provider).
**Best for**: Separate businesses or brands that genuinely need distinct email infrastructure, branding, and billing.
**Drawbacks**: Managing multiple admin consoles, multiple billing relationships, multiple sets of DNS records to maintain.
### Option B: Aliases / Forwarding to One Domain
All secondary domains forward email to addresses on your primary domain. `[email protected]` forwards to `[email protected]`. You maintain one primary mailbox and use Email Forwarding for the rest.
**Best for**: Protecting brand variations of your primary domain, managing legacy domains, or running lightweight secondary domains for specific campaigns.
**Drawbacks**: Cannot send *from* secondary domain addresses without additional SMTP relay configuration.
### Option C: Unified Multi-Domain Hosting
Some Email Hosting providers support multiple domains under a single account, allowing genuine mailboxes at multiple domain addresses that share a single management interface.
**Best for**: Organizations operating multiple brands from the same team, needing to send and receive from multiple domain identities within one admin console.
## Configuring Each Domain's DNS Records
Regardless of which approach you use, each domain needs its own set of DNS (Domain Name System) records. DNS is domain-specific — records set for `domain1.com` have no effect on `domain2.com`.
For each domain, you'll configure:
### 1. MX Records per Domain
```
domain1.com:
MX @ 10 mail.yourmailprovider.com
domain2.com:
MX @ 10 mail.yourmailprovider.com (same server)
```
Both domains point to the same mail server (or same provider's infrastructure). The mail server then distinguishes which mailbox to deliver to based on the recipient address.
### 2. SPF per Domain
Each domain needs its own SPF Record:
```
domain1.com TXT:
v=spf1 include:_spf.google.com ~all
domain2.com TXT:
v=spf1 include:_spf.google.com ~all
```
If you're using Email Forwarding for secondary domains, the SPF record should authorize the forwarding service:
```
domain2.com TXT:
v=spf1 include:spf.improvmx.com ~all
```
### 3. DKIM per Domain
DKIM key pairs are domain-specific. Even if you use the same email provider for all domains, you need separate DKIM keys generated and configured for each domain.
In Google Workspace, for example:
1. Admin Console → Apps → Gmail → Authenticate email
2. Select `domain1.com` → Generate record → Add to domain1.com DNS
3. Repeat for `domain2.com` separately
```
domain1.com DNS:
TXT google._domainkey v=DKIM1; k=rsa; p=MIGfMA0...
domain2.com DNS:
TXT google._domainkey v=DKIM1; k=rsa; p=MIGnGA1... (different key)
```
### 4. DMARC per Domain
Each domain needs an independent DMARC record:
```
domain1.com:
TXT _dmarc v=DMARC1; p=reject; rua=mailto:[email protected]
domain2.com:
TXT _dmarc v=DMARC1; p=reject; rua=mailto:[email protected]
```
Or point reports for all secondary domains to a single monitoring address:
```
domain2.com:
TXT _dmarc v=DMARC1; p=reject; rua=mailto:[email protected]
```
## Approach 1: Google Workspace Multi-Domain
Google Workspace natively supports multiple domains under a single account:
1. In Google Admin Console → **Account → Domains → Add a domain**
2. Choose "Add another domain" (for a second primary domain where users can have addresses) or "Add a domain alias" (where users get addresses at both domains pointing to the same mailbox)
**Domain alias**: `[email protected]` is an alias for `[email protected]`. Same mailbox, same user, two addresses.
**Second domain**: Create separate users with `@domain2.com` addresses who have distinct mailboxes from `@domain1.com` users.
Pricing: One Google Workspace subscription covers all users regardless of how many domains they're associated with.
### Domain Alias vs Second Domain in Google Workspace
| | Domain Alias | Second Domain |
|---|---|---|
| Users | Same as primary | New users required |
| Mailboxes | Shared | Separate |
| Billing | Same user count | Same user count |
| Use case | Brand protection | Separate business |
## Approach 2: Microsoft 365 Multi-Domain
Microsoft 365 also supports multiple domains under one tenant:
1. Microsoft 365 Admin Center → **Settings → Domains → Add domain**
2. Verify each domain (separate TXT verification record per domain)
3. Configure MX records for each domain pointing to Microsoft's servers
4. Assign users primary addresses on whichever domain makes sense
In Microsoft 365, a user's primary email domain is their "primary alias." You can add additional email addresses to a user from other domains:
User: `[email protected]`
Additional alias: `[email protected]` → delivers to same mailbox
Tenants in Microsoft 365 support up to 900 custom domains.
## Approach 3: Forwarding with Cloudflare Email Routing
For secondary or protective domains that don't need sending capability, Cloudflare Email Routing provides free forwarding with virtually no setup:
Each domain in Cloudflare gets its own Email Routing configuration:
**domain2.com Email Routing:**
```
Rule: * @domain2.com → [email protected] (catch-all forwarding)
Rule: [email protected] → [email protected]
```
This setup takes 5 minutes per domain and costs nothing. The limitation — you can only receive, not send from domain2.com — is acceptable for brand-protection or legacy domains.
## Approach 4: ImprovMX for Multiple Domains
ImprovMX's paid plans support multiple domains under a single account with a unified dashboard. You configure forwarding rules for each domain and optionally enable SMTP relay for sending.
Pricing is per domain, not per user — which makes it economical for managing many lightweight domains.
## Approach 5: Separate Zoho Mail Organizations
Zoho Mail's free tier supports one domain with up to 5 users. For truly independent email operations across multiple brands, you can create separate Zoho organizations (one per domain), each on the free plan.
This is unwieldy above 2–3 domains but works for small-scale multi-domain operations where each domain is genuinely a separate entity.
## DNS Checklist for Each Domain
When adding email for a new domain, work through this checklist:
- [ ] Add MX records for the domain
- [ ] Add SPF Record TXT record
- [ ] Generate and add DKIM key for the domain
- [ ] Add DMARC TXT record at `_dmarc.{domain}`
- [ ] Verify ownership (if required by email provider)
- [ ] Create/configure mailboxes or forwarding rules
- [ ] Send test emails inbound and outbound
- [ ] Check authentication headers in test emails
Use the DNS Record Helper to verify each domain's records are visible externally after configuration.
## Consolidating Inboxes
When you receive email at multiple domain addresses, you'll want to consolidate viewing and management:
**Gmail**: Use "Send mail as" (Settings → Accounts and Import) to manage all addresses from one Gmail interface. For each external address, configure SMTP credentials so you can reply from the appropriate address.
**Outlook / Microsoft 365**: Add multiple accounts to the Outlook desktop or mobile app, or use Microsoft 365's shared mailbox feature to give users access to multiple mailboxes.
**Apple Mail / Thunderbird**: Add multiple IMAP accounts in the same client — unified inbox view shows all mail together.
## Protecting Brand Domains You Don't Use for Email
For domains you own purely to prevent misuse (defensive registrations), configure a **null MX record** to explicitly signal that no email should be delivered:
```
domain3.com:
MX @ 0 .
```
Also add an SPF record that rejects all senders:
```
TXT @ v=spf1 -all
```
And a DMARC record:
```
TXT _dmarc v=DMARC1; p=reject; rua=mailto:[email protected]
```
This prevents spammers from spoofing your parked domains while collecting any reports of attempted abuse.
## Next Steps
- **Custom Email with Your Domain: Complete Setup Guide** — Foundation guide for email at any single domain
- **Catch-All Email Addresses: Pros and Cons** — Catch all email to unknown addresses at a domain
- **SPF, DKIM, DMARC: Email Authentication Trilogy** — Authentication details for each domain
- **Email Deliverability: How Domain Reputation Matters** — Reputation applies per sending domain
Related Guides
Email & Hosting Setup