Skip to main content

What is a feedback loop?

A feedback loop (FBL) is a system that email providers use to notify senders when a recipient marks their email as spam. When someone clicks the “Report spam” button in Gmail, Outlook, or Yahoo, the email provider sends a complaint notification back to the sender. This notification lets you know that a specific recipient considers your email unwanted — so you can stop sending to them.

How feedback loops work

1

You send an email

The email is delivered to recipient@gmail.com.
2

Recipient clicks 'Report spam'

The recipient marks your email as spam in Gmail.
3

Gmail generates a complaint notification

A complaint in ARF (Abuse Reporting Format) is sent to the address registered for your domain.
4

SendKit processes the complaint

The email is marked as “complained”, the recipient is added to the suppression list, and the email.complained webhook fires.

ARF format

Feedback loop complaints are sent in ARF (Abuse Reporting Format), a standard format defined in RFC 5965. An ARF message contains:
  • The original email (or a portion of it)
  • The type of complaint (usually “abuse”)
  • The complaining recipient’s address
  • The date of the complaint

Provider-specific feedback loops

Each email provider implements feedback loops differently:

Gmail

Gmail uses a header-based feedback loop. Instead of sending ARF messages, Gmail looks for a Feedback-ID header in your emails and provides aggregate complaint data through Google Postmaster Tools. For individual complaints, Gmail reports through the MX record you configured on your send subdomain.

Outlook/Hotmail

Microsoft operates the Junk Email Reporting Program (JMRP). It sends ARF reports when Outlook users mark emails as junk. Reports are sent to the address associated with the sending IP or domain.

Yahoo

Yahoo has its own Complaint Feedback Loop (CFL). It sends ARF reports to registered senders when Yahoo Mail users report spam.

SendKit and feedback loops

SendKit handles feedback loops automatically. When you verify a domain and add the required MX record, complaint notifications are routed to SendKit. When a complaint is received:
  1. The email is marked as complained in your dashboard
  2. The email.complained webhook fires so your application can react
  3. The recipient is added to the suppression list — future sends are blocked
You don’t need to register with individual providers or parse ARF messages yourself.

Why complaints matter

Complaint rate is one of the most important sender reputation signals. Email providers track the percentage of your emails that generate complaints:
Complaint rateStatusAction
< 0.1%HealthyNormal operations
0.1–0.5%WarningInvestigate and improve
> 0.5%Sending pausedSendKit automatically pauses sending for your team
SendKit evaluates complaint rates in real time. If your complaint rate exceeds 0.5% (with a minimum of 200 emails in the last 24 hours), sending is automatically paused. Google’s own threshold is stricter — a complaint rate above 0.1% can result in your emails being filtered to spam.
A single campaign with a high complaint rate can damage your reputation for weeks.

Reducing complaints

Send to people who want your emails

The number one cause of complaints is sending to people who didn’t ask for your emails or don’t remember signing up. Use double opt-in for marketing emails and make sure recipients recognize your brand.

Make unsubscribing easy

If recipients can’t find the unsubscribe link, they’ll use the “Report spam” button instead. Both result in the recipient being removed from your list, but a complaint damages your reputation while an unsubscribe does not.
  • Include a visible unsubscribe link in every marketing email
  • Use the List-Unsubscribe header (SendKit adds this automatically for campaigns)
  • Process unsubscribes immediately

Set expectations at signup

Tell recipients what kind of emails they’ll receive and how often. “Weekly product updates” sets clear expectations. Surprises generate complaints.

Segment your sending

Not everyone on your list wants the same emails. A user who signed up for product notifications doesn’t want promotional offers. Segment your list and send relevant content to each segment.

Complaint vs unsubscribe

ActionWhat happensImpact on reputation
UnsubscribeRecipient clicks unsubscribe linkNone — this is normal
ComplaintRecipient clicks “Report spam”Negative — counts against you
You want recipients to unsubscribe (if they want to leave) rather than complain. The difference is entirely about whether they use your unsubscribe link or the spam button.

FAQ

Yes. SendKit tracks complaints per email. You can see complained emails in your dashboard and receive real-time notifications via the email.complained webhook.
Absolutely not. Sending another email to someone who complained will generate another complaint and further damage your reputation. The recipient has clearly indicated they don’t want your emails — respect that.
No. Once a complaint is recorded by the email provider, it counts against your reputation. The recipient is automatically suppressed in SendKit. Focus on preventing future complaints rather than trying to reverse them.