# Microsoft SNDS Walkthrough — Outlook IP Reputation in AcelleMail Context

> Microsoft's Smart Network Data Services (SNDS) shows per-IP reputation for outlook.com / hotmail.com / live.com. This guide walks the SNDS signup, wiring AcelleMail's sending IPs in, and daily-checking the panel.

- Canonical URL: https://acellesend.com/kb/articles/microsoft-snds-walkthrough
- Author: Lena Hart, Email Deliverability Editor
- Category: Sending & Deliverability — SMTP setup, bounce handling, sender reputation, IP warmup, throttling
- Content type: tutorial · Difficulty: intermediate
- Tags: Acellemail
- Published: 2026-07-04 · Last updated: 2026-08-15
- Reading time: 7 min
- Publisher: AcelleMail Knowledge Base, https://acellesend.com/kb

---

## Why SNDS matters

Microsoft's email properties — outlook.com, hotmail.com, live.com, msn.com — combined are ~15% of consumer email worldwide. Their reputation engine is independent of Gmail's: an IP that's High at Google Postmaster Tools can simultaneously be Red at Microsoft SNDS. You need both signals.

SNDS = Smart Network Data Services. Free. Microsoft-run. Shows per-IP:

| Signal | What it tells you |
|---|---|
| **Reputation** (Red/Yellow/Green) | Microsoft's aggregate verdict on the IP |
| **Filter result** (% Inbox / Junk / Blocked) | Where Microsoft routes your mail today |
| **Complaint rate** | Mark-as-spam clicks from Microsoft mailbox users |
| **Trap hits** | Sent to spam-trap addresses (red flag) |
| **Sample HELO + body** | What Microsoft sees — useful for debugging authentication |

## Sign up + register your IPs

### Step 1: Find your AcelleMail sending IPs

In AcelleMail, open the sending-server detail:

![Server detail — find your sending IP](https://acellesend.com/plugins/acelle/landing/images/help/kb/sending-servers/02-server-detail-full.png)

For SMTP relay servers (SendGrid, Mailgun, Postmark, etc.), the sending IP is the vendor's shared pool — you usually don't have a dedicated IP. SNDS only gives meaningful data for dedicated IPs.

For Amazon SES with a dedicated IP / IP pool, get the IP from the SES console → Configuration → Dedicated IPs.

For self-hosted SMTP (e.g. Postfix on your own server), the sending IP is your server's outbound IP — run `curl ifconfig.me` from the host.

### Step 2: Sign up at sendersupport.olc.protection.outlook.com

URL: https://sendersupport.olc.protection.outlook.com/snds/

Click **Request access**. Microsoft asks for:

- Your Microsoft account (create one if needed — free)
- Each IP / IP range you control (one IP per line, or CIDR like `192.0.2.0/24`)
- Ownership verification — Microsoft will email each registered IP's `abuse@` and `postmaster@` accounts for confirmation

Within 24-72 hours, Microsoft confirms ownership and grants SNDS access.

### Step 3: Daily SNDS check

Once active, log in daily. The dashboard shows per-IP rows with:

```
IP            Reputation   Filter result    Complaint rate   Trap hits
192.0.2.10    GREEN        Inbox 98%        0.02%            0
192.0.2.11    YELLOW       Inbox 84%        0.18%            1
192.0.2.12    RED          Junk 100%        0.45%            7
```

Green is target; Yellow means watch; Red means PAUSE sending from that IP until you've fixed the underlying issue.

## Daily SNDS-driven action

| SNDS state | What it means | What to do in AcelleMail |
|---|---|---|
| Green, Inbox 95%+, complaint <0.1% | Healthy — full speed | Continue normal volume |
| Yellow, Inbox 70-85%, complaint 0.1-0.3% | Warning — reputation degrading | Hold current volume; do NOT add new segments; audit recent campaigns |
| Yellow, complaint >0.3% | Imminent block | Immediately PAUSE sending; investigate content + list source |
| Red | Already filtered out | PAUSE that server entirely; restore reputation via re-engagement track |
| Trap hits >0 | You hit a spam trap — bad list source | Audit imports; never buy lists; trap hits are reputation poison |

## Wire SNDS state back to AcelleMail
### Open the sending-server detail

In AcelleMail's sidebar, click **Sending → Sending servers**. The list shows every server connected to this account with its status chip, sending limit, and last activity:

![Customer sending-server list](https://acellesend.com/plugins/acelle/landing/images/help/kb/sending-servers/01-customer-server-list.png)

Click into the row you want to configure. The detail page surfaces Connection settings (host / credentials), Configuration (server name, default from, sending limit, bounce + FBL handler), and the **Test connection** / **Send test email** buttons in the toolbar:

![Server detail — Connection + Configuration](https://acellesend.com/plugins/acelle/landing/images/help/kb/sending-servers/02-server-detail-full.png)

When SNDS flips a server's IP to Red, the appropriate AcelleMail action is to **Disable** that server temporarily — preventing further sends from a poisoned IP while you investigate.

In the sending server detail toolbar, click **Disable**. The server status flips to *Disabled*; the dispatcher routes around it.

After fixing the underlying issue (e.g. bad import purged, content audited), re-enable and ramp back up via the warmup pattern.

## Common SNDS confusion + fixes

| What you see at SNDS | What it actually means | What to do |
|---|---|---|
| "Yellow" but Inbox 90%+ | Microsoft sees mild concern (volume spike?) but mail still inboxes | Monitor closely; usually self-resolves |
| "Green" but complaints in AcelleMail spiked | AcelleMail's tracking captures different complaints than SNDS | Trust both signals; act on the alarming one |
| New IP shows no data | IP not registered with SNDS, OR <72h since registration | Confirm registration; wait for data |
| Filter result "Junk 30%" but you have no complaint signals in AcelleMail | Microsoft filtering for content reasons, not engagement | Audit subject line + body content |
| Trap hit count = 5 | Five separate spam-trap hits | This is a list-source problem. Audit imports. |
| Sample HELO shows unfamiliar domain | Authentication misalignment | Re-verify domain in AcelleMail sending-server detail |

## What SNDS DOESN'T show

| Signal | Where to look instead |
|---|---|
| Aggregate Microsoft mail delivery | AcelleMail campaign report bounce log + Microsoft Junk Email Reporting Program (JMRP) |
| Authentication results (SPF/DKIM/DMARC) | DMARC aggregate reports + AcelleMail server config chips |
| Per-recipient block | AcelleMail bounce log (DSN code 5.7.x patterns) |
| Yahoo / Apple / Other ISPs | Yahoo / Apple have their own (mostly retired) postmaster tools |

<details>
<summary><strong>Advanced: programmatic SNDS polling + automated server-disable on Red</strong></summary>

SNDS doesn't have a public API. Microsoft provides an opt-in IP-data feed: log into SNDS, then on the "Data Selection" page select daily CSV download. The CSV is published to your account's storage URL daily.

**Daily automation pattern:**

```bash
# Pull yesterday's SNDS CSV (you'll need to handle the login flow once, persist
# a session cookie or use SNDS' email-attachment delivery mode)
curl -sH "Cookie: $SNDS_COOKIE" \
  "https://sendersupport.olc.protection.outlook.com/snds/data.aspx?date=$(date -v-1d +%Y%m%d)&output=csv" \
  -o snds-yesterday.csv

# Parse + auto-disable any RED-reputation server
while IFS=, read ip reputation filter_pct complaint_pct trap_hits; do
  if [ "$reputation" = "RED" ]; then
    # Find the AcelleMail server for this IP
    server_uid=$(curl -sH "Authorization: Bearer $ADMIN_TOKEN" \
      "https://acellemail.com/api/v1/admin/sending-servers?filter[sending_ip]=$ip" \
      | jq -r '.data[0].uid')

    if [ -n "$server_uid" ]; then
      # Disable + alert
      curl -X POST -H "Authorization: Bearer $ADMIN_TOKEN" \
        -d "{\"server_uid\": \"$server_uid\"}" \
        "https://acellemail.com/api/v1/admin/sending-servers/disable"

      # Slack alert
      curl -X POST $SLACK_WEBHOOK \
        -d "{\"text\": \"🚨 SNDS RED on IP $ip — auto-disabled AcelleMail server $server_uid. Complaint rate: $complaint_pct. Trap hits: $trap_hits.\"}"
    fi
  fi
done < snds-yesterday.csv
```

Run daily at 04:00. SNDS catches reputation issues before AcelleMail's own bounce/complaint signals — earlier intervention = faster recovery.

**Per-IP rotation playbook when SNDS flips Red:**

```
Day 0:  SNDS shows IP X = Red. AUTO-DISABLE in AcelleMail.
Day 1:  Audit recent campaigns from this IP. Identify root cause:
        - Content issue?  → Edit copy; flag the template
        - List source?    → Pause that list; re-verify
        - Engagement gap? → Re-engagement campaign first
Day 7:  Re-enable IP at 10% of pre-incident volume.
        Send ONLY to engaged-last-7d segment.
Day 14: If SNDS back to Yellow, expand to engaged-last-30d at 30%.
Day 21: If SNDS Green, resume normal ramp.
Day 30: Full volume.
```

**JMRP (Microsoft Junk Email Reporting Program)** — companion to SNDS. Microsoft sends feedback loops (FBL) for every Mark-as-Spam click from Microsoft mailbox users.

Sign up: https://sendersupport.olc.protection.outlook.com/pm/junkmail.aspx

Once active, every complaint generates an email to your `feedback@yourdomain` address. AcelleMail's bounce/feedback handler can parse these automatically — set up the FBL handler in your sending server config. See [Feedback loops FBL setup](https://acellesend.com/kb/articles/feedback-loops-fbl-setup) for the full setup.

**SDDS — Sender Score Display** (deprecated) — older Microsoft signal; no longer maintained. Use SNDS + JMRP exclusively.

</details>

## Related articles

- [Sender reputation monitoring](https://acellesend.com/kb/articles/sender-reputation-monitoring)
- [Gmail postmaster tools walkthrough](https://acellesend.com/kb/articles/gmail-postmaster-tools-walkthrough)
- [Feedback loops FBL setup](https://acellesend.com/kb/articles/feedback-loops-fbl-setup)
- [IP warmup by ISP](https://acellesend.com/kb/articles/ip-warmup-by-isp)
- [Deliverability incident runbook](https://acellesend.com/kb/articles/deliverability-incident-runbook)

---

## Related articles

- [Feedback Loops (FBL) — Setup + Wire in AcelleMail](https://acellesend.com/kb/articles/feedback-loops-fbl-setup): When a recipient clicks "Mark as Spam" on a Microsoft / Yahoo / AOL / Comcast mailbox, those ISPs send you the complaint via Feedback Loop. AcelleMail processes it automatically — unsubscribes the complainer, updates the complaint stats. This guide walks the setup.
- [How to Set Up Amazon SES with AcelleMail](https://acellesend.com/kb/articles/configuring-amazon-ses-with-acellemail): Create an IAM user and access key in AWS, connect Amazon SES to AcelleMail, share your verified domains with users, and let them verify their own.
- [Amazon SES Sending Limits — Cookbook for AcelleMail Operators](https://acellesend.com/kb/articles/ses-sending-limits-cookbook): SES starts at 200/day sandbox, scales to 50k+/day in production, $0.10 per 1,000 emails. This guide is the practical cookbook: how to grow from sandbox to scale, region-by-region orchestration, what AcelleMail does at each tier.
- [Multiple Sending Servers in AcelleMail — Add, Mix, Route](https://acellesend.com/kb/articles/configuring-multiple-sending-servers): Spread your volume across several SMTP and API senders for failover, reputation isolation, and headroom past any single vendor's cap. This guide walks the real screens: the type picker, the connect form, the per-campaign "Use all servers" toggle, and the admin pool view.
- [Hard Bounce vs Soft Bounce — Reading the Bounce Log](https://acellesend.com/kb/articles/understanding-email-bounce-types): A hard bounce is permanent; a soft bounce is temporary. AcelleMail records them in the campaign bounce log and treats them differently — hard bounces blacklist the address, soft bounces are left alone for the receiving server to retry. This guide walks the bounce log, the DSN codes, and what each type means for your list.
