Hacker News new | past | comments | ask | show | jobs | submit login
MailChimp vs. Amazon SES – How I Reduced My Monthly Bill (coursetro.com)
313 points by dreamache on Oct 17, 2017 | hide | past | favorite | 174 comments



In my experience Amazon SES is great if you only used it for transactional emails. If you start sending marketing emails you will soon find yourself being blocked by ISPs and email service providers. You will end up spending a considerable amount of time getting yourself unblocked. Some service providers will even block the domain name, so even switching the service won't help you. Everything will go to spam from that domain name.

I have built the tech for an ecommerce startup (https://www.article.com) from scratch. Using different services for transactional and marketing emails is probably one the best decision i made early on.

Pro Tip #1:

"Use a different domain name for the from address while sending out marketing emails"

For example if your primary domain is example.com. Use support@example.com as your from address in transactional emails. Use support@example-mail.com as your from address in your marketing emails. Off course forward all emails received by support@example-mail.com to support@example.com (Why? see Pro Tip #2).

Pro Tip #2:

"Never use fake emails like do-not-reply@example.com for the from address for any email you sent. Yes not even for marketing emails"

You will be surprised how many time customer just reply to emails they have received even if it is an unrelated marketing email. You will regularly see customers receiving a monthly newsletter and they will hit reply asking "Can you change the shipping address on my order?"


„Use support@example-mail.com“

Is this really beneficial? With all the domain-spoofing going on I would not click a single link in an email from a domain I have never visited.


We do this and thank God we do. Our marketing emails get down blocked all the time simply because of the scale (and our marketing team is a little over zealous) but after our transactional emails got blocked for the 3rd time we moved all marketing to another domain and gave been happy since.


Would a subdomain, support@mail.example.com, avoid getting your domain blocked while looking more official?


Are you in the demographic that normally clicks on links in marketing e-mails?


It's not about clicking a link in the mail. It's about hitting the reply button in the email client.


You are not average.


The forwarding part of Tip #1 is important. I regularly mark as spam marketing emails from companies who never asked me to sign up, but I still want to receive their transactional/support emails.


This is one of those excellent pieces of advice that seem like common sense when you hear them but you probably wouldn't have thought of doing.


The article is missing deliverability stats. Sure, you can reduce your bill significantly by switching to SES, but that means nothing if all of your emails are being sent to a user's spam box or promos folder. Mailchimp does a lot out of the box to ensure deliverability and good email placement, and that's part of the cost you're paying for.


Indeed. I used to work for another big mail sending service, and you would not believe the amount of effort that goes into maintaining good deliverability.

There was an entire team called "ISP relations" whose sole job was to work with big ISPs when one of our IPs get blacklisted.

There was another team that would interview customers after their sending passed a certain threshold to see if they were following best practices. They would ask questions like

* How did you collect your e-mail list? * Did your users give explicit approval to receive list e-mails? * Did you acquire this list indirectly, from another company/campaign? (big no-no).

Usually everything was fine, or the customer didn't know they were doing something wrong, and they corrected it. But not infrequently a customer (who pays a decent chunk of money/month) would be told they can no longer use the product. Besides it being the "right thing" to do, having recipients block or report spammy senders worsens the reputation of IP addresses.

An interesting exercise would be to calculate the number of man-hours put into maintaining the reputation of each IP address.


Yep. My networks refuse all mail from amazonses, as it is almost entirely spam and the abuse contact is completely unresponsive.

Mailchimp isn't spam-free but it stops the spammer hitting you straight away and has human follow-up for problem cases. If that increases the price of sending mail, so be it.


Amazon’s abuse system is automatic. At work we got a warning and then disabled after 15 minutes because people reported our emails as spam.

(Apparently notifying someone they are in debt counts as spam to some)


I'm curious - do you work for a debt collector? I ask because I've been sent to collections multiple times over medical bills, and every single time it has taken hours of effort to eventually reveal that all of the documentation given to the debt collector was erroneous. Mentally, I treat it as spam because I've learned that it's going to end up being someone else's mistake that the debt collector didn't look at carefully.

I would love to understand better how to deal with it - and if there's a fellow HN user who understand the debt collector business, I would like to talk to them :)


Always deal with debt collectors via snail mail, not phone calls or email.


Snail mail is very hard to prove that correspondence happened. State law requires that I dispute their claims within 30 days via snail mail, which I did. They then have to provide documentation within 30 days via snail mail, which they didn't. They should be fined for that, but all I can prove is that I mailed them something within 30 days, and everything else is he-said-she-said. I prefer to tell them I'm recording the phone call. Unfortunately, my state's laws don't require they cooperate that way, and many just hang up immediately. It does stop the harassment, though.


The US postal service provides certified delivery. It requires a signature and proves delivery. You show your proof, and if they can't show theirs, you win in small claims. At least, that is the idea...


you should read patio11's recent post on dealing with this kind of thing. He's talking specifically about dealing with credit agencies, but the same paper trails are likely to be the standard way of dealing with any legal hassles. Also my understanding is that the burden of proof is on the creditor/collector to prove you owe something, so having a paper trail showing how you dealt with things in a timely manner is going to make you look better and avoids the he said she said problem.

http://www.kalzumeus.com/2017/09/09/identity-theft-credit-re...


FTC complaints works great too.


Why?


Identity Theft, Credit Reports, and You | https://news.ycombinator.com/item?id=15206926 (Sep 2017, 276 comments)

>code4tee: The bit about calmly but methodically collecting a paper trail and then reading it back to them is excellent advice


Less high pressure tactics and them verbally abusing you, plus it provides a paper trail of wrongdoing if they violate any laws.


Nope. Just our client's customer's have "balances" which can be in debt.

Usually it's because one of our client's payment gateways is terrible and doesn't record all payments.


They probably feel like they didn't solicit that communication.


I don't think you should be surprised that people view debt collectors with massive disdain.


> Mailchimp isn't spam-free but it stops the spammer hitting you straight away and has human follow-up for problem cases. If that increases the price of sending mail, so be it.

Really? My attempts to get unsubscribed from a mailchip spam list were largely unsuccessful until I spammed as many mailchimp employees as I could find on LinkedIn. Mailchip offers zero support for those on the receiving end of their garbage.


I've always been able to get a response from replying to the initial response mail. Maybe I've just been lucky to have a different experience to you, but personally I've dealt with few more-responsive ESPs. (And obviously many, many total black holes—or what seems to be the new norm, automated systems completely unable to cope with deliberately malicious users and/or use of multiple accounts.)


Who do you mail when you get spam from mailchimp? I pasted the mail into their "abuse desk" form and got no response (but got continued spam from one of their users). I forwarded the message (headers intact) to abuse at mailchimp and rackspace. Nothing. Their reach a human forms are only for their spammers (err... customers).

Honestly, the most absurd part is that mailchimp is opt-out by default. I never once got any sort of "verify you'd like to receive messages from this sender" sort of e-mail address. Obviously mailchimp has no incentive to make their delivery opt-in because it would cut down on the number of messages delivered.

And, yes, you're right most of the alternatives are just as bad (e.g. Google, Sendgrid) from an end user point-of-view. I've had no regrets about blocking sendgrid and mailchimp.


> Who do you mail when you get spam from mailchimp?

I normally use the link in the X-Report-Abuse header. I invariably get an automated reply immediately (so if this isn't happening for you something must be going wrong; this seems to have been introduced about a year ago).

This is followed by what appears to be a semi-automated response (it varies depending on outcome but the text is usually made up of mostly the same content). I've had human responses from replying to that. (Though there is rarely the need—the initial complaint seems consistently to remove the complaining address from the mailing list, so that campaign stops unless the spammer manually adds the address back. Why doesn't everyone do this? It seems pretty obvious.)

I've also blocked Sendgrid as, despite the occasional response from their abuse contacts, the campaign doesn't stop coming. (I can't get away with blocking Mailchimp in any case as I have users relying on legit mailing lists that use it.)

> the most absurd part is that mailchimp is opt-out by default

I think this is understandable in terms of customers wanting to move mailing lists from one ESP to another without having to re-opt-in every subscriber. I wish there were a better way to manage permissions for mail receipt, but the SMTP infrastructure is made largely of despair and tears.


Have you ever thought, "huh, my {confirmation, receipt, password change request, etc} email never got here" for this site or service you either use or tried to use? If so, they were likely a customer of an ESP you blocked.


Nope -- in terms of folks I do business with or have accounts with Marketo, Mailchimp, and Sendgrid are only used for marketing nonsense I don't want.

Self-hosting my mail stuff means I'd see if I were bouncing legit email pretty easily.


That question was asked in the first comment of the article and the author posted a screenshot of stats from his latest campaign if you want to check that out.


The man hours saved each week alone made using the more expensive companies worth every penny.

I'm not saying a company is better just because they are more expensive, but I will argue you get what you pay for in this industry.


yep. switching from ses to sendgrid fixed a # of issues with false positive spam flaggings.


Curious, we switched from Sendgrid for that same reason. We were on the free plan, though.


Interesting. We definitely had the paid version. (The pro plan IIRC). We had a couple of isolated incidents of spam flags, but it was less than 1% of receivers.


This looks more like a pitch for MailWizz, but I've found that sendy works well for me.

http://sendy.co

If you are comfortable setting up your own templates it does a great job sending and handling unsubscribes/statistics. It isn't simply hooked into the SES SMTP , it fully utilizes the AWS API. Sendy iteself has a simple api to add users to lists and do other common things. I've used it for years.


+0.5 for Sendy. I've been using it for http://www.tittietime.com quite successfully for 2+ years now.

There have been a couple of bugs that caused me to have to dig into the source code - which as others have stated, is a mess. Though I suspect its been purposely obfuscated to prevent pirating.

If you ever wonder what's going on in functions.php, I've unwound it a bit - you can see its making a phone home:

https://gist.github.com/anonymous/cb21dfc35e1d4b74e136ebc694...


Holy God in heaven that obfuscation filled me with dread.


I think he must have a deployment script that generates all the database connection calls at the top of every file when he releases a new version. No one in their right mind would write code like that.


They also leave a phpinfo() publicly available which I had to block


There are tons of hosted solutions for Amazon SES too, if your'e not interested in setting up your own solution.

Shameless plug: I run https://mailblast.io, a hosted email marketing solution powered by Amazon SES.


Sendy's templating engine is a mess, best that worked for me is to design the template in Mail chimp, export it as HTML (Mail chimp provide this as free of cost) and then, use sendy for sending mails.


Have you looked at ZURB Foundation for eMail?


I tried a year ago. Nice interface, worked fine, but the source code was a mess.


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

>jmhobbs: The Sendy codebase is horrifying.

We use Sendy at work, 40k+ sends weekly. It saves us boat loads of money since moving from Mailchimp.

We've forked it, patched it, and use it internally, but only because it's cheaper than writing our own, for now.

I'm not telling you not to buy it, I'm telling you that the guts are shitty and you should know that before you fork over cash


I’ve used Sendy for years and love it.


+1 for Sendy. Send was lacking segmentation for many years, but they added this feature 2 months ago and now it is very good.


godsend !!


We send hundreds of thousands of emails every month. We're by no means a high volume sender, but we've learned a lot dealing with a bunch of these email providers.

Years ago we started with AWS SES. The pricing was amazing but there was no useful customer service outlet. If you were sending via a blacklisted IP it could be weeks before you we're seeing inboxes reliability again. It wasn't uncommon for us to devote 20+ man hours per week in dealing with email issues while using AWS.

Next we moved to MailGun. This was a HUGE improvement, however we were having to request to be moved to 'non-blacklisted' ip's on a regular basis. The pricing was great, but we were still having to invest too many hours dealing with email problems. Mostly fielding 'here is why your emails went to the spam filter, or why they never showed up' questions from our customers. You shouldn't need a template explaining to your customers why emails are showing up in spam boxes!

To be fair, MailGun was fairly new at this point but they were VERY responsive. IP's that had been blacklisted did not stay that way for long.

Lastly we moved to PostmarkApp. They were by far the most expensive ($1.50 per 1000 emails) but I only now even think of emails maybe once or twice per month. Emails just get through, no spam lists, no outages, no carrier blocks, it's amazing. Also, if you do send with enough volume you can drastically reduce the price. I believe we pay about $0.25 per thousand emails now that we purchase 5 million at a time.

They could triple their price and I would eat the costs.

I'm not affiliated with anyone above.


> We send hundreds of thousands of emails every month

With that volume, wouldn't a dedicated Mailgun IP have been worthwhile? You've got enough mail to gain reputation on it, and the flat fee + lower per-email charges could match or be cheaper than Postmark.

Long-time Mailgun user here, but not affiliated with anyone either.


Probably not, there are benefits to shared IP Space, in that you can absorb some complaint/spamtrap issues by piggybacking off others reputation. Its almost like Herd Immunity.


It may very well be something to try out! I think if we ever have issues with our current setup in the future, this is likely what we'll try next. I really liked MailGun's staff by the way! Raquel, James and Matt were absolute godsends on multiple occasions!

For now though we couldn't possibly be happier and would gladly continue using Postmark even if they dropped the bulk discount rates.


Amazon SES also support the dedicated ip option?


Yes, I use dedicated IPs and get 20%-30% deliverability. Same as with Mailchimp, except my list is over 100k


Eesh, thanks for the data point.


We are happy Postmark customers also, sending a couple thousand transactional emails per day. Postmark delivery rates are of the highest rates I've seen. I also appreciate how easy is to diagnose any delivery problems via their API or the web interface. In the rare occasions we've needed further details their support staff were immediately helpful.

It is the most expensive service if you don't buy in bulk, but is well worth if you want to stop worrying on blacklists and other delivery problems.


I've also had good experiences with PostmarkApp. I thought they were a pretty small player, so I'm surprised to see that people know of it.


Postmarkapp was flawless for my mediocre 24k emails per month.


"The main difference between MailChimp and SES, is the fact that SES lacks many of the features from MailChimp."

That's for sure. SES only has 1 feature in common with Mailchimp and that is the sending of an email. Mailchimp's primary function is managing distribution lists, email templates and receiver activity analytics.


Author here.. yeah, that's why you have to use SES with Mailwizz, which gives you all of those features from MC.

So, a more accurate title would have been, MailChimp vs. SES + Mailwizz. ;)


I use Mailwizz, and NO it does not replicate the missing featues of Mailchimp. It may be cheap –– but you get what you pay for. It's value really depends on your needs. It is in no way comprehensive.


If Mailwizz had A/B split testing I'd consider giving it a further look.

But it looks like it doesn't, and it is worth paying $240/mo (or whatever my MailChimp bill is) just for that functionality.


SES vs Mandrill I believe would have been a better comparison here.


This would have been try a couple years ago, but every Mandrill user has a MailChimp account since the merger.


I keep repeating this and just recently a friend sending large mailouts called me to confirm: you do not need Sendgrid or Mailchimp or anything else! IF you are truly not sending spam, all you need is $5/month DigitalOcean's 512MB server with not previously blacklisted IP. That's it!

Paying for Mailchimp a small fortune is like paying for bottled water where all you need is $15/year Brita filter and just drink tap water.

Nowadays all major email providers are really good at catching spam. If you are NOT spamming then you are good to go; the key is to start small and grow from there. Do not switch overnight and send 10,000 genuine emails letting your audience know your terms of service have changed; since they don't know your IP, they will consider spam. But if you are getting your newly subscribed audience into getting emails (confirm double opt-in) from your new IP, it will take you 2 months and approx +10% daily raise in sendout to get to $1MM emails per week from your OWN IP at $5/month rate and delivery rate will be similar to those big guys that claim they have the best delivery rate (noone can guarantee you that)! Tested and confirmed!


And if you end up on a blacklist, even if by mistake? And how do you monitor your system and stats? How do you handle throttling by different MTAs? How are you measuring opens and clicks? How are you managing unsubscribes, and soft and hard bounces? This is not to say that all of this is not something you can't tackle. Instead, many companies prefer to pay a small premium to not worry about any of that and instead focus on their core business.


As someone who's just getting into setting up mail newsletters, this is the most useful post in the thread for me, since it explains really what you're buying at MailChimp, SES, etc. I wish they would advertise this. It would be much more straightforward to someone like me.


If you're going to do this on your own, this is fantastic advice. The ramp-up period is CRITICAL and you've hit the nail on the head.

Don't forget to setup DKIM, SPF, PTR Records, etc!


Only tangentially related, but I could use some help. We have a nearly 10 year old newsletter service that was built long before I was hired. It's all self hosted and we're getting abysmal delivery rates now (~60%...). We're only sending about 5000 emails a week.

We want to offload, at the very least, the sending onto a third party service where our delivery rates won't be so bad. The trick here is that we send the newsletters on behalf of clients that we have built sites for since we launched our newsletter service and they currently send with a FROM and a REPLY-TO of the domain we are sending for. Obviously, this does not mesh well with current spam practices. Third party services usually require you to verify the domain, but the vast majority of our clients do not have access to anything related to their domain or DNS and it's not realistic to move to SES, MailChimp, SendGrid, etc for that reason.

Does anyone have any suggestions for how to approach fixing this? I've already asked about sending out from client-name@ourdomain.com and having a reply-to of the client's email address, but was shot down for apparent contractual reasons.


>It's all self hosted

>Third party services usually require you to verify the domain, but the vast majority of our clients do not have access to anything related to their domain or DNS

Do you see the contradiction here?

If you are sending it from your domain there is no issue migrating to mailchimp.


We spoof the client's email. So while we are sending from our IP address, the FROM is actually john@clientllc.com, the FROM name is John, and the REPLY-TO is john@clientllc.com.

10 years ago, that passed. Nowadays, it's unacceptable. I'm wondering if anyone has a solution that doesn't involve any DNS changes for the clients we are spoofing, because it just won't happen, unfortunately. Our entire newsletter is built upon email spoofing, which is a terrible practice but I cannot get management to allocate any more resources to fixing it than "just make it work again". I'm going to try to push sending out from our (verified) domain again using SMTP (so we keep our system other than the sending part), but I'm doubtful I will get the approval for that.

I see the contradiction and realize that the verification process is in place for an extremely good reason, but actually implementing a fix is not as simple as you would hope. I was just hoping for someone to have an idea that I had not already thought of.


You're not going to be able to send from the clients email if you're unable (unwilling?) to implement the DNS changes required to verify the domain. Surely that's the minimum required to fulfil "just make it work again"?


This is what I suspected, but I felt it worth throwing it out there and seeing if anything is possible. We're doing things the way you did 15 years ago and that just doesn't fly anymore.


What about using no-reply@service.com as FROM and client's email as REPLY-TO? Spam detection gives much more leeway on REPLY-TO address.


I've suggested that as well. I'll bring that up again, though, when I'm talking to management about it again. Our bounce rate jumped from 25% to almost 45% in the last month, so it may be enough of a shock to make some changes.


I know that you said but I'm afraid a major part of a spam scoring is coming from DNS related checks (SPF, Domain Keys...). I would concentrate on that... offer yourselves to configure that on behalf of your customers, get those DNS things shorted out and your delivery rate will get higher.


In more than one industry I work with it's nigh on impossible to gain access to DNS records for bulk mailing purposes. Third parties may hold control over domains, and your emailer may not be important enough to get someone to actually put in a work order to get records changed etc etc.

Not always easy to fix the human side.


Yeah, like I said, I realize that's how spam scoring works and that our methods are just extremely outdated now. Problem is that our clients frequently do not have access to their DNS and nothing has changed on the DNS in 5-10 years. The purchased a site and email service a decade ago and they won't think about it again for another decade.


> our clients frequently do not have access to their DNS

How could they not have access to a service that they pay for?

It sounds like you have a human problem on your hands, not a technical one. I would think about how to get an updated SPF into their DNS. If the boss said "just make it work" then to me that means to call the clients and hand hold them through figuring out who hosts their DNS records and how to open a support ticket or reset their self-service web portal login password, or whatever else the client needs to do to get those records in there.

SPF is very easy to configure and will improve your deliverability significantly. After you configure SPF, mail servers will acknowledge your servers as a valid sender for your client domain. It will no longer be spoofing. The only difference between spoofing and not spoofing is domain validation.

DKIM is not tied to an IP address but the 2 extra steps of complexity involved with DKIM have allowed for SPF to be the dominant domain verification method for sending email.


> How could they not have access to a service that they pay for?

Generally, they are on autopay and haven't had to sign in for several years. We often run into an issue where the person who set it up is no longer with the company and they no longer have the associated email address set up, so they can't do a password reset (without setting up the email, at least, which means hunting down how to do that; we're talking <5 person companies that haven't had a new employee in years)

> It sounds like you have a human problem on your hands, not a technical one.

This is definitely the problem. :/


> It sounds like you have a human problem on your hands, not a technical one. I would think about how to get an updated SPF into their DNS. If the boss said "just make it work" then to me that means to call the clients and hand hold them through figuring out who hosts their DNS records and how to open a support ticket or reset their self-service web portal login password, or whatever else the client needs to do to get those records in there.

Exactly my point


As gardnr says, you need to solve this problem by involving the clients. Trying to fix this without some DNS fiddling is going to waste your time and you'll have nothing to show for it.

The world changes, and adaptation requires maintenance. 10 years ago is almost half the age of the web ago. This is more a business decision - do you let those accounts rot - than it is a technical decision. Because the business decision needs to include support time for user interaction.


If it works for your clients you could always set up some email relay sort of deal on your emails? Get them subdomains on your domain name and relay mail sent there to them? Then you could do the dns on your own servers.


Try slowing down your outbound sending. I used to manage a mail system that generated a lot of outbound mail, and speed of the mailspool was a huge issue for the big consumer services.


Prove it with a small example that you get better rates with DNS fixes and your management will think about it differently.


Have you tried spoofing the envelope address or reply to address, but have the header address as one you control?


You send from other people's domains without setting up DKIM/SPF? You're fighting a huge uphill battle if that is the case. I would highly recommend sending from a domain you can verify and then using the reply-to field for responses. It isn't perfect, but your deliverability rates will sky rocket.

Can you even get emails to Yahoo addresses?


Ultimately you're not going to get the best deliverability unless you have access to the DNS records you are sending from, because you won't be able to pass DMARC.

However, you can still pass SPF and DKIM checks by using your own domain, which involves taking advantage of SMTP's envelope sender address. This can get you acceptable deliverability, assuming good IP, non-spammy content, low volume sending, bounce management etc.

There's a pretty good StackExchange answer here that explains the differences between SMTP envelope and message aspects in more detail: https://security.stackexchange.com/questions/30732/why-is-it....

There's also a good MSDN blog post series on the various email authentication techniques and how to get them working: https://blogs.msdn.microsoft.com/tzink/2013/04/24/how-to-set...

The gist: set up an address, and SPF and DKIM on a domain you control, and use that address as the SMTP envelope sender. Then "spoof" the FROM header.

The caveats: this technique is still used by some spammers; some clients will display "From: (your domain email) on behalf of (actual sender)"; some MTAs use SenderID which applies SPF to the FROM header's domain; some (but not most) providers almost need DMARC to get bulk email to the inbox nowadays.


I'm assuming the author is hosting Mailwizz on his own desktop machine? I didn't see the costings for an EC2 instance in his AWS breakdown.

If it is indeed his own machine, I wonder if he has factored in the data transfer costs to/from AWS. If he had an EC2 instance fired up, then the data transfer is free, however there is the monthly cost of the instance to consider.

Also, what about the stack that Mailwizz runs on? It it available as a simple turn key virtual or docker setup, or do we need to install a LAMP stack etc. to get it running? Time to get the stack running (and maintaining it to keep running) should also be factored into the $54 licence cost of the software.


If the author is using a micro instance in the first year, there is no charge [0]. Also, the author only needs to start the instance when he needs it, so the costs would be minimal.

Furthermore, only transfer out of AWS is billed; there's no cost to upload, which is what I imagine would be the bulk of the work.

[0] https://aws.amazon.com/free/


how does he deal with unsubscribe if his server is offline after sending ?


Very good point! I guess the cheapest way to do that on AWS would be with a Lambda function.

Or perhaps he already has his own web infrastructure not on AWS that contains the list.


Aaaaaand that's why I no longer use Amazon SES for transactional mail for signupforms.com. It is frequently used by mass-marketers, which means my transactional email was frequently being dropped by some email providers because of SES's poor deliverability.


Author here. I've noticed the opposite. All things being equal (email content/subject lines etc), my opens, clicks, etc.. all have increased since switching to SES. Not sure if an anomaly or what, but that's my experience.


Likewise, we tried SES and had far too many emails going to our customer's SPAM folders, so we switched back to Mailchimp/Mandrill.


I thought you could buy dedicated IPs for SES? Or is that not good enough to separate you from other SES senders?


This is true:

http://docs.aws.amazon.com/ses/latest/DeveloperGuide/dedicat...

I've had zero problems with Sendy and SES on my platform over the past 2 years.


Are you sure SES was the problem? Did you correctly configured DKIM/SPF?


We've occasionally got bounces like "554 5.7.1 Service unavailable; Client host [54.240.27.56] blocked using dnsbl.sorbs.net".

Amazon say SORBS is worthless but unfortunately someone is still using them https://docs.aws.amazon.com/ses/latest/DeveloperGuide/blackl...


Seriously, doing bulk emailing you find that mail services are often the dustiest, cobwebbiest things on the internet. I swear some of these things have been sitting untouched for literal decades.


I've also had deliverability problems with SES, and I absolutely did set up DKIM/SPF right.


PostmarkApp. They only allow transactional emails and they have unbelieveable inbox rates.

I'm not affiliated with them, but might be their biggest fan.


Hmmm, how about Mailtrain [0], which is free and open-source? I like Sendy [1], but it's per-domain licensing policy does not work for me - I manage a bunch of nonprofits on a single droplet and do not have any desired to license all of them.

[0]: http://mailtrain.org/

[1]: http://sendy.co/


It would been nice to see inbox stats. How many emails made it to the inbox vs spam? Did he see a drop in email opens or clicks?



That seems to conflate speed of sending a double opt-in with deliverability. Ideally you'd want to measure deliverability with something like Return Path.


Thanks that at least covers transactional style emails I would be curious for newsletters and marketing emails as well.


Mailchimp === great UI for ad hoc, "unstructered", newsletters, product updates etc. SES === great for transactional emails if you handle the templating yourself. As always, and it gets boring, it depends on what you need. If you're a typical startup you probably need both.



Dang, I missed that one in the daily deluge of AWS product announcements. The Mailchimp HTML5 editor is REALLY nice though. Probably the reason everyone uses them.

Side story: At the former job, we used to create transactional emails with a marketing swing to them in Mailchimp. Marketing loved it! Then we'd copy and paste the HTML to our ratty Salesforce backend and replace some tags and BOOM: super nice transactional emails from SalesHorse!


Yeah, I haven't tried them out yet, but I'm a big fan of SES (for transactional emails).

I use https://foundation.zurb.com/emails/email-templates.html for templates, and they've worked well.


Your last line summarized the whole conversation of this thread. As a startup, you do need both!


are there any services (mailwizz, mailtrain, sendy, email octopus, mailjet, mailgun, etc.) that supports the personalized newsletter use case (which is "one level deeper" than the personalized email use case)? it's not obvious from any of their sites, and i'm hoping someone here might know right off the bat. =)

meaning that each issue of the newsletter can include a set of like content items (e.g., articles) but the bundle of content is specific to each user (user 1 gets content items 1, 2, and 3, while user 2 gets content items 1, 3 and 5). this is one level deeper than just simple personalization like "Hi Joe, thanks for signing up with us on Saturday, Mar 4...".

i've yet to see a marketing email provider offer this functionality very well, if at all. for example, sendgrid (which i'm using now) supports it via a convoluted combination of section and substitution tags that is not very well documented. but most systems (including mailchimp, constant contact, etc.) don't even contemplate this use case.


I use Green Arrow engine + studio, by the folks at drh.net, and it can do that very well. You can basically get a hook that will execute your arbitrary code for each contact - database lookup on a remote service, whatever. So you can build very complex newsletters that are totally customized to each recipient. And it is fast as can be (can pretty easily push 1M+ messages per hour if you have that much volume to send)

In order to take full advantage of it you need to be a developer though.

It's got great pricing too, esp. if you get their perpetual license and then run it on your own dedicated server (they set it up.)


thanks, i can code so i'll take a look. =)


Dada Mail [0] can do that (unless I'm mistaken on what you're trying to do), as its email templating language is just HTML::Template::Expr, so you can have if statements, ala:

    <!-- tmpl_if subscriber.state eq 'CO' --> 
    
        Here's what's happening in Colorado!
    
    <!-- /tmpl_if --> 
It's been a feature for at least a decade, I believe. Sending via Amazon SES is also supported.

[0] http://dadamailproject.com


that seems like the simple personalization case, not the personalized newsletter use case i'm after, but i'll take a look-see. thanks!


I have the exact same use case and have not been able to find a service that does it. We have a machine learning service that generates some content for each user but the rest of the email is just a standard newsletter.

In the end we just fire it from our web application like a transaction email, this has a few disadvantages though:

- Sending to our list of 100k users takes a good portion of the day, although this could be fixed if we used the bulk send APIs our transnational email provider has.

