Free tool, no signup
Free SPF record generator
Pick the services that send email as your domain and copy one SPF record. We count its DNS lookups live, including includes inside includes, against the limit of 10.
Your SPF record
- Type
- TXT
- Name
- @
v=spf1 ~allDNS lookups0 / 10
- Note: No senders yet: this record says no server may send as your domain. Publish it, with -all, only for a domain that never sends email.
Add it as a TXT record on the domain you send from (@ is the domain itself). A domain has one SPF record: merge services into it instead of adding a second.
Check a domain’s live SPF recordHow to create your SPF record
- Tick your email provider: Google Workspace or Microsoft 365.
- Add the include of every other service that sends as your domain, such as your cold email tool, CRM, newsletter or billing system. Each one documents its include.
- Add ip4 or ip6 addresses only for mail servers you run yourself.
- Choose
~allor-all, then copy the record. - Publish it as a TXT record on the domain you send from, replacing your current SPF record, and run the SPF checker.
The limit of 10 DNS lookups
Every include, a, mx, ptr, exists and redirect costs a DNS lookup, and so does every include inside an include. Above 10, SPF fails with a permanent error. ip4, ip6 and all cost nothing.
The meter asks DNS for each include’s record as you add it, so the count is today’s real number: providers change their records over time. If you are close to 10:
- remove services that no longer send for you;
- move a sending tool to a subdomain, such as mail.yourdomain.com, with its own SPF record;
- replace an include with ip4 or ip6 ranges only when the vendor documents them as stable.
~all or -all?
Both tell receivers that servers you did not list are not yours. Google’s setup guide recommends ~all (soft fail). Microsoft recommends -all (fail) for domains that also have DKIM and DMARC, so DMARC can act on mail that fails SPF. Avoid +all, which lets any server send as you, and ?all, which says nothing.
SPF is not enough on its own
SPF checks the envelope sender (the Return-Path), which many sending tools set to their own domain. Then SPF passes for them, not for you, and does not help your DMARC. Set up DKIM on your domain in each tool as well.
SPF does not carry over: each domain and subdomain you send from needs its own record. If you send cold email from a separate domain, build a record for it too, then add DMARC with the DMARC record generator.
Questions
Frequently asked questions
What is the SPF record for Google Workspace?
v=spf1 include:_spf.google.com ~all, when Google Workspace is the only service that sends as your domain. Add an include for each other service before ~all.
What is the SPF record for Microsoft 365?
v=spf1 include:spf.protection.outlook.com -all for most Microsoft 365 domains. Government clouds and Microsoft 365 operated by 21Vianet use other includes, listed on Microsoft’s page.
Can I have two SPF records?
No. If a domain has more than one v=spf1 record, receivers return a permanent error and SPF fails. Merge every service into one record, which is what this generator builds.
What happens above 10 DNS lookups?
A receiver that needs an eleventh lookup stops and returns a permanent error, so SPF fails. Checks stop at the first match, so some mail may still pass, which makes the problem easy to miss.
Does a domain that never sends email need SPF?
Yes. Publish v=spf1 -all so no server can send as it, and a DMARC record with p=reject. Microsoft recommends both for parked domains.
Official sources
What this page is based on
- IETF RFC 7208: Sender Policy Framework (SPF)
- Google Workspace: Set up SPF
- Microsoft Learn: Set up SPF for your Microsoft 365 domain
- Microsoft Learn: Set up DMARC to validate email in Microsoft 365
Checked October 27, 2026. Mailbox providers change their rules; the linked pages are authoritative. This tool reads public DNS only and is not a guarantee of inbox placement.
Your domain is ready. Who should you email?
Looply finds people showing buying signals, scores them against your ideal customer profile and sends personalized cold email from your own connected inboxes.