Less boo. More booked. Halloween offer: 30 days free on any paid plan. Claim 30 days free
Free tool ยท no signup
Tick the services that send email as your domain, add any server IPs, and this tool writes one valid SPF record for you to publish as a TXT record. It then counts the record's DNS lookups through every include, because a record that needs more than 10 is ignored by receivers.
Any other sender's include, one per line. Copy it from that tool's own setup page.
Your own servers. IPv4 or IPv6, with an optional /prefix.
v=spf1 ~all
Add it as a TXT record with the host @ (your bare domain). Many DNS hosts want only the part before your domain (for SPF, @).
After you publish it, confirm what the world sees with the SPF checker. Then add a DMARC record.
An SPF record is one line of text: v=spf1, then the senders you authorize, then an ending that says what to do with everyone else. The generator puts the terms in a fixed order and drops duplicates, so the output is always a single record.
Each include below is copied from that provider's own documentation, read on 14 October 2026. Providers can change these, so if a sender's setup page shows something different, use theirs.
Changes usually show within minutes and always within the record's TTL. Then run the SPF checker on the live domain to confirm receivers read the same record you built.
SPF alone does not get cold email into the inbox. Gmail and Yahoo also want DKIM and a DMARC record. The walkthrough in SPF, DKIM and DMARC for cold email covers all three, and the DMARC record generator builds the last one.
No. A domain or subdomain may have only one SPF record. With two, receivers return a permanent error and treat SPF as failed. Put every sender into the one record this tool builds, and delete any older v=spf1 record at the same name.
A receiver stops evaluating an SPF record after 10 DNS lookups and treats it as a permanent error. Each include, a, mx, exists and redirect term costs one, plus whatever the included record itself uses. ip4 and ip6 terms cost none. The count button on this page follows every include for you.
~all (soft fail) marks mail from unlisted senders as suspicious. -all (hard fail) asks receivers to reject it. Microsoft's own guidance recommends -all when DKIM and DMARC are also in place. If you are unsure you have listed every sender, start with ~all and tighten later.
At your DNS host (Cloudflare, GoDaddy, Namecheap, Route 53), as a TXT record on the bare domain. Each subdomain that sends mail needs its own SPF record, because the record on the main domain does not cover it. Providers such as Google Workspace and Microsoft 365 have no SPF setting of their own.
A provider is listed only when its SPF include value is printed in its own documentation and we have read it. For any other tool, copy the include from its setup page into the Other includes box. The generator checks the format and counts the lookups.
Check any domain's SPF, DKIM, DMARC, and MX records in seconds.
Validate an SPF record: one record, 10-lookup limit, and a safe ending.
Look up a DKIM key by selector and check its type, size and test mode.
Look up a DMARC policy, reporting address, pct and alignment.
Build a DMARC record, starting at p=none with reports, in plain words.
List a domain's mail servers in priority order and spot a missing or null MX.
Check a domain or mail server IP against Spamhaus, SURBL, URIBL and more.
Scan a subject line and email body for spam-trigger phrases.
Get a day-by-day sending ramp schedule for a new or existing mailbox.
Check text-to-HTML ratio, images, links, and tracking pixels in an email.
Warmerly re-checks SPF, DKIM, DMARC and blocklists on every sending domain daily and warms your mailboxes while it does. Free plan, no card. Paid plans from $19/month.