Goodbye Sparkpost

Excuse me @Owen_Walters, when you mentioned Elastic Email; which plan is the best to start with discourse? I saw in the pricing’s elastic email page that they offer… the “Email API”'s offer “Pay as you go” will work with discourse?


Pay as you go works with Discourse, yes.


That’s actually a very good option for even moderately active sites, and still good for very low volume new sites, thanks for sharing.

Do they aggregate by all your sites - ie charge by account rather than domain? Can you then leverage your quota across several sites? (Which would essentially make adding a new site marginally zero cost).

1 Like

I’ve not personally used Elastic, but Mailgun/Sendgrid both have account based quotas.


I have tried them all until I settled with Amazon SES. 10/10 deliverability and for a small to medium site it will cost pennies.


Bad news. Elastic Email does not have Discourse’s integration. :sob:

I contacted ElasticEmail’s Sales and Christine from Elastic Email said:

We do not have an integration with Discourse yet, You can try our integration with Piesync and it has a lot of apps supported.

So… goodbye Elastic Email too.

Ps; information updated about Elastic Email and Discourse, here #19.


SidV, what do you mean by that? SparkPost doesn’t specifically have Discourse Integration as such, but its SMTP interface permits Discourse to send emails? What is Elastic Email missing?


Hi Robert.

I really do not understand why Elastic Email Sales Support told me that. I asked them if they could buy any of their plans to use Discourse, and they responded again that there was no integration.

Now I’m still in conversation with another person.

Finally, Carlos from Elastic Email said:

Pay as you Go is definitely compatible with SMTP. You should have no problem using that plan. Just ensure to use the instructions in the article and the Discourse link you provided and everything should work correctly.

If there are any problems during setup please let us know and we’ll ensure to provide assistance to get everything working correctly. We highly appreciate your help with this.

Thanks for choosing Elastic Email!

I should try, but it seems that nobody here uses Elastic Email (?).

1 Like

Just ask them if they still support SMTP, because that’s what Discourse uses. :slight_smile: The guide I linked above shows how to use Elastic Email’s SMTP with Discourse.


I use SparkPost on one forum and MailGun on another. Wanted to hedge my bets and find the most cost-effective and reliable service.

SparkPost’s announcement just made that decision for me.


Just checked with Elastic Mail:

Given they are (very) slightly cheaper than Amazon SES if you are not using EC2, I think I will be going with Elastic Email’s Pay as You Go.


But there are some issues with elastic email as well Add IsTransactional:true to SMTP Mail Headers to satisfy ElasticEmail


Jay, thanks for bringing that up. Let me understand that better:

What you are drawing attention to is: when people get email delivered from Elastic Email, they are provided with a very prominent link and can unilaterally unsubscribe from email delivery and Discourse will not know about it? You as the SA will be none the wiser?

1 Like

I do not have first hand experience.

It sounds like they insert an unsubscribe link and that a special header is required to make it go away. I don’t know if there is a way to have elastic email but a webhook to notify discourse of unsubscribes,but they are not listed in Handling bouncing e-mails.

I think that if you can make aws work, it’s probably the best solution, but that’s not a good solution for people who come here to learn how to make email work.

Mailgun is really easy.



This is kind of moot for me, and I’ll tell you why: SparkPost did exactly the same thing - though admittedly I never checked to see if there were any hooks I could have used (stupid me, because there are and its 2019 FGS).

In that instance I only found out because the site affected serves my local community so I bumped into the guy who had inadvertently clicked the unsubscribe link on the SparkPost delivered mail and was grumbling he wasn’t get any of the password reset emails. SparkPost has an audit trail for this though and an ability for admins to re-subscribe someone (obviously you need to use this sparingly!), so once I learned of the issue it was an easy fix. I will know to configure my email better next time.

You are swinging me towards Mailgun now, though, thanks!


I do wish there were a more “generic” way of Discourse handling webhook email bounces. Our preferred provider (Postmark) is also not on the list which means we keep sending emails to people whose address has bounced.

Some sort of magical generic incoming JSON webhook parser for bounced email webhooks would be awesome!

1 Like

What you mean is that some “magical standard for JSON webhooks” would be awesome. As it is, each mail service makes up their own, so a separate webhook parser is needed. Creating a plugin that would do it wouldn’t be that hard and could probably be had in the #marketplace (and might be accepted as a PR) for something on the order of $500.


Yeah, I was just thinking that assuming +90% of the incoming bounce data is in JSON or some other regex-able format, it might be possible to indicate via a setting to indicate the JSON “field” that represents the bounced email address and possibly the other field that would represent the bounce type (hard, soft, etc.).

It could be listed as a “generic incoming bounce email webhook regex parser.” The name rolls right off the tongue :stuck_out_tongue: It could possibly help with the constant churn we’re likely to continue to see for this particular type of service.

We’re a pretty low volume employee intranet site, so we’ll probably just live with it for now.


From another thread, you can also make the extra ElasticMail unsubscribe link go away by telling them where Discourse’s is: annotating it specially as {unsubscribe:{https://.....}} (I’d recommend confirming with support before sending a pull request).

This could probably be accomplished by editing translations?


I also was using sparkpost for my discourse instances and recently received this notification from sparkpost.
So I went searching for an alternative.
I set up sendgrid and that seems to work well so far. I am using the Basic plan for 15$/month.