Skip to content
wiki · technical reference

FBL

Feedback Loops. When a recipient hits "report spam," the receiver sends you a copy. You suppress that recipient. End of story.

~5 min read

What FBL actually is

Recipient hits "report spam" or "junk." Two things happen. The receiver moves the message to spam and adjusts their internal model of you as a sender. Then, if you're enrolled in their feedback loop, the receiver sends a copy of the complained-about message back to a designated address you control.

The forwarded message is in ARF format (Abuse Reporting Format, RFC 5965). A multipart MIME structure containing the original message, the complaint metadata (when, what type), and the recipient's anonymised identifier. From this you extract the recipient address that complained and remove it from your list.

FBL is the receivers' explicit invitation: "we'll tell you who hates your mail. In exchange, you stop sending to them." Senders who don't process FBL signals keep mailing complainers, which receivers detect, which produces reputation damage that's entirely avoidable. The whole arrangement is a gift. Refusing it is operational malpractice.

Which receivers offer FBL and how to enroll

The major receivers running FBL programs:

  • Microsoft (Outlook, Hotmail, Live). The JMRP (Junk Mail Reporting Program). Sign up at postmaster.live.com. Per-IP enrollment. Verification via test messages. Reports arrive in real time.
  • Yahoo / AOL. The Complaint Feedback Loop. Sign up at postmaster.yahooinc.com. Per-domain enrollment. Reports arrive in batches.
  • Apple (iCloud, me.com, mac.com). Apple's feedback loop. Sign up requires DKIM-signed outgoing mail. Reports arrive in real time via the DKIM-signing domain.
  • Comcast. Application required. Mostly relevant for senders with significant US Comcast audience.
  • La Poste, Orange (France). Regional but matters for senders with French audience.

Gmail does not offer a traditional FBL. Instead, Gmail surfaces complaint rate as a metric in Postmaster Tools. Same signal (recipients are complaining), different channel (aggregate metric vs per-message reports). Senders to Gmail audiences should monitor Postmaster Tools complaint rate and respond accordingly.

The ARF format, decoded

An incoming FBL report is an email with a specific structure:

From: complaints@example-receiver.com
To: fbl-handler@yourdomain.com
Subject: FW: [Spam Complaint]
Content-Type: multipart/report; report-type=feedback-report;

--boundary
Content-Type: text/plain
This is an email abuse report for an email message
received from IP 185.10.20.30 on Mon, 12 May 2026 09:14:22 +0000.

--boundary
Content-Type: message/feedback-report
Feedback-Type: abuse
User-Agent: ReceiverFBL/1.0
Version: 1
Original-Mail-From: campaign@yourdomain.com
Original-Rcpt-To: anonymized@example-receiver.com
Arrival-Date: Mon, 12 May 2026 09:14:22 +0000
Source-IP: 185.10.20.30

--boundary
Content-Type: message/rfc822
[Original message attached here]
--boundary--

What the parser needs:

  • Original-Rcpt-To. The recipient address that complained. This is what you suppress.
  • Original-Mail-From. Your sending address. Used to route the complaint to the right campaign.
  • Source-IP. The IP that sent the original. Useful for per-IP complaint-rate tracking.
  • Arrival-Date. When the original was sent. Used for staleness checks (some receivers forward old complaints).

The processing pipeline

Production FBL pipeline runs every few minutes against the FBL inbox:

  1. Fetch new messages from the FBL inbox via IMAP.
  2. Validate ARF format. Reject malformed reports, log for inspection.
  3. Extract complainer address from Original-Rcpt-To.
  4. Add to suppression list immediately. The complaint is the explicit signal. No further validation needed.
  5. Increment per-IP complaint counter for monitoring. Sustained complaints above 0.3% on Microsoft are a warning. Above 0.5% is emergency territory.
  6. Move processed message to an archive folder. Don't delete. Receivers occasionally request audit trails for their own debugging.

