Hey Ghost community,
I activated the Members feature on my blog a while back, and the question of syncing membership tiers with Discord roles came up pretty quickly. The NoCode route (Make, Zapier) works, but the pairing logic isn’t exactly straightforward to set up.
So I built ghost-discord-worker — an open-source Cloudflare Worker that bridges Ghost and Discord automatically.
The idea is simple:
- Configure Ghost webhooks to notify the Worker on member events
- The Worker maps Ghost emails to Discord user IDs using a Cloudflare KV store
- Members link their accounts once with /link on Discord — after that, everything is automatic
Supported events: member added (free or paid), upgraded, downgraded, deleted. Runs entirely on Cloudflare’s free tier.
The project is on GitHub: GitHub - ltoinel/ghost-discord-worker: A simple worker to update Discord role based on Ghost Subscription
It’s a first version and I’d genuinely love feedback from anyone who gives it a try — whether it works for your setup, what’s missing, or what could be done better. All contributions welcome!
My Ghost post on the project :
Regards,