Speak to an Email Deliverability Consultant FOR FREE
Trusted by 1000+ companies
Publishing an SPF record means creating a TXT record in your domain's DNS zone. Most domain registrars and DNS hosting providers (GoDaddy, Cloudflare, Route 53, Namecheap) have a DNS management console where you add records manually.
Access your domain registrar or DNS hosting control panel. Look for "DNS Management," "Zone Editor," or "Advanced DNS."
Find the domain you're configuring SPF for. Select it to open the record editor.
Choose "Add Record" or "Create Record." Set the record type to TXT.
Leave the hostname field blank (or enter @) to publish the SPF record at your root domain. Some providers require _spf as the hostname — check your DNS documentation.
Copy the SPF record from EmailWarmup.com's generator and paste it into the "Value" or "TXT Content" field.
Use the default TTL (usually 3600 seconds / 1 hour) or set a custom value. Lower TTL values propagate changes faster but increase DNS query load.
Click "Save," "Add Record," or "Publish" to commit the SPF record to DNS.
Wait 10-30 minutes for DNS propagation. Use EmailWarmup.com's free SPF checker to confirm the record is published correctly and contains no syntax errors.
An SPF record starts with v=spf1 and ends with an all mechanism. Everything in between defines which mail servers and IP addresses can send email for your domain.
| Mechanism | What It Does | Syntax Example | DNS Lookups |
|---|---|---|---|
| v | Protocol version (always spf1) | v=spf1 | 0 |
| ip4 | Authorizes IPv4 addresses or CIDR ranges | ip4:192.168.0.1 ip4:10.0.0.0/24 | 0 |
| ip6 | Authorizes IPv6 addresses or ranges | ip6:2001:db8::1 | 0 |
| a | Authorizes IPs in your domain's A records | a or a:example.com | 1 per domain |
| mx | Authorizes IPs in your domain's MX records | mx or mx:example.com | 1 per domain |
| include | Delegates authorization to another domain's SPF policy | include:_spf.google.com | 1 per include |
| exists | Passes if an A record exists for the specified domain | exists:%{i}.example.com | 1 |
| redirect | Replaces your entire SPF policy with another domain's policy | redirect=example.com | 1 |
| ptr | Checks reverse DNS hostname (deprecated, RFC 7208) | ptr | 1 per PTR |
| all | Catch-all for non-matching sources (always last) | -all ~all ?all | 0 |
SPF qualifiers control what happens when a sending source matches (or doesn't match) a mechanism in your record.
| Qualifier | Name | What It Means |
|---|---|---|
| + | Pass | Explicitly authorized (default, rarely written) |
| - | Fail (Hard Fail) | Reject the email outright |
| ~ | Soft Fail | Accept, but mark as suspicious. |
| ? | Neutral | No policy (same as no SPF record) |
Your SPF record doesn't protect against spoofing because the email technically passes SPF for attacker.com (not yourcompany.com). You need a proper email authentication setup to improve your inbox rate. At EmailWarmup.com, you can talk to an email deliverability consultant for free and let our team:
Book your time today and make sure your email infrastructure is 100% bulletproof — so your emails land in the inbox instead of spam or promotions.
Here’s everything you need to know about our SPF Generator: