On this page
Outlook decides whether to junk your mail in milliseconds, using a model that weighs at least seven signals. Most senders fixate on one (usually content), miss the others, and stay in junk forever. Here's the full picture, in priority order.
1. Sender Reputation (the biggest single factor)
Microsoft maintains an IP and domain reputation score that updates continuously. If it's bad, no amount of content tweaking will save you.
Signals that feed reputation:
- Complaint rate (Outlook.com users hitting "report junk", M365 users hitting "Report message"). Above 0.3% is bad.
- Spam-trap hits: pristine traps, recycled traps, typo traps.
- Volume consistency: sudden spikes look like compromise.
- Send-to-engaged-recipient ratio: sending to recipients who open and reply is positive reputation.
Fix: Enroll in SNDS and JMRP. Suppress every complainer within hours. Drop unengaged contacts at 90 days.
2. Authentication (SPF / DKIM / DMARC + Alignment)
Since Microsoft's May 2025 bulk-sender rules, authentication isn't optional. Outlook now scores DMARC-aligned mail much higher than mail authenticated by SPF or DKIM alone.
The hierarchy:
| Authentication state | Outlook treatment |
|---|---|
| All three pass + DMARC aligned | Full reputation benefit |
| SPF or DKIM passes, DMARC aligns | Acceptable |
| SPF + DKIM pass, no DMARC | Penalised, may junk |
| Any auth failure on a DMARC-enforced domain | Rejected outright |
Fix: Run Domain Health. Confirm DKIM signs every message (some ESPs leave it off by default for sub-accounts). Move DMARC to at least p=quarantine with the DMARC Generator.
3. Engagement Signals
Outlook tracks per-recipient engagement: opens, replies, "not junk" recoveries, "move to focused" actions. Recipients who never engage are weighted toward junk regardless of content.
Fix:
- Segment by 30/60/90-day engagement.
- Build a "winback" sequence for 60-day silent recipients with sharper subject lines and fewer images.
- Sunset at 120 days.
4. Content Signals — SCL and BCL
Outlook's Exchange Online Protection (EOP) attaches two scores to every message:
- SCL (Spam Confidence Level): -1 (safe / allowlisted) to 9 (high-confidence spam).
- BCL (Bulk Complaint Level): 0 (not bulk) to 9 (high-complaint bulk).
You can read both in the headers of any message that reached an M365 mailbox:
X-MS-Exchange-Organization-SCL: 1
X-Microsoft-Antispam: BCL:4
SCL ≥ 5 has typically meant junk, though Microsoft now says the SCL value no longer decides the action in cloud mailboxes. BCL ≥ 7 lands in junk under the default anti-spam policy. Use the email header analyzer to inspect both.
Triggers that raise SCL/BCL:
- Image-only HTML, broken alt text.
- Aggressive subject lines ("FREE!!!", excessive emoji).
- URL shorteners and recently-registered domains.
- Mismatched From/Reply-To.
- Heavy macro-style links (UTM-stuffed URLs across many parameters).
5. Domain Age and Consistency
A two-week-old sending domain is treated with suspicion regardless of authentication. So is a domain that sends 100/day for six months and then 50,000/day on Tuesday.
Fix: Warm new domains over 30 days. Keep volume curves smooth, and never spike >30% week over week.
6. URL and Link Reputation
Microsoft consumes its own threat feeds (Microsoft Defender) for URL reputation. If your mail contains a link to a domain Defender has flagged, even briefly, every message goes to junk.
Fix:
- Audit every link domain in your templates monthly.
- Avoid hosting any redirect on a domain you don't control.
- If using shortened links, host on your own subdomain (
go.yourdomain.com) not bit.ly.
7. Recipient-Level Rules
Outlook users can create per-sender rules ("always trust", "always junk"). These override almost everything else for that mailbox. They're invisible to senders but matter at scale because complaint signals from active rules feed back into your domain reputation.
Fix: Make unsubscribing trivial. Use one-click List-Unsubscribe per the bulk-sender requirements.
How to Diagnose in Practice
If your Outlook recipients are seeing junk:
- Grab a sample message that landed in junk. Read the Authentication-Results and X-MS-Exchange-Organization-SCL headers with the email header analyzer.
- Check SNDS. What color is your IP today?
- Check Spamhaus and 25 DNSBLs with blacklist checker.
- Run Inbox Placement tests against Outlook seed addresses to confirm scale.
FAQ
Why does Outlook junk my email but Gmail delivers? The two providers use different reputation engines and weight different signals. Microsoft weighs SNDS/JMRP signals more heavily and is less forgiving on shared-IP reputation problems.
Do I need to ask recipients to mark my email "not junk"? It helps marginally (it's a positive engagement signal), but it doesn't override poor reputation or auth failures. Fix the root causes first.
How long does it take to recover Outlook reputation? Light reputation drift recovers in 7–14 days of clean sending. Recovery from an S3140 block takes 14–30 days of disciplined sending after delisting.
Related
Sources
- Spam confidence level (SCL) in Microsoft 365 (Microsoft Learn), what SCL values mean today and where they are stamped.
- Bulk complaint level (BCL) in cloud organizations (Microsoft Learn), the BCL scale and the default thresholds and actions.
- Anti-spam message headers (Microsoft Learn), reading X-Forefront-Antispam-Report, X-Microsoft-Antispam and compauth.
- Strengthening Email Ecosystem: Outlook's New Requirements for High-Volume Senders (Microsoft Tech Community), Outlook.com's authentication rules for high-volume senders.
- Outlook.com Postmaster: Troubleshooting, Outlook.com on junk complaint rates as a principal reputation factor.