Ask HN: Recommendations for an SMTP Sending Service?

85 points by BrandoElFollito ↗ HN
With the Google Apps changes I am looking at moving my emails somewhere else.

One solution is a SaaS service that would cover all my needs, but they all have limitations (except at very premium levels of prices).

I am considering hosting the incoming part (having my MX pointing to my home server) but I do not want to deal with the outbound part because of apparently how difficult it is to have consistent deliveries (because of spam filtering - there were several comments in HN about that).

Is there a good SMTP sending service that is affordable for home users (6 users sending a normal (low) amount of emails)? I guess that what I need is a service that will forward @mydomain emails (with the possibility to set up SFP, DMARC, ...) and handle at least two domains.

94 comments

[ 3.6 ms ] story [ 218 ms ] thread
I use the registrar Gandi, but there are a couple limiting catches - you have to transfer your domain to them (good service though), and only 2 email accounts are included per domain with unlimited aliases, and additional cost per address is either usd$0.40/per month for 3GB storage, or $2/mo for 50GB. They offer webmail and all that but still give you imap & smtp access

So on the low end it would be $1.60 a month additional, not bad

One of my domains is actually with Gandi (I am French - the other one is with OVH). I was not aware of their offer but you made me realize that, maybe, I could use their SMTP while hosting my emails.

I am not sure which checks they do (it is possible/likely that they filter on the email addresses that are registered with them) but it is worth a try. Thanks.

Try migadu: https://www.migadu.com/pricing/ about 20 quid for the year, nearly unlimited domains, and good service. I use it for a good few domains. Happy with them.
Keep the quotas in mind on the cheapo plans.
I've been using sendinblue, reliable and a very generous free tier. Smtp2go is good as well, with a bit of a lower free tier (9000 vs 1000 mails / month)
Amazon SES will cost pennies for personal use volumes. You really need to stay on top of any reported abuse complaints or they will shut you down quickly, which is a good thing in the big picture.
Sendgrid, but SES also is a good choice too.
I’m guessing all the major clouds provide this?
I've been using Postmark for my personal email domain.

I was using Sparkpost, but I had problems. Specifically, some email help desks seemed to reject the emails - so I was unable to respond to some inquiries. Many friends reported that my emails were going to Spam, too.

With Postmark, I've had zero deliverability issues.

I recommend monitoring DMARC closely to ensure deliverability. I use this free tool from Postmark: https://dmarc.postmarkapp.com/

Fastmail has been great for both final deivery and outbound smtp for personal email.
I'm very happy with fastmail too but I'm only paying for one inbox. If OP needs half a dozen users, then that's $300 a year, which is excessive for light personal use. I suppose as they only need SMTP they could set them all up as identities on a single inbox but that's not what fastmail is meant for.
I have had an awesome experience with https://mxroute.com/. The owner takes deliverability very seriously and I have never had an email go to spam. I would recommend it.
+1 for MXRoute if you're just looking for an affordable alternative to Google Apps and not some fancy API. They bill by storage and not by the number of accounts, and they offer discounts around the year if you look around. Also don't be fooled by their frontend that looks like some run of the mill shared hosting. Their backend is absolutely professional.
If it's for a single user, at that price, Microsoft's Exchange Online Plan 1 might be another option.

Otherwise Migadu or PurelyMail are a lot cheaper.

