I manage an email newsletter for a customer. It uses a custom list management utility, but the emails are being delivered through SendGrid.
In order to integrate correctly with our list management unsubscribe. I'm manually creating the "List-Unsubscribe" header, with a mailto address, which goes to an email parser, and unsubscribes the user from the correct publication etc.
The email parsing etc. works fine. However for some reason gmail is not displaying the "Unsubscribe" link in the header, as it does with other newsletters I receive.
Another newsletter I manage for a different customer, uses SendGrid's built-in unsubscribe management, and for these ones gmail does display the link.
What I want to know, is why is my custom "Unsubscribe-Link" ignored by gmail, but SendGrid's works?
SendGrid's "List-Unsubscribe" looks like this ...
List-Unsubscribe: <mailto:unsubscribe@email.mycustomdomain.com?subject=http://links.mycustomdomain.com/asm/unsubscribe/*q*user_id=[SHA hash...==]>
My custom "List-Unsubscribe" looks like this ...
List-Unsubscribe: <mailto:u-[custom-encoded-user-id+publication-id]@list-management.mycustomdomain.com>
My email parser reads the incoming "to" address, and interprets the encoded user-id and publication-id, to unsubscribe the person from the correct list.
Can anyone suggest why gmail might not like my link? It's extremely difficult to find detailed information about the requirements for this header.
One obvious difference, is that mine doesn't have a subject, but that's because it doesn't need it. It gets all it needs from the "to" address. Could this actually make a difference though? Does the "to" address need to remain static?
I thought perhaps it just needed time, for gmail to familiarise itself with this newsletter. However it has been running for months, and still no link.
The list is very clean, and all recipients have opted-in. We don't get any spam reports, and very few bounces.
I've gone to a great deal of trouble to ensure that everything works correctly from my end, and it's very frustrating that I cannot find out what I need to do to make this work.
I found a similar question at the gmail forums, and the official response to that question was to "contact a professional about constructing html emails".
Not very helpful for me, as in my case, I'm supposed to be that professional.
Any suggestions would be greatly appreciated.
Apparently, Google uses some additional heuristics to decide whether the link should be displayed or not. The List-Unsubscribe
header could be abused by spammers to validate that their target got the message, and thus, GMail only shows the unsubscribe link if the source of the message has accumulated sufficient trust.
See https://support.google.com/mail/thread/49653586?hl=en&msgid=49801705 for a response posted on Google Support.