Ask HN: How do you do your email delivery?
Following on from https://news.ycombinator.com/item?id=3466168 a couple of the options deal with email hosting, but within that email hosting is subject to further definition.
The question in the prior poll didn't distinguish between accounts of staff, notification emails, mailing lists, etc.
Additionally whilst the comments recognised that email is hard (DomainKeys, SPF, Spam blacklisting) few people shared how they solved each of the scenarios above either in-house or using a cloud provider.
I'm personally using Google Apps for staff email, mailman for mailing lists and postfix on local servers for notifications (queued via the app).
There is a time sink in managing mailman and postfix however, and recently it seems for some users email reaches the spam box, so I'm looking for (a) cloud provider/s who could replace both the notifications and mailing list roles.
44 comments
[ 23.1 ms ] story [ 166 ms ] threadI mean, it is quite hard to notice something is missing when you don't know it should be there.
On another front, we use to use mailchimp - great product, but can start to get expensive when you don't use any of its features, so we switched to mailjet for our largest list.
Most important point is that rolling your own is more headache and time investment than its worth as compared to the costs associated with these services.
Still setup your SPF records and domainkeys though!
For sending newsletters, I use Constant Contact. I previously used Campaign Monitor their per-email pricing model became far too expensive over time. Campaign Monitor's service really was excellent and I think I'll switch back to them now that their pricing has changed. (Wrote a blog post about the pricing policies of these services http://www.smithshop.com/price-convergence-and-mailing-list-...).
For our transactional emails, we use PostmarkApp. Delivery wise--they are fine. Their admin interface leaves much to be desired. Searching old emails usually causes an application error. This bug (in a common functional area) has been happening for the whole time (1+ year) I've been using the service. Hopefully they'll spend some time and polish up the app a bit. I initially chose them over SendGrid because their pricing was better (at our levels) but I may switch over in the future.
I've definitely chosen the SaaS/managed solutions over the 'roll-your-own' own email server. There are just too many (different kinds of) headaches involved with each of these not to outsource.
I hear you on the dashboard issues. We're working hard to fix that. In fact, we just rolled out a specialized search backend to deal with the search issues and I think its Insanely Great! (sorry, just reading through the jobs biography and that comes up on every page.)
If you have any other suggestions, I'd love to hear them. Feel free to ping me on twitter or at oren@wildbit.com
cheers.
We use MailGun for everything else (transactional's and to send from our internal email marketing app). It's cheap'ish, stable, and the API is rock soild. I recommend them to anyone who asks.
My approach to email is that I know that it will take an entire day to set it up no matter how simple it seems. There's nothing like configuring an SMTP server that makes you think, "wow, email is surprisingly complicated!"
But! Once it's set up I find it's one of the more stable services I run. Very little hand-holding is needed once it's up and running.
Cyrus is a little harder (mostly because you have to deal with SASL--yet another layer of authentication). But it runs fast and smoothly. I found that upgrading between major versions can be a large hassle (I had to do manual database conversions). Luckily it's so stable that there hasn't been a new major version in a number of years.
For mailing lists I use mailman (though honestly I haven't run a mailing list in about 10 years so there may be better alternatives now).
For email automation I usually just use a pipe-style alias in /etc/aliases.
I've had no problems with any of above
I was able to blast out 20,000 former customers without making it onto a single blacklist, send out about 300-400 emails per day, and am just about to do a blast to 35,000 current customers again. All free of charge.
Why does anybody pay for mail service, I wonder?
Many web-based companies would effectively be out of business if their web server was listed on a few major blacklists.
For newsletters that are hand-crafted, we're on Mailchimp, which as been pretty good. Their interface can be great for some people, and passable for others. It's designed to be very easy to use, but if you don't like one of their templates and need pixel-perfect control, it can be a little bit challenging. HTML editors is tough for everyone.
To protect themselves and encourage good behavior, they will issue you a warning if you get more than 0.1% abuse (spam) complaints. This is generally not a problem if you're doing a double opt-in and not using imported lists. However, it's possible to make mistakes and cause problems. We ran a survey once to people who bought X, and manually pulled these email addresses out of our eCommerce engine. We sent them an email, but didn't scrub them against all of our unsubscribe lists, which is not a feature they have built-in -- you need to download all of the unsub/abuse lists and use Excel/scripts to remove them. We got a high abuse rate and they paused our account from sending more emails until we filled our their form explaining why it was high.
Nice looking forms and default templates make Mailchimp a great place to start, especially if there's a marketing person that you can turn the whole thing over to. You can work with their APIs, which are adequate.
It took me a long time to find a great one but thankfully my guy at Rackspace hooked my up. I now pass this on to you. http://www.postmarkapp.com/
Is that the case?
I'm not sure the amount of pain I currently experience is enough for me to switch to a provider that expects me to build my own dashboard.
If they do have a dashboard, what on earth does it look like? Without signing up I cannot seem to find it documented or a demo dashboard to play with.
http://apidocs.mailchimp.com/sts/1.0/
(I think it's a mistake to try and go the other way, though. Building the newsletter/subscription management tech is harder than it seems.)
We send 40M - 100M emails from our applications each month. We run 3 outbound relays on top of Postfix. We sign about 95% of our outbound mail with Domain Keys using dkim-filter. We also use SPF records for all of our sending IPs / domains. We monitor our sending IP reputation with via Nagios checks and manual review. Use also have checks setup for the most common black lists. Every email that goes out from our applications has an "opt out" link. (This is really important!)
We used to send all of our mail via one IP address. That meant any given spam report could really hurt our deliverability. Today we send from about 10+ IP addresses, divided amongst the apps. If the reputation of one IP goes down because of a false report, we just decrease the volume on that IP until the reputation goes back up.
For our "company" mail we use Google Apps. For our "marketing" mail use Mailchimp.
That's great info btw, that's not far from what I've currently got but mailman instead of Mailchimp and I've only got the one IP so when someone hits the spam button it's affecting all types of mail until it recovers.
Anyway, I'll join in here. I've got 3 hosting accounts and 1Heroku app. On my shared host (mediaTemple gs) I just use their default email. For app notifications I'm using PHP's built in mail function with properly setup MX. There's no need for anything fancy on that account as its a dominantly static site that I just need to receive email from and use simple contact-form-type functions for sending mail from the site itself.
Then there's my VPS at Webbynode which I use to host multiple sites with Apache virtual hosts. I'm usually a huge control freak but decided to farm email out to Google Apps for the sites hosted on that server as they're mostly my playground/experiment projects. I'm still deciding what to use for outgoing mail from the apps on that server and for now I haven't enabled any notifications from anything hosted there.
Then there my Linode which is my baby that I care for to such a degree that I'm almost paralyzed by having to choose how to configure it perfectly. I used to have that server set up with Postfix in addition to my favorite app that I'm building there but just last night decided to remove it because of some of the comments from my earlier poll (the one that this post's OP wrote this in response to). I'm going to farm out company email because I don't want to deal with needing more memory, storage, processing power, etc. plus I'm just one man and dealing with domain keys, blacklists, and all those other delivery headaches are just too much for one person and I'd rather focus on the app itself. I'm leaning towards Google Apps for company email, Postmark for email from the app itself, plus Twilio for SMS notifications.
For all my mass emailing needs (newsletters and marketing and such) I've been using MailChimp for several months and I'm very happy with it. I use it across all my sites and apps that need it. I didn't mention my Heroku account because I don't plan to use any kind of email for that one. I may want it but there's no real justification for using it as that one is yet another playground for Ruby experiments and learning. It's hard for me to resist however because there are so soooo many new and shiny toys out these days that it's hard to focus. I've always been a strict PHP guy and now I'm off in 10 different directions with Rails, node, Python and everything else that ever gets mentioned on HN. I'm a dabbler in everything and a master of nothing (actually I'm a master of a few things but the dabbling to mastering ratio is heavily weighted toward the dabblng side).
So that's what I use and I'd also add that SaaS/PaaS and VPS/dedicated hosting is superior to other options but I still think its always good to have a spare shared hosting account lying around for times when you need to get something simple up very quickly as in just a few clicks. I love my VPSes to death but I've found myself glad to have my extra MT (gs) account on a number of occasions.