Name and mail

Two SPF records on one domain: find the conflict

A domain should publish one SPF policy for a given owner name. Two separate TXT records beginning v=spf1 are not two policies a receiver can safely combine: SPF evaluation can return permerror. Use DNS Lookup to inspect the complete TXT answer before editing anything.

A TXT answer includes an SPF policy beginning with v=spf1 alongside other verification text.
Count SPF policies, not all TXT records; other verification records can coexist with SPF.

Distinguish duplicate policies from split text

Look up TXT for the exact domain used by the envelope sender. The visible From address may differ from that identity. A subdomain has its own policy lookup; the root domain’s policy does not automatically apply to every subdomain.

The example below has two separate SPF records at the same owner name. A receiver does not choose the more permissive one. By contrast, multiple character strings inside one TXT resource record are concatenated as one record; that is not automatically a duplicate policy.

example.com TXT "v=spf1 include:_spf.vendor-a.example -all"
example.com TXT "v=spf1 include:_spf.vendor-b.example ~all"

# Two separate SPF policies: review and reconcile.
# The vendor names above are illustrative, not deployable settings.

Inventory legitimate senders before replacing the policy

Identify every system that sends envelope mail using this domain: staff mail, transactional services, support tools and marketing systems. Obtain each provider’s current SPF instructions directly. Do not copy an include from an unrelated domain or an old blog example.

Compose one reviewed policy that covers the legitimate systems. The include mechanisms can cause additional DNS lookups; SPF has an evaluation lookup limit. PageUtil shows TXT answers but does not recursively evaluate SPF or calculate its full lookup budget.

Keep the intended final qualifier policy explicit. Replacing -all with +all is not a fix: +all authorizes arbitrary senders. Consider staged testing and inspect delivery evidence before tightening a policy.

TXT-answer distinctions
Observed textMeaning
Two separate v=spf1 records at the same ownerConflicting SPF policy records
One SPF record split into quoted character stringsMay be one valid logical policy
SPF plus a vendor ownership-verification TXTDifferent purposes; not inherently conflicting
One root policy plus one subdomain policyDifferent owner names; inspect the actual mail identity

Verify DNS and a real delivery separately

Save the previous record, update the authoritative zone, and allow for cached answers. Query TXT again after the relevant TTL. Confirm there is one SPF policy at the intended owner, not merely one line in the provider’s editing interface.

Then send a controlled test message and inspect Authentication-Results at the receiving system. DNS visibility alone does not prove that a message used the expected envelope domain, passed SPF or satisfied DMARC alignment.

If delivery still fails, use the bounce code and message headers to choose the next check. SPF does not confirm mailbox existence, override content filtering or guarantee delivery.

References

Use the linked specifications and product documentation to check behavior in your own environment.

Continue troubleshooting

Related tools

Frequently asked questions

Are all multiple TXT records invalid?

No. The conflict is multiple SPF policies at one owner name, not unrelated TXT records.

Can PageUtil fully validate an SPF policy?

No. DNS Lookup displays answers and does not perform recursive SPF evaluation.

Does an SPF pass guarantee inbox delivery?

No. Mailbox state, authentication alignment, filtering and server policy still affect delivery.

Need help with a tool or found a bug?

Report an issue directly to engineering. No accounts required — all client data remains private on your device.

Report an Issue →