XF 2.2 Lots (and lots) of bounces for the same user. Why?

Stuart Wright

Well-known member
So we got blocked from Amazon SES for a while and we're trying to figure out why.
We think it's because we had too many 'complaints' caused by the same user getting sent a **** ton of emails over a short period of time and them all bouncing.
This is one page of the bounce log of several similar looking pages.

1.webp

Here are our settings:
2.webp

I would expect their account user state to be changed to email invalid (bounced) but it hasn't been.
The user's account is valid and there are no entries in their change log for their user state changing (would there be? There should be).
Any help you can give would be greatly appreciated.
Thanks
 
Solution
After further investigation the reason it didn't parse as a bounce message is because it technically wasn't a bounce message.

The example I've been given was a "complaint about message" email triggered by the Outlook Postmaster. It looks like SES is sending these directly to the bounce email address. The ones we receive (we don't use SES) are delivered to our pre-defined abuse email address.

I'm not sure if this is the SES default behaviour. Currently not handling these complaints in XF is by design because strictly speaking they aren't a real bounce message. This is something we might have to do but equally I'm not sure if it's a misconfiguration in SES.

FWIW when we receive these, they are delivered directly to us and we handle...
We had the same problem a few months ago and it turned out to be a Microsoft issue. They had blacklisted the XF mail server. The XF support team submitted a request to have the server IP removed from the blacklist but they told us that MS is notorious for doing this and that it might happen again.

We decided to not accept email addresses from MS any longer at registration, so no hotmail, outlook, live etc.
 
After further investigation the reason it didn't parse as a bounce message is because it technically wasn't a bounce message.

The example I've been given was a "complaint about message" email triggered by the Outlook Postmaster. It looks like SES is sending these directly to the bounce email address. The ones we receive (we don't use SES) are delivered to our pre-defined abuse email address.

I'm not sure if this is the SES default behaviour. Currently not handling these complaints in XF is by design because strictly speaking they aren't a real bounce message. This is something we might have to do but equally I'm not sure if it's a misconfiguration in SES.

FWIW when we receive these, they are delivered directly to us and we handle them manually. You get a copy of the original email so I just click the unsubscribe link in the email. I had considered doing something to automate them, but wasn't really considering handling them as bounces (and not entirely sure the Outlook Postmaster Tools by default forwards them to anything other than your predefined mailbox).

i guess the biggest argument against handling them as bounces is bounces indicate emails that are undelivered. These are emails that have been delivered which have been complained about.

So, yeah, I think initially @Stuart Wright you need to look at your SES configuration to see if there's any settings surrounding this. Ideally they wouldn't be delivered to the bounce email. Perhaps you can have them delivered somewhere else and either process them manually or have custom code to process them automatically.
 
Solution
After further investigation the reason it didn't parse as a bounce message is because it technically wasn't a bounce message.

The example I've been given was a "complaint about message" email triggered by the Outlook Postmaster. It looks like SES is sending these directly to the bounce email address. The ones we receive (we don't use SES) are delivered to our pre-defined abuse email address.

I'm not sure if this is the SES default behaviour. Currently not handling these complaints in XF is by design because strictly speaking they aren't a real bounce message. This is something we might have to do but equally I'm not sure if it's a misconfiguration in SES.

FWIW when we receive these, they are delivered directly to us and we handle them manually. You get a copy of the original email so I just click the unsubscribe link in the email. I had considered doing something to automate them, but wasn't really considering handling them as bounces (and not entirely sure the Outlook Postmaster Tools by default forwards them to anything other than your predefined mailbox).

i guess the biggest argument against handling them as bounces is bounces indicate emails that are undelivered. These are emails that have been delivered which have been complained about.

So, yeah, I think initially @Stuart Wright you need to look at your SES configuration to see if there's any settings surrounding this. Ideally they wouldn't be delivered to the bounce email. Perhaps you can have them delivered somewhere else and either process them manually or have custom code to process them automatically.
I’ve never looked at the SES settings. Nimbus set it up for us. I’ll have a look tomorrow.
Meanwhile not only are these emails classed as bounces but also as complaints by SES which resulted in us having a near 1% complaint rate so they suspended our email service for 3 days.

Is this a misconfiguration of the recipient’s outlook?

How do you normally manually handle these?
 
Meanwhile not only are these emails classed as bounces but also as complaints by SES which resulted in us having a near 1% complaint rate so they suspended our email service for 3 days.
They are being handled as bounces because they are being sent to your bounce email address. But they aren't bounces because the emails have been successfully delivered.

Is this a misconfiguration of the recipient’s outlook?
It wouldn't surprise me if it were done deliberately/maliciously. I've seen this pattern before. Reporting mail as junk rather than simply clicking the single link that would stop all future emails. Highly frustrating.

How do you normally manually handle these?
As I say, the complaints include the email that was being complained about as an attachment (an .eml file). I just open this up in my mail client and click the "disable all emails" link. These links are specific to the user receiving the email, so you don't have to log in. When the link takes you to AVForums it will look like you're logged in as your own account. Despite that, clicking "Stop emails" will apply it to the user who received the email (not your own account).
 
The example I've been given was a "complaint about message" email triggered by the Outlook Postmaster. It looks like SES is sending these directly to the bounce email address. The ones we receive (we don't use SES) are delivered to our pre-defined abuse email address.

[...]

Currently not handling these complaints in XF is by design because strictly speaking they aren't a real bounce message. This is something we might have to do but equally I'm not sure if it's a misconfiguration in SES.

FWIW when we receive these, they are delivered directly to us and we handle them manually.
This is what we are doing as well, but this is really painful.

