Recommended SMTP provider

Hey gang. Currently using sparkpost as my SMTP provider, however even with all of the DNS records in place for my domain (SPF/DKIM, etc), the vast majority of the emails sent by my site end up in the SPAM bin for my users.

I switched over to mailgun as a test , and the email deliverability was practically %100, however it is a paid plan (I used the free trial for testing), however without a credit card, you can only whitelist five email addresses.

With all that being said, can anyone recommend another decent free service such as sparkpost? I understand that mailgun is only $10/month, but still looking for free options.

Any recommendations? Deliverability is very important.

2 Likes

This is covered in our official documentation on github. Give it a look.

Spoiler alert: free ain’t gonna get you far.

7 Likes

Been using Mailgun and it’s working nicely for us so far! Very occasional deliverability hiccups, usually when one of their IPs gets on a mail provider blacklist, but their support is good. We have a medium-sized forum (around a thousand users, a few hundred active) and we’re still within Mailgun’s free plan. But even w/ a large forum their service seems relatively cheap.

5 Likes

I used Pepipost’s free plan for quite some time and deliverability was fine. They manually verify domains and have a reward/penalty system for opened/unopened mails. Thus they are unlikely to attract raw spammers.

Recently I switched to Amazon SES, which is quite affordable.

1 Like

We use Amazon SeS sending about 40K emails a day around 1 Mil Emails a month with no issues whatsoever. And fairly affordable.

5 Likes

Seems to be that time of the year (yearly Discourse mandatory maintenance) :smiley: .

Looks like gmail finally has killed off it’s 3rd party gmail access. Not that I care, because of Discourse I’ve had switching to mailgun on my bucket list for, well, forever.

Which of course has gone “pay only”.

So is mailjet the best free option then? I should normally easily manage with 200 max and I’m not in the mood to finally set up a mail server of my own.

1 Like

There are sites partnered with SendGrid who can offer up to 12k emails/month for free, even nowadays. All you have to do is have them provision the account for you and ensure access controls are in place on the partner’s side (only 1 login on the SendGrid site, accessed via the partner)

Not sure how much I should say here (don’t want them to discontinue the service or anything like that, especially with ESPs moving away from generous free offerings), but would be more than happy to point you in the right direction if you can’t find it.

1 Like

For what it’s worth, I have been using MXRoute since I started this thread, and it works flawlessly.

1 Like

Got things to work, not the way I wanted initially but there might be one thing I misread. Short story, mailjet worked on the first (mailjet) try. Thanks for the help and/or a good forum with solutions.

Summary

LONG VERSION

How I tried to get it working (let’s you see how someone with very little linux memory left solves these things). So all boring steps included as well… resulting in a few developer hints and a possible bug.

Took a Digital Ocean snapshot (had some bad experiences with Discourse upgrades before :smiley: → upgrading to newest went like a charm this time since I now have 50G instead of 30G, kudos anyway)

Since lfchosting became hostpapa last autumn I decided to use hostpapa as I pay for it after all.

Irrelevant ministory about lfchosting migrating to hostpapa. One of my statistic sites that gets fed traffic from outside stopped working. Support was clueless for 3 months. THEN someone said they are going to disable some possible firewall rules - > that fix didn’t work… but that gave me a clue → they had installed ModSecurity after the migration and once I tossed that crap out the window all my traffic flowed nicely again. Just saying, you migrate old customers, use a new firewall/whatever, customer has traffic problems… and no one in support has any kind of lightbulb activity? Sheeesh.

Tried Outlook to check credentials are ok but could not get it working - that does NOT say much though. Actually tried Pegasus Mail first but that says even less these days - better readable logs though :smiley: .

telnet mail.papamail.net 465 at least replied something (don’t call me an idiot here)

Scratching head, 465 would indicate TLS/SSL and not starttls… gnnngh.

Aaargh, will just test by changing app.yml and reading logs…

=>app.yml editing => smtp password conundrum
Double quotes around or not? Had double quotes in previous working email vs gmail, but looks like it should be without quotes in so many posts. Hmm, is discourse smart enough to strip unnecessary quotes? Someone actually having “password” as a password would be rather unlikely :smiley: .
Starting to wonder if gmail actually strips double quotes from a password by default and that’s why it worked with gmail earlier?

After rebuild app, send test mail does not work. Why on earth the log of that cannot be shown directly on the test page is beyond me (hint, hint :slight_smile: , ok, maybe a security risk? ).

more shared/standalone/log/rails/production.log
Didn’t show much or too much garbage to find what I needed (see hint, hint above).

./discourse-doctor

Not much use.

./discourse-setup

Takes forever (a bit like launcher rebuild app), wondering what the fastest way to change app.yml and test outgoing mail would be?

discourse-setup BUG?: having a password like gjwha9T78&vv produced this broken line into app.yml (!):

DISCOURSE_SMTP_PASSWORD: "gjwha9T78  DISCOURSE_SMTP_PASSWORD:  gjwha9T78&vv"

Apparently the double quotes are required after all. But discourse-setup writing “garbage” into app.yml if the password contains a “&” is a bit bad.

While waiting for the nth app rebuild… setting up mailjet just in case…

One more rebuild using mailjet and mailing out works straight off the bat.

Conclusion after 2h = mailjet works. Wohoo… BUT…

There must be a faster way to test mail sending from discourse than app.yml editing + rebuild?

Since I’m assuming I did a lot of things the long and arduous way, I’m sure someone will point out better ways. Especially as the help here always is proactive, not “you stupid noob”-style :smiley: .

Kinda hellbent on actually getting hostpapa to work now as well, after all, that’s one of the things I actually pay for. Will of course post here if my guess is correct, just too late in the evening tonight.

Best references used solving this:

Useful (well, understanding the 25/465/587 port thingies):
Troubleshooting email on a new Discourse install

Also useful once you are ready to try any other mail provider:
https://github.com/discourse/discourse/blob/main/docs/INSTALL-email.md

2 Likes

It, in fact, does do a rebuild app.

Edit the file,

./launcher destroy app
./launcher start app
4 Likes

Way faster, thanks.

Is this one of the “everyone that knows it uses it” or some sort of “should do the trick, but rebuild is safest”? Yupp, searched the site for how often this was mentioned… :smiley:

2 Likes

It’s easier to provide one solution that will always work. And the number of times that the trick is useful is fairly small and just when it works is hard to explain.

2 Likes