Skip to main content

Free tool

SPF Record Generator

Pick the services that send your mail and copy a correct SPF record — provider includes, your own IPs, and the enforcement qualifier set for you, with a live count against the 10-lookup limit.

Sending providers

Your SPF record

v=spf1 include:_spf.google.com -all

DNS lookups: 1 / 10

Publish this as a single TXT record at your root domain (yourdomain.com). A domain may have only one SPF record.

What goes into an SPF record

Tick the providers that send your mail and the generator adds the right include: for each — Google Workspace, Microsoft 365, SendGrid, Mailgun, and more. Add any static sending IPs, optionally authorize your own mx servers, and pick the enforcement qualifier. The result is a single, valid record ready to publish.

Watch the lookup budget

The most common way SPF silently breaks is exceeding the 10-DNS-lookup limit, so the generator counts your lookups live and warns you before you go over. After publishing, validate the record with the SPF checker, and remember SPF is only one leg of the stool, so pair it with DKIM and an enforcing DMARC policy to actually stop spoofing.

Frequently asked questions

How do I create an SPF record?

List every service that sends email for your domain — your mail platform, marketing tools, and transactional senders — then publish a single TXT record at your root domain starting with v=spf1 and ending with an 'all' qualifier. This generator builds that string from common providers and your own IPs.

Why can I only have one SPF record?

The SPF specification requires exactly one v=spf1 TXT record per domain. Publishing two causes a permerror that breaks authentication for all your mail. Combine every sending source into one record using multiple include: and ip4:/ip6: mechanisms.

How do I stay under the 10-lookup limit?

Each include:, a, mx, ptr, exists, and redirect counts as a DNS lookup, capped at 10. If you exceed it, replace some includes with their published IP ranges (ip4:/ip6:), remove unused senders, or use an SPF-flattening service. The generator shows your live lookup count.

Should I end with ~all or -all?

Start with ~all (soft fail) while you confirm every legitimate sender is listed, so nothing is rejected during rollout. Once your DMARC reports show all real mail passing, switch to -all (hard fail) for the strongest protection against spoofing.

Authenticated senders, protected brand.

Once your email is locked down, PhishEye guards the domains, sites, and apps attackers use to impersonate you elsewhere.