- Our marketing team can't easily edit the rest of the content in the newsletter so it generally remains pretty static or needs developer time just to send a newsletter.

I'm not really sure how such a service would work though, would the email provider make a webhook call back to your servers with the user id and you server return the content for that section?


It looks like Amazon SES itself supports personalized emails as another person ITT mentions:

https://aws.amazon.com/about-aws/whats-new/2017/10/amazon-se...

https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-p...

Not sure if any of the 3rd party scripts offer it though.


Check out customer.io -- you can handle many levels deeper than first_name last_name and use customer attributes to not only send or not send an entire message, but also use Liquid to add conditions within the body of an email to serve up the right content to an audience.

Beyond newsletters you can add transactional and segment-specific campaigns.

I DO work there, so take my recommendation with that in mind...And I am not trolling ycombinator for every email conversation.


thanks, i took a quick look and found http://learn.customer.io/recipes/role-based-messaging-campai... (it's nice that you have these recipes).

but that recipe illustrates the exact issue i run into (and maybe you have a better solution): i don't want to have to define branches for each segment ("role" in the recipe) in your campaign manager. i want to pass in a collection of recipients (each having the role attribute set) and hashes of attributes with each tied to a role, and have the template select the appropriate hash of attributes to display (e.g., [title, date, author, body, image] for articles) based on that attribute rather than creating whole new templates and branches for each segment.

