Use this guide only if you send email through a third-party SMTP integration such as SendGrid, Mailgun, Postmark, or Elastic Email.
If you use KartraMail, you do not need to create or edit an SPF record. SPF is already included as part of your DKIM setup.
What is SPF?
SPF (Sender Policy Framework) is a DNS record that lists services you use to send emails through your domain. When a message is sent, email providers check this list to confirm it came from an approved source.
An SPF record is required only when:
you send email from your SMTP provider, and
your domain does not already have an SPF record authorizing that provider
Every domain you use as a send-from address must have its own SPF record. For example:
If you send emails from info@yourbrand.com, you need an SPF record for yourbrand.com
If you send emails from team@yourcourses.co, you need an SPF record for yourcourses.co
Step 1: Check whether your domain already has an SPF record
You can check your domain’s DNS using:
your domain registrar’s DNS management screen
any online SPF lookup tool
Look for a TXT record beginning with: “v=spf1”
If your domain does not have an SPF record: Create a new one (instructions below).
If your domain already has an SPF record: You must update the existing record, not create a second one. Having more than one SPF record will invalidate them all.
Step 2: Get SPF details from your SMTP provider
Your SMTP provider will tell you what to include in your SPF record. This may be:
an include value (e.g., include:sendgrid.net)
an IP address
a hostname
Each SMTP service has its own required value. Check their documentation or support to confirm the correct entry.
Step 3: Create or update your SPF record
SPF records are added as TXT records in your domain’s DNS.
If you are creating a new SPF record, it will look similar to this: v=spf1 include:smtp-service.com ~all
Replace the include: value with the one provided by your SMTP service.
If you are updating an existing record, add your SMTP provider’s entry to the existing SPF record, for example:
Before: v=spf1 include:_spf.google.com ~all
After adding your SMTP provider: v=spf1 include:_spf.google.com include:smtp-service.com ~all
What does ~all mean?
~all (soft fail) is the recommended default. It tells email providers that mail not matching your approved senders should be treated as suspicious but not immediately rejected.
Step 4: Publish your SPF record
Log in to your domain registrar or DNS provider
Open DNS Settings
Add (or update) a TXT record
Use:
Host / Name: @
Value / Content: your full SPF record
TTL: Default / Automatic
Save your changes
SPF updates usually appear within minutes but may take up to an hour.
Step 5: Test your SPF record
Use any SPF checker tool (such as Free SPF Record Checker) to confirm:
the record is published
syntax is valid
the correct SMTP provider is included
you have only one SPF record
If something looks wrong, review:
spacing
duplicate v=spf1 entries
missing "include:" statements
copy/paste errors