MailWizz, Acelle, and PowerMTA all have built-in FBL processors. Custom MTAs typically need a separate parser. parsedmarc handles ARF natively, as do most production mail-platform stacks.

Why honouring FBL is non-negotiable

The asymmetry is sharp. Honouring FBL is mechanically trivial: a few hundred lines of code, run every few minutes. Failing to honour FBL is one of the most predictable causes of long-term reputation damage:

  • Continuing to send to complainers tells the receiver "this sender doesn't respect complaint signals." Receivers track this.
  • Repeat complainers eventually become spam-trap candidates: addresses that complained, were ignored, and are now monitored for spam-trap conversion. Once converted, mailing them produces the worst-case reputation damage.
  • FBL non-compliance is a documented Spamhaus criterion for SBL listing.
  • The complainer is, by definition, your worst recipient. Keeping them on your list lowers aggregate engagement metrics, which hurts you with every receiver.

Mechanically: enroll in every FBL your audience touches, run the processor every 5-10 minutes, suppress on first complaint, never resurrect a suppressed address.

Major FBL programs and registration procedures in 2026

Each major mailbox provider operates its own feedback loop with different registration procedures and operational characteristics. The summary below covers the FBL programs that matter most for production sending operations as of 2026.

Microsoft JMRP (Junk Mail Reporting Program): the most consequential FBL for senders targeting Microsoft consumer mail properties (Outlook.com, Hotmail.com, Live.com, MSN.com). Registration requires demonstrating control of the sending IP space (similar mechanism to SNDS registration) and providing a destination email address that will receive complaint reports. Reports arrive as ARF-formatted messages to the specified destination, typically within minutes of a user clicking "junk" or "spam" on a message. Microsoft also operates SRD (Sender Reputation Data) and SNDS which are complementary monitoring tools rather than feedback loops.

Yahoo CFL (Complaint Feedback Loop): operates similar to JMRP but for Yahoo, AOL, and the consolidated Yahoo Mail properties. Registration is through the Yahoo Postmaster portal which requires verification of the sending domain. The report format and delivery are similar to JMRP. Coverage extends to AOL Mail because AOL and Yahoo merged their underlying infrastructure following Verizons acquisition of both.

Comcast FBL: operates for Comcast.net mail users. Less consequential than JMRP or Yahoo CFL because the Comcast user base is smaller and has shifted toward third-party mail (Gmail, Outlook) over the years, but still worth registering for senders with US consumer audiences. Registration is through the Comcast postmaster portal.

Cox FBL: operates for cox.net mail users. Similar registration and operational characteristics to Comcast. Useful for senders with US Southeast consumer audiences where Cox internet service is common.

USA.net FBL: operates for the smaller set of providers that USA.net handles mail for. Registration through USA.net postmaster portal. Low individual impact but worth registering for completeness.

Gmail Spam Reporting: Gmail does not operate a public FBL in the traditional sense. Instead, Gmail surfaces aggregate complaint data through Postmaster Tools (per-domain reputation, complaint rate trends) and does not provide per-message complaint reports back to senders. Senders working with Gmail need to use Postmaster Tools data plus complaint trends inferred from engagement patterns rather than direct FBL reports.

FBL processing workflows that actually work

Receiving FBL reports is operationally easy. Processing them effectively is harder. The workflows below capture what production senders settle on after experiencing the consequences of inadequate processing.

Immediate suppression: recipient appears in an FBL report, recipient gets added to suppression list within 24 hours of report receipt, recipient never receives mail from any sending infrastructure under the same domain or business again. The 24-hour window is the receiver expectation; longer delays accumulate negative signal that triggers receiver-side enforcement. Most production senders process FBL reports within minutes rather than hours, automated through bounce-processing infrastructure.

Pattern aggregation: beyond suppressing individual complainants, the FBL data has aggregate value for identifying which campaigns, segments, or content patterns produce elevated complaint rates. Pattern aggregation requires retaining FBL data with enough metadata to correlate back to specific campaigns and segments. Most ESP control planes (MailWizz, Acelle, Mautic) handle this with appropriate configuration; some custom implementations need explicit work to capture the correlation metadata.