this let's me programmatically add more "versions" of the newsletter without going through the clunky process of branching and duplicating templates (it's DRY'ing out the templating process).

so with articles for example, west coasters get article A and east coasters get article B, each having their own hash of [title, date, author, body, image] slotted into the right places based on the location attribute on the recipient (in this example).

liquid could be the answer, but does your API make it easy to pass in a hash of hashes to make it all work? many products seem to be missing this particular feature and as a result, don't work for my use case.


This is the job of a marketing automation tool. you might have a look at Mautic, Hubspot or Marketo which will then plug into the mail sending service.


yes, i've looked at all of those too. hubspot can do it, but it's overkill for my use case (i am helping a client implement hubspot). marketo is ungodly expensive. mautic requires setting up another server and maintaining it, in php no less.


Hi clairity, check https://www.vestorly.com/ we do just what you mentioned in an way that it's easy for you to setup. Please don't hesitate on asking me if you need more information


I've experimented with building something like this but not at any scale.

Is there a use case that doesn't involve writing code to do the personalization? I've been picking articles with some machine learning stuff but I'm not convinced that would work for many people.


i don't know that it requires custom code, but it would require the ability to write declarative rules for selecting the content (many marketing automation systems now have a visual campaign sequencer which is similar in functionality).

it would combine essentially a CMS with marketing automation, where content can be fed into the system (either created or curated) and the newsletter template would slot the selected content into the available spaces based on the rules (and/or via machine learning).

