Hacker News new | ask | show | jobs
by tetrisgm 801 days ago
Is there a reliable solution we could use for our small startup? We want to shoot out daily emails to our users, like Bandcamp or Substack do.

We could ofc use Mailchimp but always happy to explore self hosting. Would this or another solution work?

8 comments

I've been using Postal Server for 2 years ( https://docs.postalserver.io/ ) sending around 50k emails / day without any issue.

Just make sure you set up everything (SPF, DKIM, DMARC) correctly, including the PTR reverse lookup of your server ( really important ).

Key tip: warm up your ip(s). I use mailreach.co ( it has a USD 25/m cost ), reached near 100% deliverability in a month.

I now have barely have any maintenance to do. It just works.

> Just make sure you set up everything (SPF, DKIM, DMARC) correctly, including the PTR reverse lookup of your server ( really important ).

I don't know much about mail server and this must be how people feel when they watch Hollywood movie hacker moment

It's mostly DNS records. Postal Server has good documentation and tools helping you set up quite everything in their UI.

It seems Stalwart also makes it easy in their UI based on the gif in the post. You can see at some point a list of DNS entries to update.

The only missing thing in all these is the PTR record which needs to be set up at the hosting level.

A good tool to check if everything is OK is https://www.mail-tester.com/

It's not that hard, and less work than it used to be.

Most of the movie hacker moment is often people who want to setup and configure and maintain each component of an email server manually, compared to a reasonably compiled package to allow more administration of it.

If this package isn't someone's cup of tea, products like MDaemon continue to exist and crush it for self-hosting email using a windows server just fine for the past 15-20y.

Postal is not very well maintained, I don't think it's a wise choice to use it if alternatives exist.
Why? Last commit on main branch was 3 weeks ago.

It's not perfect ( a bit slow ), but really easy to set up and configure. Which was the main draw.

Thanks! Wdym by warm up your ips? How does mailreach relate to the setup?
What email warming services do is they create activity between your server and hundreds of email accounts they manage on major ISPs and they make sure to click on "not spam" if it falls under spam, and try to bring your emails to the main inbox.

It's a bit of a grey area thing in fairness.

If service providers don't already detect such users it's quite guaranteed that they will in the future.

Trying to game the system is frowned upon in all cases.

Oh cool. So that's what mailreach does? Sounds great tbh
Sounds malicious.
Not inherently. Whole IP blocks seem more or less black-listed by Google and Microsoft. So if you happen to get a server in that block, you can't send email.
Roll your own with Amazon SES. Bang up a little script and call the CLI.

    for recipient in "${recipients[@]}"; do
    aws sesv2 send-email \
      --from-email-address "$sender" \
      --destination "ToAddresses=$recipient" \
      --content "Simple={Subject={Data='$subject',Charset='UTF-8'},Body={Text={Data='$body',Charset='UTF-8'}}}" \
      --region "$region"
    done
I got that script from their website. Should be easy enough to knock something up in Deno or whatever. 50,000 emails/month free! Amazing.

If you want an actual product, check out Buttondown. Indie, great support, and amazing APIs.

At my corp we are almost to tge point of sending amazon ses straight to spam by default. Those guys will send email for anyone with predictable quality problems.
And if you are looking for an easy-to-use UI on top of SES, consider this app https://sendy.co/ which is downloadable and self-hosted.

Tbh I haven't used it in a few years but it was super useful. I see it's a one-time cost of $69 (used to be $29 but that was over a decade ago).

For those using AWS SES, I have had good success with SendWithSES - https://sendwithses.com

Disclaimer: I'm in contact with the founder after stumbling on HackerNews and I'm trying to help revive this awesome and economical tool. (I'm not paid.)

Thanks! Any guide wrt using dkim / dmarc and such to ensure it's bulletproof? Any customizations you did beyond the CLI script above?
My entire script is here.

https://gist.github.com/johnnydecimal/e7b1a03e26b79239363b5d...

Though I've since updated that to include a .txt file as the body vs. typing it out in the email. But that's easy enough.

I might have added TXT records to satisfy DKIM etc., I don't remember. There are guides on the Amazon site; I'm a bit of a dummy when it comes to this so if I worked it out it must have been obvious enough.

Tyvm! If you have pointers to find the guides that'd be appreciate just for the sake of seeing if they're a good option. I'll look either way. Ty for the help
Just the 'getting started' stuff here. Like I say I remember it being pretty obvious. The doco is good.

https://docs.aws.amazon.com/ses/

In my experience, it’s extremely difficult to get out of the SES sandbox, for what I presume is if your account/org is under a certain amount of spend with them. While basically free under a certain amount of usage, the gatekeeping there does make the idea of self-hosting your email free/cheaply sort of a nonstarter for indie devs.

For context, getting out of the sandbox at every org I worked at was essentially a single ticket with the word please and had almost immediate approval.

For my own account for a low volume form notification tool I wrote AWS’s response was ‘We will not approve your request and we will not revisit this decision’.

I actually just did this a couple weeks ago. I'm just one data point, so I've no real idea what the difficulty is of escaping the sandbox, but I created a brand new AWS account, made it clear that I'd be using SES purely for low volume transactional emails for people who had opted in and could opt out at any time, and they approved me within a couple days.
I got approved instantly for personal mail for my domains. even though they charge for smtp they don't actually take payment for very small amounts so it has been completely free for over a year.
Mine did take a week but I have an actual website and active forum that I could point them to so perhaps that helped.
I wouldn’t want to deal with deliverability issues, which are very much a matter of quality of service and industry relationships rather than a matter of having the right software. Just use Mailchimp or Sendgrid or Amazon’s email service, pay the small service fee, send high quality email, and don’t get distracted by trying to figure out why your emails are going to spam.
I played around a bit with both Sendgrid and Amazon SES and found that actually my own exim server on a VPS with a small and reputable provider had quite a bit better deliverability than either of those.
Yep used an Exim setup on a VPS for years for a small traffic site with little issue. I’m running something still on there but a little more modern docker setup with DKIM etc.
This is more of a GMail alternative. Sending personal emails and sending marketing emails are two very completely different beasts.
Postmark and Mailgun are both solid choices and probably better than Mailchimp for higher volume / non-marketing emails (however, they are SaaS)
I've been using Listmonk (very easy to customize), sending ~35,000 mails / weekly as an alternative to Mailchimp with AWS SES as a backend but a self-hosted stalwart server could do the trick. We're saving ~600$/month by not using Mailchimp.
For hosted solution, you'll find mailerlite is far better than mail chimp.
The biggest issue you will likely encounter is having clean IP addresses to send from. If you have that problem solved, the next hurdle will be realizing that Stalwart is more than you would need to manage sending daily emails. If you have the IP addresses, you could just use a script that grabs email addresses to send to for the day, and ship them with a fairly straightforward SMTP daemon (sendmail) installation on a VPS.

Stalwart might be a good use case for your business/employee mail account handling, however.

Yeah looks like based on the replies it's more of a Gmail alternative. Which is great but not about sending so much. Have you had a chance to setup sendmail? how we've been using our own baremetal setup on hetzner (ipfs box) and could use that for sending too. Any recos on how to make sure the IP is seen as clean?