Sending mass mail without going insane (SendGrid? cloud?)

Nick Zalutskiy picture Nick Zalutskiy · Jun 24, 2010 · Viewed 12.8k times · Source

I need to send regular newsletters, as well as smaller batches, to a 10k strong mailing list, programmatically.

We're currently exporting our list and then using Campaign Monitor's web interface to create and send the newsletters. Campaign Monitor is great, but it is simply too expensive. Sending just one email to the entire list costs us $105, sending smaller batches is even more expensive as they charge 'per campaign'.

I have two requirements:

  1. I don't want to worry about bouncing, domain keys, black lists, ISPs, or any of that bs.
  2. I want a solution that is as cheap as possible.

My best bet seems to be using SendGrid (or something else?). It seems that they give you an SMTP server and they worry about all the crap in requirement 1. How does one actually use that to send email programmatically? Loop through the list and mail()? Seems like thats not very efficient. If you have experience with SendGrid, please share. This still isn't terribly cheap -- $80/mo -- but better than CM.

Alternatively, should I start looking at 'the cloud' as a solution. It would be cheaper it seems -- at least I'd be paying for what I'm using, but is it the same as rolling your own? Would I have to worry about the crap in requirement 1?

Or am I totally missing some other simpler solution? I really need help visualizing my options.

Answer

David Underhill picture David Underhill · Jun 24, 2010

I think GAE might be worth trying for your use case. It certainly should be cheaper than CM, and might be cheaper than SendGrid depending on how many recipients you e-mail.

Your volume of e-mails easily fits within GAE's limits. GAE allows e-mail to be sent to 2,000 recipients for free each day. Since you are willing to pay, you can send mail to up to 7,400,000 recipients per day. (Quota details)

If you go over the daily free quota of 2,000 recipients, you would have to pay $0.0001 per recipient.

This means you could e-mail about 860,000 recipients for $80/month (that works out to 28,666 per day [including 2,000 for free per day]). If you are e-mailing fewer people, then GAE may be cheaper than SendGrid. If you plan to e-mail more, then GAE will be more expensive.

Another advantage: with GAE, you may not have to worry as much about batching e-mails since GAE only charges per recipient.

Disadvantage of GAE: GAE also bills for other resources like CPU, bandwidth, etc. Depending on how you send e-mails and their content, you may or may not require more resources than GAE provides for free. You'll have to try it out to determine whether this will be an issue or not.