but yes, machine-selected content would be a logical next step after what i'm describing.


Django Wagtail CMS has an interesting 'content personalisation' feature which could work for this.

If you involve that package in the render step before you send, it should be able to do what you need to.


Sailthru can do that


Its not fair to compare mailchimp to amazon ses, mailchimp is a full newsletter sending platform that handles everything. if you need only email sending there is 100k mails for 20usd with sendgrid.


Sendgrid also does marketing emails now right? Your thoughts on it?


You'll ned a dedicated IP as their free plans use shared IPs which are often flagged as spam sources.

Source: Tried the free plan a few times.


If you use GAE, you get a free plan on SendGrid (up to a max) and I've used it to send mails to gmail and yahoo accounts. Don't recollect anyone ending up in spam but I haven't sent them in thousands. Will keep your comment in mind as I do so..


If your sending volumes are low a dedicated IP can be worse than shared IPs.



Lot of the IPs used be SES are already blocked because somebody used it for spamming...

So would't rely on it for anything business critical to be delivered - choose a company who only asends mail (Sendgrid, Mailgun of Mandrill (know they are owned by Mailchimp).

The most annoying part that i's not deterministic, sometimes it works sometime gmail blocks it or puts into spam ..


Mailchimp pricing has always struck me as a bit perverse. I have a mailing list of about 20k people for A Soft Murmur[1] and I send very occasional emails. A "pay as you go" Mailchimp plan costs about 1 cent per email, so in my case $200 per newsletter. But a "monthly" plan only costs $150 per month for 20k subscribers, with "unlimited" emails per month.