While it is still a long way to go, automated CFBL managment seems to get traction and it would be awesome this could be automated with XenForo.

 
They are being handled as bounces because they are being sent to your bounce email address. But they aren't bounces because the emails have been successfully delivered.


It wouldn't surprise me if it were done deliberately/maliciously. I've seen this pattern before. Reporting mail as junk rather than simply clicking the single link that would stop all future emails. Highly frustrating.


As I say, the complaints include the email that was being complained about as an attachment (an .eml file). I just open this up in my mail client and click the "disable all emails" link. These links are specific to the user receiving the email, so you don't have to log in. When the link takes you to AVForums it will look like you're logged in as your own account. Despite that, clicking "Stop emails" will apply it to the user who received the email (not your own account).
Ok, so is this happening if people mark emails as spam? Because I do that all the time for unsolicited emails with no unsubscribe link. Several a day, usually.
I never see any more inbound emails from those senders, of course, as they are presumably rejected by my email software. But they won't be bouncing in the usual sense, as you say.
For our monthly newsletter using Sendy, there are four groups of recipients of note:
  • Active
  • Unsubscribed
  • Bounced
  • Marked as spam
Our addon syncs the forum list with Sendy and automatically processes unsubscribes, bounces and those marked as spam.
But members who have marked routine forum notification emails as spam must be the cause of this significant problem.

There needs to be a distinction between bounced and marked as spam. I go through the users who marked our newsletter as spam and delete those who haven't significantly participated in the forums because if they are going to the effort of rejecting our emails in such a way, I would rather reject their forum membership.
They certainly should not be emailed again ever to the same email address, so setting their email as invalid from bounce requiring them to enter a new email address is probably the best way to go. But they must change their email address.

There are no relevant settings for Amazon SES that I can see and I'm happy to give you access to have a look.

IMO Xenforo needs to process emails marked as spam separately to ensure that we don't get punished by SES or any other sending service. If we continue to email them after marking as spam, we are causing valid reason for complaint.

If you can determine that the bounced mails were sent because of a "complaint about message" then maybe the best option is to continue processing them as bounced but displaying the type as 'marked as spam' and taking the action of setting their email as invalid from bounce or maybe 'marked as spam'?
 
The issue isn't so much continuing to email after being marked as spam. The email client should at least be filtering these out. The issue is the volume of separate emails they marked as spam. Which is why I felt it was malicious. Even if we handled spam marking, it wouldn't stop someone marking 100 emails they've already received as spam and causing issues.
 
The issue isn't so much continuing to email after being marked as spam. The email client should at least be filtering these out. The issue is the volume of separate emails they marked as spam. Which is why I felt it was malicious. Even if we handled spam marking, it wouldn't stop someone marking 100 emails they've already received as spam and causing issues.
I'm not sure she would mark them all as spam. If she (maybe accidentally) marked one as spam, wouldn't all subsequent emails be processed the way we are seeing? Following her account being manually set to email invalid from bounce, she has changed her email address and there haven't been any more bounces. Although it's still early days.
And by the way, the Type is unknown and the Action is none for all 328 records in our email bounce log.
 
Last edited:
Nope. Not to the best of my knowledge.

Assuming each of those "Unknown" logs in your first post pertain to different emails, they have all been explicit complaints. Maybe I'm misunderstanding how "complaints" happen, but I assumed it was someone explicitly complaining about each email. In which case I presumed that was someone marking it as spam in Outlook.
 
Getting a bit more to the bottom of this.
The user in question is very apologetic for causing any issues and a good member of the forums. She decided to clear up her Outlook folders, and moved a whole bunch of emails in to the junk folder. It seems like she did this on several occasions and each time, it caused a spike of bounced emails in to the forum and email complaints which got to SES.
So every time someone moves an email in to the junk folder (in outlook at least) it's bad news.
I guess there is nothing to be done?
 
It's probably a good thing that 99% of users don't read the footers because it could be a spiteful thing to do to mark them all as 'Watch' and then mark them all as spam when they asked for the email in the first place!

Maybe a quiet 'unsubscribe' wouldn't be such a bad thing after a while? :unsure:
 
So if we have an unhappy member (and let’s face it, all forums will have unhappy members) with weeks of notification emails from the forum, they could dump dozens of emails in to their junk folder and instantly get your forum kicked off Amazon SES for going over .5% of your emails causing complaints.
If only we could have the emails self destruct 24 hours after being delivered.
 
@Chris D
Yesterday I activated the Amazon SES suppression list and this morning a member was added, so presumably an email sent to them bounced.
However, I checked the XF bounce log and the user is not there.
We have Google workspace handle our emails and there is a dedicated user there bounce@ our domain which is where our XF settings have bounced emails sent. I don't recall ever seeing where to set up the login details for Xenforo to access the bounce@ email account.
How does this all work please?
 
@Stuart Wright I think you should setup a DMARC email address so that you get additional information about such bounces. It will also result in better deliverability.

This situation is not unusual for SES. The suppression list should help. Complaints should be handled as hard bounces, but AFAIK XF doesn't handle Complaints.

@Chris D optimally there would be a separate state for Complaints, because its often malicious and it damages site/sender reputation. That would be really nice to have. I'd love to give users that mark as spam additional restrictions. Like letting them open a support ticket to reactivate their account.
 
@Chris D optimally there would be a separate state for Complaints,
It is technically not possible to handle complaints via DSN ("bounces"), this is what FBL are for.

There is no (open) standard for complaint management yet, but standards are emerging.

 
Back
Top Bottom