SPF Record Not Found: What It Means and How to Fix It

Last updated 2026-05-29 — By The InboxGreen Team

An "SPF record not found" error means no TXT record starting with v=spf1 exists at the root of your domain. Without SPF, receiving mail servers cannot verify which sending services are authorized to send email on your behalf. This increases the chance your emails are treated as suspicious or spoofed. Fix it by adding a TXT record at @ (root) with your email provider's SPF include.

What it means

SPF (Sender Policy Framework) is a DNS record that lists the mail servers and services allowed to send email from your domain. When a receiving server gets an email from your domain, it looks up your SPF record to check whether the sending IP is on the list. If no SPF record exists, the check returns "none", not a hard fail, but a weak signal that reduces trust.

Why it matters

Missing SPF is one of the most common causes of silent filtering. Gmail, Outlook, and Yahoo all use SPF as an early signal. Without it, your domain looks unauthenticated. SPF is also required for DMARC alignment, and you cannot have a meaningful DMARC policy without both SPF and DKIM in place.

Example SPF records by provider

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

Replace the include with your email provider's SPF mechanism. Common examples: Google Workspace: include:_spf.google.com; Microsoft 365: include:spf.protection.outlook.com; SendGrid: include:sendgrid.net. If you use multiple senders, combine them into one record: v=spf1 include:_spf.google.com include:sendgrid.net ~all

How to fix it

Cloudflare

  1. Log in to Cloudflare and open your domain.
  2. Go to DNS > Records > Add record.
  3. Type: TXT
  4. Name: @
  5. Content: v=spf1 include:YOUR-PROVIDER ~all (replace with your actual provider)
  6. TTL: Auto
  7. Click Save.

Namecheap

  1. Log in to Namecheap > Domain List > Manage your domain.
  2. Go to Advanced DNS > Add New Record.
  3. Type: TXT Record
  4. Host: @
  5. Value: v=spf1 include:YOUR-PROVIDER ~all
  6. TTL: Automatic
  7. Save the record.

GoDaddy

  1. Log in to GoDaddy > DNS > Manage Zones > select your domain.
  2. Click Add Record.
  3. Type: TXT
  4. Name: @
  5. Value: v=spf1 include:YOUR-PROVIDER ~all
  6. TTL: 1 hour
  7. Click Save.

How to verify the fix

  1. Wait 5 to 30 minutes for DNS propagation.
  2. Run your domain through the InboxGreen free checker.
  3. SPF should now show PASS or WARN instead of "not found".
  4. If it still shows not found, verify the record was saved at the root (@) and starts exactly with v=spf1.

Check your fix right now

Run your domain through InboxGreen's free checker to confirm the issue is resolved.

Common mistakes

  • Publishing two SPF records. Only one TXT record starting with v=spf1 is allowed. Multiple records cause a PermError.
  • Using subdomain or mail as the host instead of @. SPF must be at the root domain.
  • Ending the record with ?all (neutral) instead of ~all or -all. Neutral gives no guidance to receivers.
  • Copying the include without checking your actual sending provider. Using the wrong include has no effect.

Frequently asked questions

What is the difference between ~all and -all in SPF? +

Tilde (~all) is softfail: it suggests the email is suspect but receivers still deliver it, usually with a lower trust score. Dash (-all) is hardfail: it instructs receivers to reject mail from unlisted senders. Start with ~all until you are confident your SPF record lists every legitimate sender, then move to -all.

Can I have two SPF records? +

No. The SPF specification allows only one TXT record starting with v=spf1 per domain. If you need to authorize multiple sending services, combine them into a single record using multiple include mechanisms.

What SPF record do I need for Google Workspace? +

For Google Workspace, use: v=spf1 include:_spf.google.com ~all. If you send through other services too, add their includes to the same record.

What SPF record do I need for Microsoft 365? +

For Microsoft 365, use: v=spf1 include:spf.protection.outlook.com ~all. Never create a second SPF record. Merge all includes into the existing one.


Related fix guides