So it's cheaper for me to go on the monthly plan for one month, even if I know I'll only send out one newsletter during that time. If there's any chance at all that I might send more than one email in that month (rare but it has happened), then it's less than half the cost.

It just strikes me as weird.

I should really switch to a cheaper provider, but given that I only send a handful of emails per year, I haven't found the time yet.

[1] https://asoftmurmur.com


We switched from MailChimp to SES+Email Octopus. EO gives us the layout+list management stuff we needed, and SES gave us a huge drop in mail sending cost. The costs we were dealing with though was a lot higher-our small list has over 100k people on it and we were sending out multiple emails a month to that list and bigger.


If you are looking for an alternative to Mailchimp that uses Amazon SES with dedicated IPs under the hood, check out Kevy [0]. Full disclosure, I'm the Founder of Kevy.

We verify the domains of each of our customers and thoroughly review their sending practices to ensure their email sending reputation stays high. Futhermore, you can talk to a real person if you have any issues with sending / deliverability. If you are interested in a comparison of Kevy and Mailchimp, check out this blog post [1].

[0]: http://kevy.co/

[1]: http://kevy.co/2017/03/31/kevy-comparison-mailchimp-klaviyo/


Having used both I love SES. It's great. But I also like Mailchimp. One big gripe I have with SES is that it tends to have more servers on spam blacklists than Mailchimp.