Trend analysis and alerting: aggregate complaint trends matter more than individual complaint events. A 0.02% complaint rate on a campaign is healthy; the same 0.02% trending upward week-over-week across multiple campaigns indicates underlying degradation that will produce receiver-side enforcement if not addressed. Alerting should trigger on trend slope changes, not just absolute thresholds.

Action on patterns: elevated complaint patterns require remediation, not just monitoring. Common patterns and responses include: complaints concentrated in a specific list segment indicate that segment has quality problems (remove or re-confirm), complaints concentrated on specific content patterns indicate template or copy issues (adjust the content), complaints concentrated on specific campaign types indicate over-mailing of that category (reduce frequency or quality up the targeting), complaints concentrated on specific time-of-day indicate timing issues (adjust send schedule).

Recipient retention: some senders retain FBL recipient data indefinitely for cross-list suppression and historical pattern analysis. Others retain only what is needed for the suppression list and discard the metadata. The right choice depends on the operations privacy posture; retention beyond suppression purposes is operationally useful but produces additional data that customers would prefer not to be retained.

Common FBL operational pitfalls

Most senders who set up FBL processing do not get it right on the first attempt. The pitfalls below are the most common failure modes that production operations encounter.

Pitfall 1: FBL destination mailbox not actually receiving reports. The most common pitfall. The sender configures the FBL destination address during registration, but the address either does not exist, or is filtered by aggressive spam filtering that treats FBL reports as suspicious. Reports go to spam folder or get rejected outright; the sender never sees them and assumes the FBL program is not generating reports. The fix is verifying the destination address actively receives test messages and that no filtering applies to incoming ARF-formatted messages.

Pitfall 2: Suppression logic does not actually suppress. The FBL reports arrive and get processed, but the suppression list integration is incomplete: the recipient gets added to a suppression table but the campaign-send logic does not consistently check the table before adding recipients to sends. The result is that complainants keep receiving mail, complaints keep escalating, the sending reputation degrades despite "processing" the FBL reports. The fix is end-to-end testing of the suppression workflow with synthetic complainants.

Pitfall 3: Suppression at wrong granularity. Some implementations suppress the specific email address that complained but not other addresses belonging to the same recipient (work email versus personal email versus alias). When the recipient subsequently signs up using a different email, they receive mail again and complain again. Better implementations attempt to detect duplicate recipients through correlation (cookie tracking, signup metadata, IP address) and apply suppression at the recipient level rather than the address level.

Pitfall 4: Cross-list contamination. Senders running multiple lists or multiple sending categories sometimes apply FBL suppression only to the list that produced the complaint. The complainant remains active on other lists and continues receiving mail from the same domain, which the receiver attributes to the same sender even if the senders internal segmentation distinguishes the lists. The fix is cross-list suppression that applies at the domain or sender level rather than the list level.

Pitfall 5: Ignoring patterns until enforcement. FBL data surfaces patterns that predict future enforcement: rising complaint rates on specific segments, complaint clustering around specific content, complaint patterns indicating list-quality decay. Senders who treat FBL as a suppression mechanism only and not as a signal source miss the patterns until enforcement (placement drop, SNDS rating change, blocklist listing) makes them impossible to ignore. The fix is treating FBL aggregate data as a leading indicator and acting on patterns before they produce hard outcomes.

FBL in 2026: where it fits in the broader monitoring stack

FBL programs remain valuable in 2026 but they fit within a broader monitoring stack that has expanded substantially through 2024-2026. Senders relying on FBL alone are missing visibility that other monitoring paths provide; senders ignoring FBL are missing the most direct complaint signal available from the major receivers.

