Generate an SPF record for your domain

Tick your mail providers, add IPs or other senders, and copy one valid record with its lookup count against the limit of 10.

An admin approves every new account by hand. Nothing is created until then. We reply by email; no newsletter, no sequence.

  • Google and Microsoft presets
  • Lookup counter
  • No email required
app.salescrew.io/data-bank
The contact bank with segments and suppression
Who sends mail for this domain?

Your SPF record (TXT, host @)

v=spf1 include:_spf.google.com ~all
  • 1 direct DNS lookup of the 10 allowed. Each include can add nested lookups of its own.

The short answer

  • An SPF record is one TXT record at your domain's root that lists every server allowed to send mail as that domain.
  • Each domain gets exactly one SPF record. Two records make SPF fail with permerror.
  • SPF evaluation allows at most 10 DNS lookups; include, a, mx, exists and redirect each count, and ip4 and ip6 don't.
  • Google Workspace alone needs v=spf1 include:_spf.google.com ~all, and Microsoft 365 alone needs v=spf1 include:spf.protection.outlook.com -all.

How the generator builds the record

The record is assembled in a fixed order, left to right, because receivers stop at the first match. IP entries come first since they cost no lookups:

  1. v=spf1, always first.
  2. Each IPv4 entry as ip4: and each IPv6 entry as ip6:.
  3. a and mx if you ticked them.
  4. One include: per provider or extra sender, with duplicates removed.
  5. Your all rule last: ~all, -all or ?all.

Direct lookups = includes + a + mx. The counter shows that number against the limit of 10 in RFC 7208. Nested includes inside a provider's own record add more lookups, so leave room.

Provider values the presets use

ProviderInclude valueRecord when it's the only sender
Google Workspaceinclude:_spf.google.comv=spf1 include:_spf.google.com ~all
Microsoft 365include:spf.protection.outlook.comv=spf1 include:spf.protection.outlook.com -all
Parked domain, no mailnonev=spf1 -all

Values checked on Google Workspace's SPF setup guide (knowledge.workspace.google.com) and Microsoft Learn's SPF configuration page (updated July 2026), September 2026.

Three setups and the record each one produces

Google Workspace only, soft fail. Tick Google and keep ~all. You get v=spf1 include:_spf.google.com ~all, with 1 direct lookup.

Microsoft 365 plus one office server. Tick Microsoft 365, enter 203.0.113.10 and pick -all. You get v=spf1 ip4:203.0.113.10 include:spf.protection.outlook.com -all. The IP costs no lookup, so the count stays at 1.

Google plus your own servers and a second sender. Tick Google, a and mx, and add mailer.example.net. You get v=spf1 a mx include:_spf.google.com include:mailer.example.net ~all, which uses 4 direct lookups.

One record per sending domain, including the cold email ones

Every domain in your mailbox pool needs its own SPF, DKIM and DMARC. SalesCrew connects Gmail, Outlook and cPanel mailboxes over IMAP and SMTP, then sends cadences across them with per-mailbox and per-domain daily caps.

Questions

How do I create an SPF record?
List every service that sends mail as your domain, then publish one TXT record at the root that starts with v=spf1, names each sender, and ends with an all rule. The generator above assembles that line for you.
What is the SPF record for Google Workspace?
Google's setup guide gives v=spf1 include:_spf.google.com ~all when Google Workspace is the only sender. Add other senders before the ~all if more services send as your domain.
Can a domain have two SPF records?
No. Two SPF records make receivers return permerror, and SPF fails for every message. Merge all senders into one record instead.
Should I use ~all or -all?
Microsoft recommends -all once DKIM and DMARC are in place, and Google's guide uses ~all. Start on ~all while you confirm every sender is listed, then tighten.

Authenticated domains, then a sender that respects them

SalesCrew runs cadences on your own mailbox pool with daily caps, cooldowns and suppression checked at send.

An admin approves every new account by hand. Nothing is created until then. We reply by email; no newsletter, no sequence.