A domain can have only one SPF record. If yours has two, many mail servers treat SPF as broken, and your email can land in spam or be refused. The fix is to merge them into one record.
Overview
SPF is a TXT record that starts with v=spf1. It lists who is allowed to send email for your domain, and receiving servers read it every time your mail arrives. If a receiver finds two records starting with v=spf1, the standard says the result is an error, so the check fails for every message, even from senders you listed.
Why it happens
- You added a new service (Microsoft 365, Google Workspace, Zoho, Mailgun or an old web host) and its setup guide said "add an SPF record".
- Each guide added its own record instead of editing the one you already had.
- Records from an old provider were never removed after you moved.
What it means
Your email may go to spam or bounce, and reports from Gmail or Microsoft show SPF failures. A domain can have many TXT records, and that is normal: verification codes, DKIM keys and DMARC are all TXT records and must stay. Only the records that start with v=spf1 are limited to one.
How to fix it
- Find your SPF records. Look up the TXT records of your domain on the page where your DNS is hosted, or with a free TXT lookup tool. Count how many start with
v=spf1. - List everything that sends email as you. Your mailboxes (Microsoft 365, Google Workspace, Zoho or SakuraHost email), newsletter or invoice tools (such as Mailgun), and your website's contact form.
- Write one record that includes all of them. Use the table below.
- Save the merged record and delete every other record that starts with
v=spf1, so exactly one remains. Leave your other TXT records alone. - Test. Wait a few minutes, send an email to a Gmail address, open the message, choose Show original and check that SPF says PASS.
| Service | Add this to your SPF record |
|---|---|
| Microsoft 365 | include:spf.protection.outlook.com |
| Google Workspace | include:_spf.google.com |
| Zoho Mail | include:zoho.com |
| Mailgun | include:mailgun.org |
| SakuraHost hosting and email | +a +mx |
Example for a domain on Microsoft 365 that also sends through Mailgun:
v=spf1 include:spf.protection.outlook.com include:mailgun.org ~all
Example for a domain on SakuraHost email that also sends through Mailgun:
v=spf1 +a +mx include:mailgun.org ~all
Rules worth knowing
- One SPF record per domain, on the main domain (the
@record), not onwww. - End with
~all(soft fail) while you are still adding senders. Move to-all(strict) only when you are sure the list is complete. - An SPF record may cause no more than 10 DNS lookups in total. Each
include:counts, so remove services you no longer use.
Still need help? Get support
Open a support ticket
A ticket is the best way to get this fixed: it keeps your details, and we reply in the ticket.
Prefer to talk? Call 0758 309 999 (fastest line). If that line is busy, call 0753 930 000 (longer wait).
Related articles
- Setting Up SPF, DKIM, and DMARC Records for Email Authentication
- Emails Going to Spam or Not Reaching Gmail: How to Fix It
- Complete Guide to DNS Records: A, CNAME, MX, TXT Explained
- Keep Your Email Working When Your Website Is on Netlify or Vercel
Frequently asked questions
Can a domain have more than one TXT record?
Yes. A domain can have many TXT records. Only one of them may start with v=spf1.
Should I end my SPF record with ~all or -all?
Use ~all while you are still adding senders, and -all only when you are sure every sender is listed.
How long until the fix works?
Usually within minutes, and up to a few hours, depending on the TTL of the old records.
Written by Jumbe Nylon, Founder & CTO, SakuraHost. Updated October 2026.