I second PurelyMail. Their price schema is based mostly on mailbox storage size, and I believe I paid under 10$ for the last two years of hosting some catch-all mailboxes for multiple domains.
I had heard of mxroute previously, but for some reason, i only thought they focused around transactional email...like sendgrid, etc...and not what others might refer to as conventional mail hosts. Their price is really compelling, and the honesty of their documentation is refreshing! Take a gander at some of their commentary around hosting calendars, contacts for example: "...Just know, that’s not where the bulk of our time and energy is going." [https://mxroute.com/docs/#/General/Do_You_Sell_Calendars] Granted i have the need for email as well as calendar and contacts, but damn that level of honesty is compelling for me to at least consider them for my short list. Kudos to the MXRoute folks for being honest!
My favorite thing about MXRoute is the super simple rate limits that you can configure when adding a user. I use it on devices for notification e-mails and being able to limit those logins to something low like 5-10 emails per day is awesome. It really minimizes the damage if something goes haywire, a device gets compromised, or a device gets stolen.
The most well-renowned specializing in outbound SMTP AFAIK would be Mailroute, Mailgun, Sendgrid, mxroute. They’re all comparable; pick whichever you think suits you best.

There’s also “mail-hosters” like Posteo, Migadu, Fastmail.

Been using mailgun for a long time free for 5000 emails/mo.
I use them for my infrastructure's notification mail needs. Written a small tool to send e-mails from command-line via an API key.

They're a joy to use.

The lack of automatic DKIM rotation is the only thing that keeps me from using them instead of Sendgrid.
Why not purelymail?

It's cheap, allows multiple users, multiple boxes, TOTP, Application Passwords, SMTP, Webmail, custom domains and more.

Starting $10/year.

https://purelymail.com/

Postmark. Be sure to set up SPF, DKIM and DMARC.
I’ve considered doing the same thing many times. My vote would go to Sendgrid based on my last round of research 2-3 years ago.

Reasons: 1. Automatic DKIM rotation. Sendgrid will setup 2 CNAMES so that they can automatically rotate your DKIM keys making this a “set and forget” situation.

2. Good delivery logs so you can see exactly why something wasn’t delivered if there was a problem.

3. Different permission levels for different users included. You can create a user with only SMTP permissions to use to send with while not having to worry that if it’s compromised someone can go ballistic on your account settings.

3a. Solid 2FA

4. They fiercely guard their IPs against abuse.

5. Ample free tier for personal use.

6. I believe they have an option to spam filter your outgoing messages so that even if the account (or machine) was compromised, you could prevent delivery.

Those are the main reasons from my experience. Plus all the other more standard features like read receipts, etc if you want.

Sendgrid has the worst IP addresses I ever used for sending email and the customer support has been even worse.
Yeah, there free tier was useless when I tried it. Essentially couldn't send email to anyone, including myself, since their fiercely guarded IP addresses were crap.
Worse than SES?

I agree, though. You need to pony up for a dedicated IP from Sendgrid to get good deliverability to many hosts. Small ISPs tend to be the worst, IME, where Google, Comcast, etc work pretty well with SG.

I’ve tried a dedicated IP from sendgrid as well, but our sending volumes were way too low even for transactional mails. It would have taken months of sending fake emails to warm the address up.
Sendgrid can close your account and you have no recourse, no tickets or appeals. This happened to a friend I had set this up for, account was closed for inactivity

Delivery wise I also heard they are one of the providers most likely to get flagged as spam

I'm working through the sign-up process for SendGrid (100 emails/day for free doesn't seem too bad), but their website seems so damn slow. I had to wait about 15 seconds for the signup page to load. You'd expect they'd optimize that page above all others to get conversions?
I see so much phishing from sendgrid that I just blocked the entire domain. I don’t care if they’re trying to be legit, they clearly can’t keep control over bad actors using their platform. I’ve also done the same with Google appspot domains.
SendGrid is hot garbage hacked together. I reported a critical bug (unsubscribed emails still receive future scheduled emails causing high complaint rate) five years ago and they told me they know about it, acknowledged it was a bug, and said they had no plans to do anything about it.
Ugh. I had the same experience with a company recently. Completely put me off them.
Are they a major that we're likely to stumble across in day-to-day use?
Perhaps. I was Plausible's paid analytics service I had trouble with. I'm sure their host-your-own is fine.
Replying to myself:

Wow, had no idea the Sendgrid situation had gotten so bad.

In that case, Mailgun.

My vote (like someone else here) goes to Sendgrid. I’ve been using them since before they were sold to Twilio and they haven’t let me down yet.

They also have a reasonable free tier that I basically never exceed. I’m not sure if their basic features would fulfill all your needs though.

That said, if you need personal email I’d say just use Fastmail, and you won’t be disappointed.

Just wait for it ! They can close your account on a moments notice and there will be no way to get your data !

Sure use it if you sending spam'ish email (seems most do) but for anything critical stay far far away !!

What data is in there? It’s a SMTP server to me. As long as it sends my emails everything is good.
Normal transactional mails. Password resets. Ticket Notifications (think JIRA) etc.

>As long as it sends my emails everything is good.

Lol ja it was good until it stopped sending my mails. They closed down our free account after 5 years when we wanted to upgrade to paid tier to get better analytics. EXACT SAME mails (content,recipients, amount etc) we just wanted to give them money and get better reporting. Boom closed down our account over the weekend. No access to our data or account. No recourse !

Zoho is usually pretty cheap and reliable. Been around for a long time and don't seem to be going anywhere fast.

Their latest blog says to expect a well priced family solution in the next couple of days

Been using the free version of zoho for about 10 years. What an amazing little piece of software.
I use Zoho for a small company and indeed the pricing is really good and the product is reliable. The UI is really well designed and they have thought about (and implemented) nearly any feature I can ever think of. Really great service.

I plan to move my family to Zoho in the next couple of years. I only haven't yet because I've got so many other items on the to-do list.

I know you specifically say you don’t want to try self-hosting outbound, but I’m going to still vote for it because I think the reasoning you cited is a little second-hand FUD. I self-host mail and yes, I occasionally run into annoying delivery problems, but not often, and once you’re configured (SPF, DKIM, and so on), E-mail is set-and-forget. I think the reassurance of not relying on the whims of yet another cloud provider outweighs the convenience, but definitely reasonable people can disagree! Good luck though. The cloud hosted solutions mentioned in other threads are fine choices.
While I like personal mail servers and would suggest tech-savvy people at least to try them, OP mentions a home server, which probably involves a residential IP address, an ISP that won't set a reverse DNS for regular users, and likely other annoyances that would complicate mail delivery considerably more than usual.

