Support sending bulk email from other providers

The Ghost docs mention a desire to support other bulk mailers besides Mailgun. I’ve submitted a pull request which would make that possible:

It works by loading the Mailgun sending module based on a value in the config system. This allows the creation of alternative sending modules which could be created, supported and maintained by third-parties and referenced in the config system as an alternative.

The pull request lays that foundation. At this point, a module for an alternate provider has not been created, and other aspects like handling analytics or nice UI to provide an alternate API key are not created.

Hi markstos, I’ve been looking into doing something similar as like you I’ve noticed Mailgun’s cheapest plan now seems to be $35 and not good value compared to other providers for small distributions lists / message volumes. Obviously you can plug into mail chimp etc. the old way but I think it would be nice to be able to use the inbuilt newsletter functionality with multiple providers.

My plan was to add a new adapter type and architect things in the same way storage adapters are setup. Use the current mailgun bits as the basis for a BaseEmailProvider adapter and then people could add their own email provider adapters that implement the required functions.

Have you had any feedback from anyone in the ghost team as to whether they are open to making changes to support other providers?

@iSCJT I heard back from Mailgun support, and it seems Mailgun still offers the Flex plan, they just don’t advertise it. They offered that I could switch to the plan. So I’ll probably stick with Mailgun for now.

At least for email sending, the code is already pretty modular. I was able to adapt it to make it possible support other email senders in just a few lines of code. The code for handling third-party analytics looks like it is already probably module as well. The Mailgun analytics code is already in a standalone module.

No, I have not heard anything from Ghost team about the pull request, but I just submitted it two days ago. If this wasn’t on their roadmap for the near term, they might not be in a hurry to review and merge it.

Thanks for the info re: Mailgun, I’ll contact them about getting onto the flex plan as that will solve my immediate needs and keep an eye on your pull request / come back to working on some adapters when I have some more time. Thanks @markstos

1 Like

I’ve updated the title of this thread to make it a more general topic around adding support for other mail providers.

As mentioned on the PR that was opened, if we move forward with this, it needs to use our adapter-based approach to solve the underlying architecture.

There are two major pieces to this:

  1. bulk mail sending
  2. email analytics

I think if the first were solved, more people would be interested in contributing to 2.

Although the Ghost team have some plans to improve aspects of email sending over the coming months, doing the work to migrate bulk sending to an adapter system is not currently on the roadmap.

However, I’d be very happy to support contributors to work on this problem :)

Are there any updates on direct integration of email service providers with Ghost CMS or the same as any before?
So far in the market, there has been a lot of development and variations in pricing. And, giving flexible options for the creators to have their own choice of email service providers similar to that of transactional email will be more ideal. Because, platforms like Google Cloud and Oracle Cloud Infrastructure have been offering much reasonable pricing and consists of free tier with no thought of reputational comparison with respect to Mailgun at all.
There are far better options available if the choices are given at least based on some more reputed and stable pricing platform within Ghost CMS would be convenient.

Still waiting for someone to contribute the code to enable it.

2 Likes