Sending emails from a subdomain or root domain is not simply a branding decision. It determines how you organize authentication, protect your main-domain reputation, read DMARC data, and respond when a new mail stream has a deliverability problem.
Short answer: use your root domain for the human-facing addresses that represent your company, such as support@example.com or alice@example.com; use a dedicated subdomain for automated mail streams when you need clearer separation and safer operations, such as updates@example.com, notify@example.com, or receipts@example.com. A subdomain is usually the better default for transactional email infrastructure, but it is not a magical deliverability shortcut.
The direct answer: use a subdomain for most automated email
A practical starting architecture for example.com looks like this:
- Human correspondence:
support@example.com,sales@example.com, and employee mailboxes at@example.com - Product notifications:
notify@example.com - Password resets and security alerts:
security@example.com - Billing receipts:
receipts@example.com - Marketing campaigns:
news@example.comorhello@example.com - Bounce or return-path domain: a separate technical subdomain such as
bounce.example.com
This approach makes the visible sender recognizable while separating mail by purpose. If a newsletter generates complaints, it is easier to investigate news.example.com without changing the configuration for password-reset mail sent from security.example.com.
That said, a subdomain does not automatically receive a fresh, independent reputation at every mailbox provider. Receivers may evaluate signals at multiple levels: the visible From domain, DKIM signing domain, envelope sender, IP address, sending patterns, content, recipient engagement, and sometimes the organizational domain. Treat subdomains as a useful boundary for administration and risk reduction—not as a way to evade a poor sending history.
For a small product with one low-volume transactional stream, sending from app@example.com can be perfectly appropriate. The strongest decision is the one you can authenticate correctly, monitor continuously, and keep stable as your application grows.
Root domain and subdomain: what actually changes
A root domain, sometimes called the apex domain, is the registrable name you own: example.com. A subdomain adds a label to its left: mail.example.com, notify.example.com, or billing.example.com.
In an email address, the domain after @ is part of the address users see:
From: Example App <notify@example.com>
From: Example App <notify@mail.example.com>
From: Example Billing <receipts@billing.example.com>
All three are valid email-address formats. The question is not whether a mailbox provider accepts subdomains—it will—but whether the structure matches your sender identity and gives your team the right operational controls.
The visible From domain is only one identity
A delivered message can contain several domains, each serving a different job:
From: Example App <notify@mail.example.com>
Return-Path: <bounces@bounce.example.com>
DKIM-Signature: d=mail.example.com; s=s1; ...
- From domain: The address a recipient sees and the domain DMARC evaluates as the author domain.
- Envelope sender / MAIL FROM domain: Used for SMTP delivery and bounce handling; it often appears as
Return-Pathafter delivery. - DKIM
d=domain: The domain asserting responsibility for a cryptographic signature. - EHLO/HELO domain: The sending SMTP server identity, which is usually managed by your provider.
These domains do not have to be identical. But for reliable DMARC results, the visible From domain must align with either the SPF-authenticated envelope-sender domain or the DKIM signing domain. Gmail’s sender guidance specifically requires alignment between the From domain and SPF or DKIM for direct mail. (support.google.com)
This is why a provider may ask you to configure several DNS records even when you send one simple message through an SMTP relay or REST API. Authentication is about the relationships among those identities, not merely whether From: contains a domain you own.
A subdomain is a namespace, not a separate company
mail.example.com remains visibly connected to example.com. That makes it useful when you want a technical boundary without abandoning the main brand. Recipients can still recognize the parent domain, while your DNS and reporting can distinguish product mail from other traffic.
Avoid misleading structures such as a new, unfamiliar domain that resembles your main brand, especially for account or payment email. The goal is a stable sender identity that users can recognize and that your security team can defend with DMARC.
Why a subdomain is usually the safer operational choice
The biggest argument for a subdomain is not cosmetic. It is the ability to separate systems, teams, and message types before those differences turn into an incident.
Separate transactional and promotional streams
Transactional email is triggered by a user action or account event: verification messages, sign-in codes, password resets, invoices, receipts, order updates, and alerts. Promotional email is sent to an audience under a marketing schedule: product announcements, newsletters, lifecycle campaigns, and discounts.
These streams have different risk profiles. Transactional messages are expected by the recipient and tend to have high engagement. Campaign mail may produce more unsubscribes, complaints, and inactive-recipient problems. Giving them separate sender domains makes it easier to see which stream is responsible when complaint rates rise or inbox placement falls.
For example:
Transactional From: Example <notify@mail.example.com>
Marketing From: Example News <news@example.com>
Security From: Example Security <security@example.com>
You do not need a separate subdomain for every template. Start with boundaries that correspond to genuinely different mail programs, owners, or risk levels. Creating ten subdomains for ten low-volume event types creates DNS work and monitoring overhead without necessarily creating useful separation.
Limit the blast radius of configuration mistakes
Email DNS is operationally sensitive. A bad SPF edit, an expired DKIM key rotation, a misapplied DMARC policy, or an accidental marketing import can cause a real sending disruption.
With a dedicated subdomain, you can constrain the scope of a change. For example, modifying DNS for mail.example.com should not require touching the SPF and DKIM configuration for employee mail at example.com. This is especially valuable when Google Workspace, Microsoft 365, a transactional provider, and a campaign platform all send mail for the same organization.
A subdomain also enables clearer ownership. Your application team can own mail.example.com; the IT or identity team can own the root domain and employee email; marketing operations can own news.example.com. Ownership does not eliminate coordination, but it makes change review and incident response much clearer.
Make DMARC reports more useful
DMARC aggregate reports show authentication results and sending sources. When everything sends as example.com, a report can combine employee mail, web-app alerts, invoices, support software, and campaigns into one large dataset.
When mail streams use deliberate subdomains, your reports become easier to interpret. A sudden source sending as billing.example.com is immediately more actionable than a vague anomaly somewhere under the root domain. You can also publish policies that fit each stream’s maturity.
For example, a root-domain DMARC policy can include an sp= tag for subdomain defaults, while a specific subdomain can publish its own record when it needs different treatment:
_dmarc.example.com. TXT "v=DMARC1; p=quarantine; sp=quarantine; rua=mailto:dmarc-agg@example.com; adkim=r; aspf=r; pct=100"
_dmarc.mail.example.com. TXT "v=DMARC1; p=reject; rua=mailto:dmarc-agg@example.com; adkim=r; aspf=r; pct=100"
The second record gives mail.example.com its own explicit policy. DMARC supports domain-level policies, reporting, and receiver handling preferences for failed authentication. (datatracker.ietf.org)
When the root domain is the better choice
A subdomain is not always better. The root domain can be the right sender identity when its simplicity and brand continuity outweigh the benefits of additional segmentation.
Your customers already expect @example.com
For a founder-led business, consulting firm, B2B SaaS company, or company with a highly personal support model, support@example.com may be more trusted and more consistent with existing customer relationships than support@mail.example.com.
The same can be true for account notices if your product has always sent from the root domain. Changing visible sender domains can confuse users, disrupt inbox rules, and make phishing education harder. If the root domain has healthy authentication and a carefully managed sending program, keep it.
Your volume and complexity are genuinely small
If one application sends a few hundred expected transactional messages each day, one authenticated root domain may be easier to operate. A simple setup is often safer than an elaborate architecture nobody maintains.
The key qualifier is genuinely small and controlled. Do not use “we only have one domain” as a reason to mix employee mail, password-reset messages, support tickets, and bulk promotions without monitoring. Complexity can arrive quickly after a product launch, a CRM migration, or an acquisition.
You need reply handling at the primary business domain
A sender address should support the recipient’s expectations. If an invoice says “reply with questions,” then billing@example.com or support@example.com may be more appropriate than a no-reply address on a technical subdomain.
You can still use a root-domain From address while placing bounces on a technical subdomain and signing with aligned DKIM. The point is to distinguish the recipient-facing brand identity from the delivery plumbing.
Deliverability: what subdomains help with—and what they cannot do
Deliverability is the probability that a legitimate message is accepted and placed where the recipient will see it. It is not a single DNS setting and it is not the same thing as an API request succeeding.
A subdomain can improve observability and containment, but it cannot repair bad recipient practices, misleading content, poor complaint performance, or a broken authentication chain.
Reputation is layered
Mailbox providers do not publish a universal formula for sender reputation. In practice, a receiving system can evaluate signals including:
- The domain in the visible From address
- The DKIM signing domain and signature validity
- The SPF-authenticated envelope-sender domain
- Sending IP reputation and reverse DNS
- Message volume and changes in volume
- Spam complaints, bounces, and engagement
- Content, links, attachments, and message formatting
- Recipient-level history and local filtering rules
That means mail.example.com may help you distinguish your transactional program from news.example.com, but receivers can still associate both with example.com in ways they do not fully disclose. Do not assume that a new subdomain lets you restart reputation after a root-domain problem.
The durable fix is to stop the cause: remove bad acquisition sources, honor unsubscribes, suppress repeated bounces, send expected messages, authenticate every stream, and scale volume gradually.
Inbox placement is not the same as acceptance
An SMTP response such as 250 2.0.0 generally means the next mail server accepted the message for processing. It does not guarantee inbox placement, a rendered message, or a human read. SMTP uses reply codes to communicate acceptance and temporary or permanent failure conditions. (datatracker.ietf.org)
Likewise, an email API may return HTTP 202 Accepted to mean it accepted your request for asynchronous processing. That is not a delivery receipt. Exact API status codes vary by provider, so treat your provider’s documentation as the authority for request semantics, event webhooks, and retry rules.
A useful operational distinction is:
| Signal | What it tells you |
|---|---|
API 2xx response | Your provider accepted the submission request. |
SMTP 250 response | A receiving SMTP server accepted that delivery attempt. |
| Delivery event | The provider observed acceptance by a recipient-side server. |
| Bounce event | The recipient-side delivery attempt failed. |
| Complaint event | A recipient or mailbox provider marked the mail as unwanted. |
| Inbox placement test | A test indicates where selected seed inboxes placed the message; it is not a guarantee for all recipients. |
New subdomains need a deliberate rollout
Do not switch a critical password-reset stream from the root domain to a new subdomain at full volume without testing. The domain might be authenticated correctly but still be unfamiliar to recipients and mailbox systems.
A safer rollout is:
- Publish and validate DNS records before sending production mail.
- Send internal test messages and inspect full headers.
- Start with low-risk, expected transactional mail where possible.
- Increase volume in a controlled way while tracking bounces, complaints, and delivery events.
- Keep the From domain stable once recipients and filters have learned it.
For high-volume Gmail sending, current guidance requires SPF, DKIM, and DMARC, along with TLS and other sender practices; Google identifies more than 5,000 messages per day to personal Gmail accounts as the bulk-sender threshold. (support.google.com)
DNS setup: records you need for either choice
Whether you choose example.com or mail.example.com, the authentication work is fundamentally the same. Your email provider will supply exact record names and targets. Copy those values exactly; do not substitute an example record from another provider.
SPF: authorize the envelope sender
SPF is published as a DNS TXT record and authorizes servers or services to use a domain in SMTP envelope sending. SPF evaluation applies to the envelope sender domain, not necessarily the visible From address.
A syntactically valid SPF record might look like this:
example.com. TXT "v=spf1 include:_spf.google.com -all"
That particular record is an example for a domain whose outbound mail is handled by Google; do not publish it for a transactional provider unless Google is actually authorized to send for that domain. For a provider-managed custom bounce domain, the provider may ask you to place a specific TXT record on a subdomain such as bounce.example.com.
Important SPF rules:
- Publish one SPF TXT record per evaluated domain. Combining multiple records can produce a
permerror. - Use the exact
include:mechanism or IP ranges supplied by each actual sender. - Keep DNS lookup complexity under SPF’s evaluation limits; deeply nested includes can cause an SPF failure even when the syntax appears correct.
- End with
~allor-allonly after you understand every legitimate sender for that envelope domain.
The SPF specification defines the include mechanism as a way to authorize an externally administered set of hosts while preserving the original domain’s SPF policy. (datatracker.ietf.org)
DKIM: sign mail with a domain you control
DKIM adds a cryptographic signature to a message. The public key is published in DNS under a selector name, while the sending system holds the private key.
A DKIM record name has this general shape:
selector1._domainkey.mail.example.com. TXT "v=DKIM1; k=rsa; p=BASE64_PUBLIC_KEY"
selector1 is chosen by the sender or provider. mail.example.com is the signing domain. The public-key value must be complete and exact; BASE64_PUBLIC_KEY above is a placeholder, not a publishable key.
Many services use CNAME delegation rather than a directly published DKIM TXT key. A generic shape is:
selector1._domainkey.mail.example.com. CNAME selector1.provider-managed-host.example.
The target in that example is deliberately fictional. Use the literal target provided by your sending platform. CNAME-based delegation can simplify key rotation, but it still requires that the queried record resolves correctly from public DNS.
For DMARC, the important point is that the DKIM d= domain should align with the visible From domain under your selected alignment mode. If you send From: alerts@mail.example.com, a DKIM signature with d=mail.example.com is an obvious alignment choice.
DMARC: tell receivers how to handle failures
DMARC is also a TXT record. Start in monitoring mode if you are not certain every legitimate stream is authenticated:
_dmarc.example.com. TXT "v=DMARC1; p=none; rua=mailto:dmarc-agg@example.com; adkim=r; aspf=r; pct=100"
The main tags here are:
p=none: request reports without asking receivers to quarantine or reject failures.rua=mailto:: destination for aggregate reports.adkim=randaspf=r: relaxed DKIM and SPF alignment.pct=100: apply the requested policy to all relevant mail.
After reviewing reports and correcting all legitimate senders, you can progress to p=quarantine and eventually p=reject where appropriate. Do not use a stronger policy as a cosmetic deliverability tactic; it is an anti-impersonation control that can block your legitimate mail if you missed a sender.
DNS records for receiving mail are separate
Do not confuse sending authentication with receiving configuration. An MX record tells other servers where to deliver mail addressed to a domain. If mail.example.com is used only in a From address and replies are routed elsewhere or not accepted, it may not need its own mailbox infrastructure. But if you publish reply-to@mailer.example.com and expect replies, that domain needs a real receiving path.
A common pattern is to send from notify@mail.example.com but use a monitored Reply-To: support@example.com. That can work well, provided it is clear to recipients and appropriate for the message.
DMARC alignment and subdomain policy, explained
DMARC is the technical reason the root-versus-subdomain question deserves careful thought. It tests whether the domain recipients see in From: aligns with a domain that passed SPF or DKIM.
Relaxed versus strict alignment
Suppose the message is:
From: Example <notify@mail.example.com>
DKIM-Signature: d=mail.example.com; s=s1; ...
Return-Path: <bounce@bounce.mail.example.com>
With strict DKIM alignment (adkim=s), the DKIM d= domain generally needs to exactly match mail.example.com. With relaxed alignment (adkim=r), a related subdomain relationship can qualify, subject to DMARC’s organizational-domain logic.
The same principle applies to SPF alignment through aspf. Relaxed alignment is a practical starting point for many organizations because a provider-managed bounce domain may be a subdomain of the From domain. Strict alignment gives tighter identity matching but can be harder to deploy across multiple systems.
Do not select strict alignment merely because it sounds more secure. Select it when you have inventoried every authorized sender and tested the actual envelope and DKIM domains they use.
The sp= tag is a default, not an override
A DMARC record at _dmarc.example.com can use sp= to define a policy for subdomains that do not publish their own DMARC record:
_dmarc.example.com. TXT "v=DMARC1; p=reject; sp=quarantine; rua=mailto:dmarc-agg@example.com"
Here, mail claiming From: user@example.com is covered by the root policy of reject, while subdomains without their own DMARC record inherit quarantine through sp=quarantine.
If mail.example.com publishes _dmarc.mail.example.com, that explicit subdomain record takes precedence for that subdomain. This lets you apply a stricter policy to your mature transactional stream while keeping a newer campaign subdomain in a monitored rollout.
A recommended architecture for common teams
There is no universal domain tree, but the following patterns work well because they map domain names to accountable mail streams.
Early-stage product
Customer support: support@example.com
Application email: notify@example.com
Envelope sender: bounce.example.com
DKIM domain: example.com or notify.example.com
This is intentionally simple. Use it if one team controls all sending and there is little marketing volume. Add a separate marketing subdomain before campaigns become a significant part of your volume or risk.
Growing SaaS company
Human mail: @example.com
Transactional product mail: mail.example.com
Security and identity notices: security.example.com
Billing notices: billing.example.com
Marketing: news.example.com
Bounce handling: bounce.mail.example.com
This design makes reporting and permissions clearer. It also means a campaign-platform migration is less likely to require changes to critical product-mail DNS.
Marketplace or multi-tenant platform
Use a platform-controlled sending domain for platform notices, then consider custom sending domains only when customers need their own branded identity and can complete authentication correctly. Do not let tenants choose arbitrary From domains without domain verification and abuse controls.
For a platform domain, a structure such as notify.platform.example can prevent ambiguity. For tenant domains, require ownership verification, DKIM configuration, DMARC-aware alignment, and a documented process for bounce and complaint handling.
How to test before and after you send
DNS records can look correct in a dashboard yet fail in public resolution, use the wrong host name, or produce an alignment mismatch in a real message. Test both DNS and delivered headers.
DNS and authentication checks
Use dig, nslookup, or a DNS lookup service to inspect published records:
dig TXT example.com +short
dig TXT _dmarc.example.com +short
dig TXT selector1._domainkey.mail.example.com +short
For browser-based checks, MXToolbox provides DNS, SPF, DKIM, DMARC, SMTP, and blacklist diagnostics, including record validation tools. (mxtoolbox.com)
Before declaring a record live, verify:
- The hostname is exact—especially the
_dmarcandselector._domainkeylabels. - Your DNS host did not accidentally append the zone name twice.
- A DKIM CNAME resolves to the intended destination.
- There is only one SPF record for each evaluated envelope domain.
- A DMARC record starts with
v=DMARC1and is published at the correct_dmarchost. - DNS propagation and TTL behavior have completed for the resolvers you care about.
Send a real message and inspect headers
Send a representative message—not just a blank test—from the same API or SMTP route your application uses. Open the full headers in a Gmail, Outlook, or other test mailbox and look for results similar to:
spf=pass
dkim=pass header.d=mail.example.com
dmarc=pass header.from=mail.example.com
Exact header formatting differs by receiver. What matters is that DKIM or SPF passes and aligns with the visible From domain so that DMARC passes.
Mail-tester.com can accept a test message and assess spam-related content, formatting, and mail-server configuration issues. Use it as a diagnostic input, not as a single definitive inbox-placement score. (mail-tester.com)
Also test your real message variants: password resets, receipts, long localized templates, emails with attachments, and campaign templates. The authentication may be identical, but content, links, and recipient expectations are not.
Sending through SMTP or an HTTP API does not change the domain decision
The root-versus-subdomain choice is independent of whether your application submits mail through SMTP or a REST API. Both methods eventually produce an email message with a From address, envelope sender, DKIM signature, and receiving-server delivery attempt.
With SMTP, your application typically authenticates to a relay and submits a message using commands such as EHLO, MAIL FROM, RCPT TO, and DATA. With an HTTP API, it submits JSON or another request format to a provider endpoint. The provider then performs the mail transport.
Your application should distinguish temporary failures from permanent failures in either model:
- SMTP 4xx responses, such as
421,450,451, or452, are generally temporary conditions and should be retried with bounded exponential backoff. - SMTP 5xx responses, such as
550, are generally permanent for that attempt and should be logged, classified, and often suppressed rather than retried indefinitely. - HTTP 429 generally indicates rate limiting; honor retry guidance if supplied.
- HTTP 5xx indicates a server-side failure and generally merits a controlled retry.
Never blindly retry the same application event without an idempotency strategy. A timeout after submitting a receipt could mean the provider accepted the message but your application never received the response. Store an event ID or idempotency key so a retry does not bill or notify a customer twice.
If you are choosing a provider or implementing either submission method, consult the email API reference and setup guides for provider-specific authentication records, request behavior, and event semantics. The general domain design remains the same across platforms.
Common mistakes to avoid
Treating subdomains as a reputation reset button
Opening a new subdomain after an inboxing problem may hide the symptom temporarily, but it does not resolve the complaint source, list quality, content issue, or brand-level trust problem. Fix the underlying mail program first.
Using a no-reply address for conversations that need replies
A no-reply sender is acceptable for some machine-only alerts, but it is frustrating for billing, access, or account messages where recipients reasonably need help. Use a monitored Reply-To address or make support contact information extremely clear.
Mixing marketing and password resets without monitoring
Even if both send from the root domain today, use distinct tags, streams, sending identities, and dashboards. As volume grows, move the marketing program to its own subdomain rather than discovering the need during a reputation incident.
Copying DNS examples without understanding them
A TXT record from a blog post may be syntactically valid but authorize the wrong service. A DKIM CNAME target may belong to a different provider. A DMARC policy might reject mail from systems you forgot existed. Always use values issued for your domain and sender.
Ignoring address quality
Domain architecture cannot compensate for invalid, abandoned, or mistyped recipient addresses. Validate at signup, process hard bounces promptly, and suppress addresses that repeatedly fail. For a quick pre-send check on individual addresses, use an email address verification tool alongside your own consent and bounce-management process.
Recommendation: choose clarity, then keep it stable
For most developer teams, start with a dedicated subdomain for transactional application email: mail.example.com or notify.example.com. Keep employee and relationship-driven mail at example.com. Put campaigns on a separate subdomain once they have distinct volume, ownership, or reputation risk.
The best implementation is not the one with the most subdomains. It is the one where every mail stream has a clear purpose, verified DNS, aligned authentication, responsible owner, tested reply path, and observable delivery outcomes.
Use the root domain when that is the established, trusted customer-facing identity and you can safely manage every sender attached to it. Use a subdomain when you need separation. In both cases, authenticate with SPF, DKIM, and DMARC; test full headers; monitor bounces and complaints; and avoid changing sender domains casually after customers have learned them.
FAQ
Is sending from a subdomain better for deliverability?
Not automatically. A subdomain helps you separate mail streams and diagnose problems, but mailbox providers still evaluate authentication, complaint rates, sending behavior, content, recipient engagement, and other signals. A well-managed root domain can deliver well; a poorly managed subdomain can perform badly.
Should transactional and marketing email use different subdomains?
Usually, yes—once both streams have meaningful volume or separate owners. mail.example.com for application mail and news.example.com for campaigns make authentication, DMARC reporting, and incident response easier to manage.
Does a subdomain need its own SPF, DKIM, and DMARC records?
It needs the records required by the identities it uses. If the subdomain is the envelope-sender domain, publish SPF there. If DKIM signs as that subdomain, publish its DKIM key or CNAME there. A subdomain can inherit DMARC policy from the parent’s sp= tag, but publishing an explicit DMARC record is useful when it needs a different policy or reporting setup.
Can I send from example.com but use bounce.example.com for bounces?
Yes. That is a common design. Ensure the bounce domain is correctly authenticated for SPF and that DKIM or SPF aligns with the visible From: ...@example.com domain so DMARC passes.
Should I use strict DMARC alignment for a subdomain?
Only after testing all legitimate senders. Strict alignment can tighten identity matching, but relaxed alignment is often easier when provider-managed envelope domains and multiple systems are involved. Start with visibility, verify real headers, then tighten policy deliberately.