You also need to code a lot of the stuff Mailchimp has out of the box (like templates and delivery reports) yourself. But the capabilities are there.

Another great thing SES has is the ability to receive emails not just send.

But overall I like both products. Mailchimp is easy for non-tech people to use, SES is bare bones, pay as you go, and highly scriptable once you add in Lambda.


I personally only ever used SES for forgot password notifications. My mailing list is really small right now but if I had large lists I'd probably run it myself using SES and pay for a private outbound IP. The costs aren't outrageous - $25/mo.


Wouldn’t spammers just do the same? Does a private IP address on SES completely absolve the senders of SES’s spam reputation? I’ve just started using SES and did notice everything going to spam. Looking for a solution.


I've never experienced an issue with e-mail going to spam. You might want to look at debugging it [0], to see if it's really SES's fault. It's possible your outbound domain has a reputation issue, but I have no idea how you address that I'm afraid.

[0] https://sendgrid.com/blog/5-ways-check-sending-reputation/


For sure you don't want to be lumped in with the people too cheap to spend $25.


That's quite a savings. Has anyone else done this? Do you see more bounces due to using the AWS servers from using SES? Ending up in more people's spam folders?


I've done something similar for my side project which needs to receive emails. My side project is a monitoring tool, and inbound emails is one way of sending "I'm alive" messages to it. Link in profile.