The complete monitoring stack for production sending in 2026 includes: FBL processing for the Microsoft, Yahoo, AOL, Comcast, and Cox feedback loops, Postmaster Tools monitoring for Gmail (since Gmail does not provide per-message FBL, the dashboard data is the substitute), SNDS monitoring for Microsoft IP reputation visibility, DMARC aggregate reporting for authentication outcome visibility, TLS-RPT aggregate reporting for transport-layer visibility, blocklist monitoring for Spamhaus and major RBLs, internal sending metrics (bounce rates, delivery rates, content performance), customer-reported issues (complaints, deliverability reports from customer recipients).

Each layer surfaces different information with different latency characteristics. FBL provides the most direct complaint signal with near-real-time latency. Postmaster Tools provides aggregate reputation status with 24-48 hour latency. SNDS provides per-IP reputation status with similar latency. DMARC and TLS-RPT provide authentication and transport visibility with daily latency. Blocklist monitoring provides listing status with whatever frequency the monitoring cadence supports. Internal metrics provide the highest-frequency leading indicators of receiver behavior changes.

The integration pattern that works well is consolidating all the monitoring streams into a single dashboard or alerting system that surfaces anomalies across any layer. Senders who run each monitoring stream in isolation miss the correlation patterns that indicate underlying issues; senders who integrate the streams catch issues earlier and recover faster. We provide consolidated monitoring as a managed service for customers who want the full stack without operating it themselves; many customers also build internal versions using open-source tools (ParseDMARC, Postfix log analysis, custom Postmaster Tools and SNDS scrapers).

Troubleshooting

I enrolled in Microsoft JMRP but no reports arrive
Verification can take 24-72 hours. After that, reports only arrive when actual complaints happen; if your volume is low or your audience engaged, you may receive zero reports for weeks. Normal. Verify the configuration by sending a test campaign to a small Outlook segment and asking a few recipients to mark it as junk. Reports should arrive within minutes.
Yahoo FBL reports show addresses I never mailed
Anonymisation. Yahoo replaces the recipient address with a hash before forwarding. The hash is opaque to you but stable per recipient; when the same address complains a second time, you'll get the same hash. Many MTAs (PowerMTA included) maintain a hash-to-address mapping at send time so they can match reports back to real addresses for suppression.
My complaint rate is suddenly elevated
Identify which campaign generated the spike. Look at Original-Mail-From in recent FBL reports. If they cluster on one campaign, audit that campaign's content, audience, and send time. Common causes: re-engagement campaigns to long-dormant segments (tend to convert disengagement to complaints), aggressive promotional language, sending at unusual times for the audience.
Apple FBL stopped working after I rotated DKIM keys
Apple's FBL is keyed to the DKIM signing domain. When you rotate the selector, Apple needs to re-verify the signing domain. Check your enrollment dashboard; you may need to re-confirm the new selector. While re-verification is in progress, FBL signals are paused.
I get complaint reports but the recipient isn't in my current list
They unsubscribed or were removed previously, then complained later because they remembered receiving your mail and forgot they'd unsubscribed. Add them to suppression anyway. The complainant's memory of you matters more than the technical fact of their current status. Suppress, archive, move on.
I registered for JMRP but have not received any reports in 7 days despite high send volume to Outlook
Most likely the JMRP destination mailbox is filtering the reports as suspicious or the registration verification did not complete properly. Verify three things: the registration in the Microsoft postmaster portal shows as active (not pending), the destination mailbox accepts mail from external senders without aggressive filtering and specifically accepts ARF-formatted messages, and your Outlook send volume is high enough that you would expect complaints. If all three check out, contact Microsoft postmaster support through their portal; occasional registration issues require manual intervention to resolve.
My FBL complaint rate keeps rising despite suppressing every reported recipient within hours
Suppression is necessary but not sufficient when underlying patterns are producing the complaints. Look at the aggregate FBL data for patterns: are complaints concentrated in specific list segments, specific campaigns, specific content types, specific time windows? The rising rate indicates that the inflow of new complainants exceeds your ability to suppress them, which means the root cause is on the acquisition or content side rather than the suppression side. Address the upstream patterns; suppression alone cannot fix the underlying issue.

Related entries