If you'll decide to give it a try, BrandoElFollito, it's best to have at least one IPv4 address that isn't in a residential range and not in DNSBLs, a /64 IPv6 subnet (since blacklists tend to add at least a /64 subnet for those), ability to set in-addr.arpa records.

I am trying iRedMail to self host an email server. What do you use?

I've setup SPF, DKIM and DMARC. The PTR record is not possible for me to setup. How did you get around that? Did you get a static IP address?

What else do you think is necessary to make this better?

My stack is exim4, dovecot, and spamassassin, running on Debian stable. I do have a static IP address as the machine is a VPS. Admittedly this makes me reliant on my VPS provider so technically the whole stack isn’t in my control. I can however in theory fail over to metal on my residential IP if my VPS fails, although 1. I would want to request a static IP from my ISP and 2. I have not tested this transition recently.

At one point in the past I needed to get a different IP address and suddenly had deliverability problems because the IP I got from the VPS provider was previously naughty. Re-requesting another IP was all it took to solve that.

I would maybe start with a provider (considering that OP is hosting for others and not just themselves) and use that as fallback as they eventually start setting up their own outbound.
I’m not sure how you can say it’s set and forget if you have to deal with “occasional annoying delivery problems”
Any service runs into "occasional delivery problems". In those cases you have to explain support the issue and deal with the luck if they will be understanding or not.

I'm sending few MM emails on daily basis (no, it's not spam) and hosting my email server on simple VM. Any service will cost me ten of thousands USD monthly while I am paying something under $100.

Self-hosting outbound is almost impossible though, I've yet to find an ISP that's not blocking outgoing port 25. I'm semi-self-hosting outbound and it's an absolute nightmare to get the ISP to acknowledge that if they block your packets, they must provide an alternative (smarthost). Also, getting them to register a reverse DNS entry is very difficult, most supporters couldn't tell you the difference between DNS and rDNS if their life depended on it.

The technical stuff with SPF and DKIM is the easy part.

I use Sendgrid's free tier in this exact way, for mail from catern.com.
aws ses, super cheap, fairly easy to setup. I just wish they had better or easier things like sendgrid has for analytics and troubleshooting. But i am paying pennies for my low sends.
In my experience a few email services refuse to accept emails from AWS SES, probably because a lot of automated emails are sent from AWS SES.
I came to recommend AWS SES as well. I also use Google to handle my mail, but I use a catchall email address and Google does not support changing the From address of outbound mail. I've been extremely happy with SES, as it is easy to set up and so far as I know I've not had delivery issues.
Gmail? You can add sending from other address/SMTP in the settings

  > Gmail?
Yes. I use Thunderbird to browse the mail, but Gmail is the MX record.

  > You can add sending from other address/SMTP in the settings 
Occasionally I do open a web browser to view the mail from there, so that might be useful. Thanks. But I still would have no way to alter the From header in the web interface.
I use simplelogin.io for a bunch of my personal domains. They route it all to a catchall mailbox on gmail.
Can wholeheartedly recommend Postmark, fabulous service and support. Virtually no problems over the last 6 years and always incredibly responsive to any questions.

Used to be with SendGrid, had a very bad experience with them where (at the time) they showed little interest in small customers and wouldn’t go back. A lot can change in 6 years, they may well be brilliant and now care more about small customers, but for reference:

https://news.ycombinator.com/item?id=12142728

Wow, that's great. Suggesting you rent a dedicated IP from them to improve deliverability right after saying the move to new IPs reduced deliverability.
In the last year I went through many of the SMTP sending services. SendGrid's non-dedicated IPs offered the worst deliverability I'd ever seen, and yeah the proposed solution was move to a Pro (dedicated IP) plan
I have an upcoming project in the pipeline that would injest emails based on a users custom email handle. The software should parse the email, strip one time password out of it, and send the data (otp and email Id and time" forward. At the same time, the user uses a browser extension to tell the server that an otp has been sent.

The software should "match" the two api calls which would "give" the user the requested otp.

I dunno. Should I use amazon ses+lambda+ api gateway or is there a Foss selfhosted option

Try uberspace! Small German hosting provider that should cover all your needs for sending and receiving email with a pay-what-you-want model (>5€ monthly encouraged). I host email adresses for several projects with them and never had any deliverability problems. Plus, they don't want any data from you.

https://uberspace.de/en/

Edit: they don't sell domains, but you can bring your own domain that you have registered elsewhere.

A relative new player is MailerSend (https://mailersend.com/). We've moved all of our transactional e-mail over to their service.

They have a sensible onboarding and UI/dashboard. The dashboard makes it clear how to set up SPF, DKIM and DMARC. There is a generous free tier for a single domain. A single paid account supports multiple domains starting at $25/mo for 50k outbound. Support has been excellent.

And the biggest upside is that their shared IP range, so far, is clean and not blacklisted. That was the clincher for us.

I have no connection to MailerSend other than as a happy customer.