Mailgun Alternatives

Why can’t bulks emails be a self-selected provider the same way that transactional emails are?

You already posted the link the contains the overview of how the architecture works. So the broader answer is that you can’t send newsletters with SMTP, and while it is trivial to support multiple SMTP providers, it is not at all trivial to support multiple bulk mail APIs.

A self-hosted ghost installation now costs you $35/month if you want to send bulk emails, on top of hosting costs [for ~100 emails/mo]

Or you could use Ghost(Pro) and pay $8 for both? There are lots of good reasons for self hosting Ghost, but “it’s cheaper” is generally not one of them. When you add up all the costs of running a Ghost installation that makes active use of newsletters, Pro is almost always lower in cost.

As @mjw mentioned, you can also switch to the Flex pay model on Mailgun, which is less than $35/mo.

it’s silly to either be locked in to Mailgun or lose a lot of value that Ghost has been building.

Is it though?

We have a small product team, and we have to very carefully choose where to spend our energy and resources. When deciding what to do next, we try to look at what would benefit most users, in most ways, most of the time.

Building a complex system to support multiple bulk mail API providers would take a huge amount of time, only benefit a handful of specific self hosted users sending low volume email who don’t like Mailgun, and increase the future-maintenance burden of having to support every new email feature across multiple providers. So the economics of working on it don’t make a lot of sense for the core team. Instead we try to prioritise things that hundreds/thousands of people all want, like all the things that you see on Ghost Changelog — The latest feature updates

We can’t do both. We don’t have tens of millions in VC money and hundreds of developers. So we have to choose.

It’s certainly possible for Ghost to support multiple bulk mail providers, but the most likely way that’s going to happen is via open source contributions from the community to add support for it, because they need it themselves.

The beauty of open source is that if enough people want something, they can easily get together on GitHub and make it happen themselves (or fund someone else to) - no need to wait on a company to deliver it. But if nobody is contributing something you want, then it’s likely that there isn’t enough demand or interest from the broader community to make it happen at the moment.