Adding confirmation to unsubscribing page

I was running a website for a club at my university and I recently migrated it from GitHub Pages to a self-hosted Ghost instance. Then I imported our mailing list to Ghost.

However, I found that some of the members unsubscribed almost instantly after I sent a newsletter. After checking the access logs of Ghost and Nginx, I found that these unsubscribed members all used my university’s email service, and the cancellation links were accessed from only two IP ranges, which are owned by a famous web service provider. Therefore, I suspect that there may be some anti-spam service deployed by my university that accessed the cancellation links for spam tests. Since cancellation links in Ghost do not require any kind of confirmation, these members are automatically unsubscribed unknowingly, and they will no longer be able to receive our newsletters in the future.

I reached the IT help desk at my university, but they could not do anything about it. So, the only solution would be add some form of confirmation to the cancellation link. It does not have to be some sort of captcha, a simple “confirm” button would get the job done. Could anyone give some hints on implementing this in Ghost?

Thanks in advance.

1 Like

I don’t have a solution for you, but definitely, some corporate email systems click on every single link for spam defence…this also likely causes some login magic links to expire before the user has the chance to click on it.

I checked the webhooks and there’s nothing related to unsubscribe:

member.added Triggered whenever a member is added to Ghost
member.edited Triggered whenever a member is edited in Ghost
member.deleted Triggered whenever a member is deleted from Ghost

just remove the unsubscribe link from emails directly…