If you’re sending emails from a custom domain like yourname@yourcompany.com, then your domain will have something called an SPF record. This record is part of your domain’s DNS settings and it tells email services (like Gmail or Outlook) which servers are allowed to send emails on your behalf.
When something’s wrong with your SPF record, your emails might go to spam, or worse, not get delivered at all. Here are some of the most common SPF errors, what they mean, and how you can fix them.
1. Too Many DNS Lookups
Example error:
SPF PermError - too many DNS lookups (13 out of 10)
What’s going on:
SPF records are only allowed to do 10 DNS lookups. If you include too many services like Mailchimp, Google Workspace, Outlook, etc. and you might hit that limit.
What this means:
If the limit is exceeded, the SPF check will fail. And when that happens, your emails could be rejected or flagged as spam.
How to fix it:
Remove any services you're no longer using. (Verify with your IT Team)
Don’t include the same service more than once.
Use a free tool to “flatten” your SPF record (this turns includes into actual IP addresses).
Consider sending from a subdomain (like email.yourdomain.com) for specific services.
2. Duplicate Includes
Example warning:
include:relay.mailchannels.net already included
What this means:
Your SPF record includes the same service more than once.
How to fix it:
Delete the duplicate. You only need to include a service one time.
3. Invalid or Unsupported Entries
Example error:
Unsupported spf part alloutlook.com
What’s going on:
There’s something in the SPF record that doesn’t belong - it could be a typo, or an invalid format.
How to fix it:
Double-check the entry. Make sure you're only adding domains or services that provide SPF instructions.
4. More Than One SPF Record
What it may look like (example):
You might see two SPF entries like this in your DNS settings:
v=spf1 +a +mx include:_spf.example.com ~all
v=spf1 include:another-service.com -all
What’s going on:
There should only be one SPF record per domain. Having two causes SPF not to work.
How to fix it:
Merge them into one record. For example:
v=spf1 +a +mx include:_spf.example.com include:another-service.com ~all
5. Missing “all” or “redirect” at the End
Example warning:
It is better to use either a "redirect" or an "all" mechanism
What this means:
The SPF record ends without a final instruction. It’s considered a best practice to end with either ~all (soft fail) or -all (hard fail), so email services know what to do if a message doesn’t match.
How to fix it:
Add one of these to the end of your SPF record:
~all — soft fail (recommended for most domains)
-all — hard fail (use only if you're 100% sure you've covered everything)
6. Missing SPF Record Entirely
What it looks like:
There’s no SPF record at all in your domain’s DNS settings.
What’s going on:
If your domain doesn’t have an SPF record, email providers have no way to verify if emails coming from your domain are legitimate. That makes it much easier for spam and phishing emails to be sent pretending to be you.
What this means:
Without SPF, your emails are more likely to go to spam or be blocked completely. DMARC (another email security check) depends on SPF to work properly.
How to fix it:
You’ll need to create a new SPF record in your domain’s DNS. A basic example looks like this:
v=spf1 include:spf.protection.outlook.com ~all
That example is for a domain using Microsoft 365, but your SPF record should be based on the email service(s) you use.
*Always ensure you check with your IT department or the individual responsible for DNS management in your company before making any changes or updates to your SPF record.
SPF Checklist
Only one SPF record per domain
Keep it under 10 DNS lookups
Remove duplicates and unused services
End your record with ~all or -all
Use SPF testing tools to check your setup
Reference Sites:
https://www.kitterman.com/spf/validate.html
https://mxtoolbox.com/spf.aspx
https://mxtoolbox.com/dmarc/spf/what-is-spf-flattening
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article