Defaults.Exposed

Defaults.Exposed › Setup › SPF

How to set up SPF on AWS Route 53

Add an SPF record in your Route 53 hosted zone so mailbox providers can tell your real email from forgeries.

Why this matters to your business

SPF (Sender Policy Framework) is a short note in your domain’s DNS that lists which mail servers are allowed to send email using your name. When someone receives a message claiming to be from you, their mail provider checks that list. If the sending server isn’t on it, the message looks suspicious — and either lands in spam or gets blocked.

In plain terms: SPF makes it harder for someone to impersonate your business by email, and it helps your genuine emails reach the inbox instead of the junk folder. It is one record, it is free, and it takes a few minutes.

Before you start: is Route 53 actually running your DNS?

This is the step most people get wrong. A DNS record only works if Route 53 is the one answering DNS questions for your domain.

Route 53 is a DNS host, not a mailbox provider — it answers DNS but it does not run your inboxes. Two things matter here:

Find one fact first: who sends your email?

SPF must name every service that sends mail for your domain. Common examples are Google Workspace, Microsoft 365, or whatever provider hosts your mailboxes. Each one publishes a value to put in your SPF record (often something like include:_spf.google.com for Google or include:spf.protection.outlook.com for Microsoft 365). Check your mail provider’s own help pages for the exact value — that’s the part you must get right.

If you send through Amazon SES (Amazon’s own email-sending service), SES uses a different mechanism by default and SPF for SES is optional — but if you have set up a custom MAIL FROM domain in SES, follow the exact SES instructions for that. SES is a separate service from Route 53; Route 53 only stores the DNS record.

Step-by-step on Route 53

  1. Sign in to the AWS console and open Route 53.
  2. In the left menu, choose Hosted zones, then click the name of your domain.
  3. Click Create record.
  4. If you see a wizard with routing-policy options, switch to the simple form (look for Quick create record) — SPF doesn’t need any of the advanced routing.
  5. Leave the Record name field empty. An empty name means “the domain itself”. The console shows your domain alongside the field, so you don’t retype it.
  6. Set Record type to TXT.
  7. In the Value field, enter your SPF text wrapped in double quotes: "v=spf1 include:_spf.google.com ~all" Replace the include: part with the value(s) your actual mail provider tells you to use. The surrounding quotes are required in Route 53 — see the quirks below.
  8. Leave TTL at the default (300 seconds is fine).
  9. Click Create records.

Route 53 quirks people get wrong

Verify it worked

Once you’ve saved the record and given it a little time to take effect, verify it with the free check on this site. It will tell you in plain language whether your SPF record is present and correctly formed.

Done? Check your domain free to confirm it worked — and see your full grade across all 34 checks.