Email bounce clustering

Our weekly event mailing list auto-unsubscribes people after they have bounced three times, and when skimming the logs I was noticing some weird clustering: it seemed like a lot of people were hitting their third bounce after exactly 125 messages. So I graphed it, and... yup?

At an average of one message a week, most addresses that bounce end up doing so at just about 31 months, or 2.4 years, plus or minus one week.

It's a weird cluster, right? I'd expect it to just be exponential.

This is a graph of how many messages were sent before the address bounced three times. It does not include addresses that have not bounced. Also, the bounce count is reset to 0 if we send a message and it does not bounce, so it's not that old "strikes" never expire. The data goes back about 3 years.

Almost all bounces are "over quota" rather than "not found" or some other error, and 75% of our subscribers are gmail.

Previously, previously, previously, previously, previously.
Tags: , , , , ,
Current Music: Pins -- Ghosting ♬

20 Responses:

  1. Carlos says:

    I run a number of mailing lists with tons of Gmail subscribers.  I haven't actually noticed this pattern, but it's not exactly something you'd go looking for unless you happened to notice those first weird few and thought "What a weird coincidence...".

    I have my fair share of deliverability problems to Gmail.

    What kind of time period are those 388 instances of "magic 125" spread over?  And with the regularity of the mailings, I presume that start and third-bounce times are spread roughly the same?


    • Ray says:

      Yeah, my first thought was that maybe these are a bunch of bots that subscribed all at once, then hit some sort of threshold at the same time.

      • jwz says:

        They are absolutely not bots, as most of them actually spent money, and if I had meant "I had a thousand sign-ups on exactly Jan 5 that all expired at once" I would have said that.

        As usual, assuming that "your first thought" had not even occurred to me is probably not your safe bet.

  2. Ben says:

    In the words of Socrates


  3. Misty Jean says:

    " It is not the Eureka moments that advance the cause of science, but the quiet voice in the night that says 'well that's funny' "

  4. Line Noise says:

    I have a few theories but all of them are batshit crazy. But, given that this is Gmail we're talking about, batshit crazy is not out of the question.

    My favourite batshit crazy theory: If you have 125 unread messages from the same sender Gmail rejects any further messages with an "Over quota" message. I would expect a bit more of a slope after 125, though. But it would explain the higher bounce rate after 125 as well.

    • Gible Fog says:

      At least that's an easily testable theory.

    • trog says:

      Public gmail might do this but Google Workspace accounts don't - I have an account in which I get emails from fail2ban and I often forget they're piling up until there are thousands of them sitting unread for weeks at a time. Maybe there are other factors, like if the email has been flagged as spam a certain number of times, or something?

      Super interesting!

  5. Pythor says:

    I wonder if first bounce and or second bounce have a similar spike.

  6. 2

    Can you correlate that data with provider? I don't know what it would mean, but I'd be willing to bet that's a single provider that causes that.

    • Dave says:

      How would you even test that? they're gmail users. They could check the mail on their phone and then connect to wifi at a cafe and check again and connect to wifi on a bus and check again etc. And the bounce is coming from gmail servers, not carrier or provider in the path.

  7. Marcos Dione says:

    Also interesting is that after the spike the count is higher than before.

  8. Michael V. says:

    The Gmail app on my Android phone occasionally comes up with "You haven't read any messages from X in awhile, would you like to unsubscribe?" Perhaps that's triggered by the magic number?

    • jwz says:

      Who knows what fuckery is happening behind the scenes, but if you say "yes" to that, gmail fires off a completely normal "unsubscribe" message, which we would have processed properly. (My graph above is only about bounces, not explicit unsubscriptions like that.)

  9. mhoye says:

    The idea that there's a short-int overflow somewhere in the guts of something making this decision and nobody's ever noticed is pretty great IMO.

  10. Steve Allen says:

    Observations like this leave me pondering machine to machine interactions and asking "What would Patrick McGoohan do?"

  11. ContextSans says:

    Gmail accounts are marked “inactive” after 2 years, and afaict they have about a six month grace period where you can log back in and reactivate it.

    • ContextSans says:

      I should specify “you have a six month grace period before they delete it”.

  12. Leonardo Herrera says:

    Hey, did you manage to find out what caused this? Are those or custom domains?

    The reason I ask is because a few months ago I got a couple of of my legacy business Gmail accounts closed because they started charging money for previously free services unless they think you are a non-profit or have no revenue, or something. Perhaps is something similar to that, or simply they started enforcing over-quota.

  • Previously