I started with Mandrill inbound emails. Friendly UI, easy to understand, works as advertised.

Then I moved to AWS SES for inbound emails. I wrote a small Lambda function which dissects the email and forwards it to my HTTP endpoint.

With usage growing, SES was getting expensive as well. So I wrote a SMTP server in Go using this: https://github.com/mhale/smtpd It's very basic, doesn't support SSL, but seems to work OK in practice. My inbound email handling is now basically free.


Nope. We're seeing only upsides (well except MailChimp's online email designer is light years ahead of the alternatives). One of our huge wins (other than price) was delivery times-we saw a distribution time for 300k emails drop from 12+ hours window to only a couple of hours.


In general, other services will be cheaper than Mailchimp. I use mailjet, which has both transactional and marketing email service.

Don't see any difference in bounce rate.


I made the same move last year for my mailing list, but instead of Mailwizz I choose Sendy. Same setup though, using Amazon SES as the e-mail sending service.

It ended up saving me $600/year back then and would - at this point - be saving me roughly $2.000/year.

Here's my write-up from back then; https://ma.ttias.be/mailchimp-sendy-saved-600-year/


$2/year doesn't sound like much to me ;)


We use an older piece of software called Campaign Enterprise. It runs on a Windows VPS, connects to our server at Rackspace that actually sends the email, and we can send as many newsletters, welcome emails, etc we want - every day. I think it was a couple hundred dollars to buy outright.

Once every few months you get on a blacklist but an email or quick phone call gets you removed.


Does anyone know of a newsletter management system with an actually decent development workflow? We don't need the WYSIWYG editor. Just something with git integration for templates that are coded manually in Zurb Foundation for Emails.

You can import zipped templates into MailChimp manually. But if you made a typo, it's painful to export and reimport each time.


Check out this Grunt workflow https://github.com/leemunroe/grunt-email-workflow

Automates most of the painful tasks of putting an email together. You could also add a task that sends the templates to Mailchimp once built.


Yeah, I pretty much have that with the Foundation stack (https://github.com/zurb/foundation-emails-template) but it's the MailChimp import that is painful!


While very impressive, always nice to save a lot of money, I hope someone can explain why SES is not good enough many times as I seen here on HN before.

There are supposed to be issues with deliverability from SES that many can't accept and so they use other services (of which, the main one, I'm blanking on) that handle sending mail better.


> There are supposed to be issues with deliverability from SES that many can't accept

I don't know about this. At my previous employer we used SES to send service emails to our users on two domains (Office 365 hosted) and we didn't notice any delivery issues. Our volume wasn't huge though, above 10k but under 20k emails per month.

That being said, Amazon will really quickly suspend your SES account if your bounce rate is too high. They also don't keep hugely detailed logs, so restoring service generally relies on you keeping good logs from your app/MTA and figuring out which email addresses are bouncing.


That is the exact reason why we launched MailGet which is a hosted solution for sending emails using Amazon SES.

Check it at https://formget.com/mailget-app/


Anyone who uses Amazon SES knows deliverability isn't that great. When you use mailchimp you're practically paying for a higher chance for any of your emails not ending up in the spambox (even if they're transactional).


Has anyone has a weird issue where a recipient gets emails delayed by up to 45 minutes via SES, but sending via Google is received immediately?

They aren't ending up in a spam folder, just delayed.

Note that the email address domain is the same between these two.


If you're new to ses, they can throttle emails to the same domains to protect you


Mmm, this recipient has their own domain and they only get one every two to three business hours. Other places with public (gmail, yahoo) or personal domains work just fine.

Sendgrid exhibited the same behavior, last I heard, sendgrid is also using SES.

But sending from a gapps email was instant.


I work at SendGrid. We don't use SES. All our receiving, processing, and delivery software (and more) is developed in-house. We also run our own data centers. However, we are looking at how we could leverage Amazon for more elastic scaling and faster API response times for our customers. But nothing with SES.


Thank you for the clarification.


I did this with Sendy/SES and switched back to MailChimp. You can possibly watch your inbox rate plummet with your costs if you do this, maybe they improved SES since two years ago though. "You get what you pay for"


the absence of delivery stats is a key omission


Mailwizz provides all of the delivery stats. Here's a screenshot I just took of a recent campaign:

https://imgur.com/a/PSMm3


Delivery stats aren't really very accurate these days. It's impossible to get stats for gmail web users (due to the new image caching), or for non-gmail-web users who haven't clicked "load images".


Isn't that "open stats"?


Yes, but that's the only way of knowing that it hasn't gone into the user's spam folder.


Use mailjet or sendgrid for cheaper alternative with delivery stats.


Or Sendinblue.


Forgive my simplistic question, but... if SES creates issues with deliverability/spam flags, is Pinpoint an option for MailWizz, Sendy etc? It looks like it's more appropriate for non-transactional email.


Does MailWizz or any other similar service that support the same with Mailgun?


I did the same and saved like 100x




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: