Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I'm busy coding a reusable e-mail service for my company. The e-mail service will be doing quite a few things via injection through the strategy pattern (such as handling e-mail send rate throttling, switching between Smtp and AmazonSES or Google AppEngine for e-mail clients when daily quotas are exceeded, send statistics tracking (mostly because it is neccessary in order to stay within quotas) to name a few).

Because e-mail sending will need to be throttled and other limitations exist (ex. max recipient quota on AmazonSES limiting recipients to 50 per send), the e-mails typically need to be broken up.

From your experience, would it be better to send bulk (multiple recipients per e-mail) or a single e-mail per recipient?

The implications of the above would be to send to a 1000 recipients, with a limit of 50 per send, you would send 20 e-mails using BCC in a newsletter scenario. When sending an e-mail per recipient, it would send 1000 e-mails. E-mail sending is asynchronous (due to inherit latency when sending, it's typically only possible to send 5 e-mails per second unless you are using multiple client asynchronously).

Edit

Just for full disclosure, this service won't be used by or sold to spammers and will as far as possible automatically comply with national and international laws.

>Closed<

Thanks for all the valuable feedback. The concerns regarding compliance towards laws, user experience (generic vs. personalized unsubscribe) and spam regulation via ISP blacklisting does make To the preferred and possibly the only choice when sending system generated e-mails to recipients.

share|improve this question
2  
Whatever you do, make sure that nobody's e-mail address is disclosed to other subscribers! –  Marjan Venema Sep 3 '12 at 7:20
2  
BTW, every time I've worked with automatic emails I wished it has enqueued them first. It makes testing a lot easier and less risky since you can just check the queue and not actually bother sending the emails. It also allows for retry in case of errors and keeps a log of everything sent for future reference. Just my 2 cents. –  dave Sep 3 '12 at 8:01

2 Answers 2

up vote 8 down vote accepted

Whether one 'To' recipient per email is appropriate really depends on your use-case and what other features you want to offer.

If you want recipients to be able to unsubscribe from these bulk emails, then I recommend you include a link specific to one recipient. While you could provide two-stage unsubscription (that is, the recipient clicks a generic unsubscribe link and then enters their email address to confirm), I can't understate how incredibly annoying that is to a user.

On that subject, in some countries there is a legal requirement to include an unsubscribe link when bulk-emailing, so remember to always have that.

Further, if you want each recipient's emails personalised in some way then you also want one To recipient per email, rather then 50 in the Bcc field. Personalisation is not always just their name in the salutation, it could say be a team meeting time and venue if it's internal email to various different company teams, or a special offer tailored to certain people on your mailing list.

Finally, if you want to monitor behaviour (that is, track opens, link clicks, forwards, facebook liking and so on) you also want one To recipient per email.

If all you want to do is send emails, you're right, you could choose many Bcc recipients and probably get away with it. If you want anything more, I'd certainly recommend you send to one To recipient.

Edit

I forgot to mention also that you need to protect the sending reputation of the IP addresses your sending servers use. A lot of anti-spam software, along with mail servers in general maintain black lists of banned sending IPs. If you send ten emails to 50 people each, and only 1 person marks that as spam, some lists will interpret that as you having a 10% spam rate (1 in 10 emails has been marked as spam). That's incredibly big and will likely very quickly have your IPs blacklisted immediately. Again, go for one 'To' recipient per email.

share|improve this answer
    
Thanks, those are some good points. Currently the service will send via To if the e-mail is personalised (ex. First Name) or using Bcc if it's the same e-mail to all recipients. I think the mention of the unsubscribe makes it pretty clear that To is the right default approach. Edit -> Valid point regarding blacklisting, thanks - that re-enforces the To choice. Have a good day! –  Shelakel Sep 3 '12 at 7:26
    
+1 for the frustrating two stage unsubscribe process. –  mhoran_psprep Sep 3 '12 at 12:09

This largely depends on the type of email you are sending.

For example, a single recipient per email is a good idea for bulk mail such as customer mailings because it allows you to embed a personalized unsubscribe link for that specific email address.

If these are bulk mailings to employees, on the other hand, you may not need anything like that.

share|improve this answer
    
Thanks for your input, it's appreciated. Currently the system does choose between sending in batch or singles - but the remarks regarding unsubscription makes To the better choice. –  Shelakel Sep 3 '12 at 7:28

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.