FIELD NOTES · WEBSITE HANDOVER

Email DNS handover: two SPF records or two strings?

Synthetic teaching example for a website delivery brief. Not a client result, live account test or certification.

A line break in a screenshot is not a DNS record boundary

After a website or email supplier handover, a screenshot may show two pieces of SPF text. The important question is whether they are two separate TXT resource records or two character strings inside one record. Treating both situations alike can lead to a destructive “cleanup” that changes a working sender configuration.

Supplied DNS representationSelected SPF record countFinite conclusion
Two TXT records, each beginning v=spf12PERMERROR_MULTIPLE at selection
One TXT record with two strings; another unrelated verification record1ONE_RECORD_SELECTED_NOT_EVALUATED
Only an unrelated site-verification record0NONE; no supplied SPF policy, not a delivery diagnosis

Use the filled example

Download the finite Node checker and filled input. Run with Node 24 or newer; no account, API or network is used.

node checks.mjs spf-record-selection spf-record-selection.json

The input uses a nested array: each outer item is a TXT record, while inner strings are concatenated as one record. The first example has separate fictional sender-a and sender-b policies. The second splits one policy before -all and includes an unrelated site-verification record. The checker counts policy records; it does not evaluate include targets, DNS lookup limits or sender authorisation.

A safe handover evidence request

Ask for the exact DNS owner name, a timestamped RRset export, the agreed authorised senders and a redacted sample of the provider’s own configuration instructions. Keep screenshots as supporting material only. Confirm record boundaries with the DNS operator before discussing a change. Two senders do not imply that two independent SPF records should coexist.

Do not automatically merge includes, remove a sender or replace a policy with this teaching input. An include chain can have additional limits, and a record that selects successfully is not proof that mail passes SPF, DKIM or DMARC. Incoming server decisions and actual message headers need separate authorised testing.

All example domains are fictional. This resource performs no DNS lookup and makes no live email change. Its result is a narrow selection check for supplied ordinary lowercase v=spf1 examples, not a standards-complete SPF evaluator or a promise of inbox placement.

Primary facts and limits

RFC 7208, sections 3.2–3.3: Distinguishes multiple SPF records from multiple character strings within one TXT record.

Sources reviewed 15 October 2026. The supplied input and acceptance rules are original teaching design; check current platform versions and your actual delivery contract before implementation.

DNS selection and message delivery need different evidence