Skip to content

Home Topics Email Authentication SPF

Email Authentication · SPF

SPF records for Outlook and Microsoft 365: setup and requirements

Short answer

Outlook and Microsoft 365 weighs SPF records directly when deciding inbox placement. Microsoft weights sender reputation via SNDS and JMRP, and rejects unauthenticated bulk mail to consumer Outlook.com addresses. Follow the setup steps below and verify with a test message to a Outlook and Microsoft 365 mailbox.

Microsoft weights sender reputation via SNDS and JMRP, and rejects unauthenticated bulk mail to consumer Outlook.com addresses.

What SPF records are#

SPF (Sender Policy Framework) is a DNS TXT record that lists the servers allowed to send mail for a domain. Receivers check the connecting IP against that list during the SMTP transaction.

Why it matters#

Without SPF, any server can claim to send as your domain. With a broken SPF record, legitimate mail fails authentication and lands in spam. SPF is also one of the two alignment paths DMARC relies on.

Setting up SPF records for Outlook and Microsoft 365#

  1. Inventory every service that sends mail as your domain: your ESP, CRM, helpdesk, billing system, and internal mail server.
  2. Collect each vendor's SPF include mechanism (for example include:_spf.google.com) from their documentation.
  3. Publish one TXT record at the root of the domain starting with v=spf1, listing each include, then ending with ~all (softfail) while testing.
  4. Verify with a lookup tool that the record resolves and stays under 10 DNS lookups and 255 characters per string.
  5. Move to -all once DMARC reports confirm all legitimate sources pass.
Example SPF record
example.com.  IN TXT  "v=spf1 include:_spf.google.com include:sendgrid.net ip4:203.0.113.10 -all"

How Outlook and Microsoft 365 reports results#

Open a delivered test message in Outlook and Microsoft 365 and view the original or headers. Look for Authentication-Results and any provider-specific verdict headers. Use the provider's sender dashboard for aggregate reputation.

Common mistakes#

  • Exceeding the 10-lookup limit, which causes a permerror and effectively disables SPF.
  • Publishing two SPF records on one domain; receivers treat this as a permanent failure.
  • Forgetting that SPF checks the Return-Path (envelope sender), not the visible From address, so forwarded mail often fails.
  • Using +all or leaving ?all in production, which authorizes everyone.

Frequently asked questions#

Does SPF alone stop spoofing?

No. SPF validates the envelope sender, which spoofers can set to their own domain while forging the visible From. DMARC closes that gap by requiring alignment.

What does ~all versus -all mean?

~all is softfail: receivers mark but usually accept. -all is hardfail: receivers may reject. Start with ~all, graduate to -all once DMARC data is clean.

How do I fix 'too many DNS lookups'?

Remove unused includes, replace includes with ip4/ip6 mechanisms where vendors publish static ranges, or use an SPF flattening service.

Does Outlook and Microsoft 365 require SPF records?

Microsoft weights sender reputation via SNDS and JMRP, and rejects unauthenticated bulk mail to consumer Outlook.com addresses. Treat SPF records as required for any meaningful volume.

Analyse your own setup

All analysers
Technical analysis

SPF record analyser

Parse an SPF record, count its DNS lookups, and find what will break it.

Runs in your browser
Technical analysis

DMARC record analyser

Grade a DMARC record on enforcement, not just syntax.

Runs in your browser
Technical analysis

Email header analyser

Read authentication, DMARC alignment, and hop-by-hop delays from raw headers.

Runs in your browser

Keep reading on SPF