[ SPF ]

SPF for subdomains: why authorisation is not inherited automatically

Identify the exact sending subdomain, then publish or delegate its SPF policy deliberately rather than relying on the parent record.

By the EmailAuth research team

[ Key points ]

  • Query the exact SMTP identity rather than assuming root-policy fallback.
  • Choose independent policy, include or redirect by intended semantics.
  • Do not use wildcard results as a substitute for named sending inventory.
On this page

Publishing SPF for example.com does not automatically authorise mail using bounce.example.com as its envelope domain. SPF looks up policy for the identity being evaluated under RFC 7208 §4.4. There is no general parent-domain fallback that turns the root policy into an inherited policy for every child.

That matters when a new application introduces a custom return-path domain. The visible From address may stay unchanged while the domain relevant to SPF changes underneath it.

Start from a received message

Obtain a message received by a system you trust. Identify the SMTP MAIL FROM domain from trusted receiver evidence and distinguish it from the visible From field. For a null reverse path, HELO-related evaluation needs separate attention. Do not assume the root domain is the target just because it appears in the marketing copy or user interface.

Query TXT at the exact domain being evaluated. Record the owner name, response and authoritative servers. If the subdomain is delegated to another DNS zone or service, work with its actual operator rather than editing an unrelated parent-zone entry.

Choose explicit independence or shared policy

A child can have its own SPF policy tailored to its senders. This is often useful when billing, marketing and operational mail use different services. The authorisations can then be reviewed independently.

Where several identities genuinely need the same complete policy, SPF's redirect modifier in RFC 7208 §6.1 can centralise it. For example, the synthetic policy v=spf1 redirect=_spf.example.com at a child directs evaluation to an explicitly maintained policy target. The target must publish valid SPF. Redirect is used when no mechanism matches; an all mechanism in the original record prevents redirect from being used.

An include has different semantics under RFC 7208 §5.2: a pass from the included policy makes that include match, while other outcomes are processed according to the include rules. Do not swap include and redirect merely because both reference another name. Choose based on whether you are incorporating a sender set or delegating the final policy decision.

Do not use a wildcard as a substitute for inventory

DNS wildcard behaviour is more limited than “apply this to every subdomain”. Existing names and DNS tree structure affect whether wildcard synthesis occurs. RFC 7208 §3.5 discourages wildcard SPF publication and explains why extra records may be needed where names already exist.

For an important sending identity, publish an explicit, managed policy or supported delegation and test that exact name. A wildcard that appears to work for an unused test name does not prove that an established application subdomain gets the same answer.

Test the boundary with a concrete example

Illustrative example: example.com authorises documentation address 192.0.2.10, while bounce.example.com has no SPF policy. A connection from 192.0.2.10 using the root identity can pass; use of the child identity does not inherit that pass and normally yields none when there is no applicable record and no other lookup error.

If the child instead authorises only 198.51.100.20 with a final -all, a connection from 192.0.2.10 can fail for the child even while passing for the parent. This independence is useful: a marketing service need not acquire the same sender permissions as employee mail.

Manage the full lifecycle

Before adding a subdomain, assign a business owner, DNS operator and expected sender set. Preserve the approved policy and recovery instructions. After publication, test fresh messages using that exact envelope domain and record both the SPF result and any separate alignment assessment required by your wider authentication design.

At retirement, check whether the subdomain still serves delayed jobs or bounce processing. Do not remove a shared redirect target until all dependants have been reviewed. The child-domain inventory is complete when each used SMTP identity has an intentional policy and a named owner, rather than an assumption that the parent covers it.

Use the evidence for a decision

For a hypothetical billing rollout, record the actual child MAIL FROM name, its DNS operator, exact policy and test identity. If parent mail passes but child mail returns none, check the child lookup rather than adding more ranges to the parent. For shared redirect targets, retain a list of dependent identities and test negative cases as well as expected senders. No DNS delegation or policy was changed.

[ Takeaway ]

Query the exact SMTP identity rather than assuming root-policy fallback. Choose independent policy, include or redirect by intended semantics. Do not use wildcard results as a substitute for named sending inventory.

[ By role ]

What this means for you

Choose your role for practical next steps.

IT / Mail Admin

Query the exact name.

Parent-domain evidence does not establish child-domain authorisation.

Next steps

  1. Verify delegation and owner names.
  2. Choose include or redirect by their semantics.

CISO / SecOps

Use separation intentionally.

Independent child policies can narrow the sender set for each business function.

Next steps

  1. Review shared policy dependencies.
  2. Do not equate DNS separation with complete tenant isolation.

Founder / Non-technical

Give each sending identity an owner.

A new return-path subdomain is part of the mail architecture even when customers never see it.

Next steps

  1. Include it in vendor onboarding.
  2. Review dormant and retired identities.

[ FAQs ]

Frequently asked questions

Does root SPF automatically apply to subdomains?

No. SPF evaluates the exact domain identity; it does not generally fall back to the parent policy.

RFC 7208 §4.4

Which subdomain should I check?

Check the actual SMTP MAIL FROM domain, or the relevant HELO-derived identity for null reverse-path mail.

RFC 7208 §2.3 RFC 7208 §2.4

Can a child have different senders?

Yes. A child policy can authorise a different sender set from its parent.

RFC 7208 §4.4

When is redirect useful?

Use it when multiple domains should share a complete SPF policy and the target is deliberately maintained.

RFC 7208 §6.1

Can redirect be combined with -all?

Any all mechanism makes redirect inapplicable, regardless of the modifier’s position. Avoid that combination when you intend to delegate the policy.

RFC 7208 §5.1 RFC 7208 §6.1

Is include the same as redirect?

No. Include incorporates a match based on the target’s pass result; redirect delegates evaluation after no mechanism matches.

RFC 7208 §5.2 RFC 7208 §6.1

Will a wildcard cover every child?

No. DNS wildcard synthesis depends on the existing namespace. Test explicit names and avoid relying on a wildcard as an inventory shortcut.

RFC 7208 §3.5

What should I check before removing a shared target?

Identify every dependent subdomain and migrate or retire its policy first.

[ Sources ]

Sources

  1. RFC 7208

    Sections §2.3 · §2.4 · §3.5 · §4.4 · §5.1 · §5.2 · §6.1

[ Glossary ]

Glossary

SPF
Authorization evaluation for a connecting IP and the relevant SMTP identity.

RFC 7208 §2.4

SPF redirect
Fallback evaluation of an explicitly referenced policy when no local mechanism matches; any all mechanism disables redirect.

RFC 7208 §6.1

Enterprise provenance

Why top financial institutions and governments retired their email security dashboards.

Traditional email authentication platforms sell you a dashboard and ask your engineers to do the labour. In high-stakes environments, manual oversight means delayed enforcement, configuration drift and unmonitored shadow domains.

EmailAuth is the agentic email provenance platform. Our agents enforce p=reject, keep third-party senders aligned and move your domains to full RFC 9989 compliance, the new DMARC standard,, with human-in-the-loop auditability.

Governments Large enterprises Tier-1 financial institutions

SaaS · Dedicated tenancy · Air-gapped on-prem · BYOK encryption

Knowledge Base