Recently a friend asked me on my opinion regarding best practice for sending out HTML newsletters. Their setup was extracting contacts from a web based database and doing a mail merge in Microsoft Office.
This is what I had to say. (Keep in mind that for the more technical experienced most of this information might be common knowledge and best practice anyway, but the idea was to give a standard office/Office worker some insight and recommendations.)
Some Theory
Creating contents with a graphical layout for the internet is always a challenge, regardless being it a whole internet portal or a single e-mail newsletter. That's because there are so many different both authoring applications and clients to retrieve web based information. Web content is being described using HTML (Hypertext Markup Language) which provides a standard for defining the structure and layout of your content. Even if you are using Microsoft Word or another application to author graphical content, the final newsletter you want to send is made up of HTML.
HTML itself is a clear, open standard offering a lot of opportunities to layout your content. The problem is that various client applications (e.g. Outlook, Thunderbird, Webmail like Hotmail, Yahoo etc.) do not fully support this standard or interpretate it in their own way. That's why your newsletter might look fine in Word or even the program you sent it from but looks different or even completely screwed up for your recipients in other clients.
The Problem
Microsoft Word in particular is not famous for creating HTML documents that will look the same in other programs. While its ease of use allows you to quickly achieve your desired layout, various problems may arise when transferring the document to your email application and sending the newsletter.
The only way to really make sure your newsletter gets sent in a satisfying layout for all of the clients is to alter the source code of the HTML document and test it on various clients and platforms. However, to do this a profound knowledge of HTML and CSS (Cascading Style Sheets) including its cross-platform implications is needed.
A good summary of layout problems and its solutions or workarounds can be found here: http://www.alistapart.com/articles/cssemail/
Various problems may arise when you're sending your newsletter. Depending on the way it's done, you may create a lot of traffic on your side or your e-Mails may end up marked as spam in your recipient's e-Mail clients or in the worst case they might be even rejected for spamming reasons by e-Mail servers on the internet.
I really wouldn't recommend Microsoft Word and Outlook to send out your newsletters. In addition to the aforementioned layout issues, the software has a known (but not solved) problem which can cause it to freeze (not respond) randomly during making a "Mail Merge" and sending out the emails. It's therefore a very time consuming process keeping track of which emails have been sent and where to continue.
Some advice
A middle way might be to author your newsletter directly in your e-mail program like Outlook. The opportunities there are of course limited compared to Microsoft Word, but at least you have a higher probability of your content showing up correctly on your recipient's client applications. However, there are other reasons why I don't recommend using an e-mail client like Outlook. When doing the newsletter using the BCC field you rely on your SMTP (the server you are sending your mails through) server's restrictions on how many recipients are allowed per email. That means you'd have to send out multiple e-Mails manually. In addition to that the e-Mails are more likely to get marked as spam when using BCC. Another option is to send the e-Mails to all the recipients individually automatically if your e-Mail client supports it. The drawback is that you'd have all the generated internet traffic on your side. For example if you send an HTML e-Mail with 100KB to 1000 recipients you end up with more than 100 Megabytes of traffic. Also, if you send the included images of the newsletter from your e-Mail client, they get attached directly to every e-Mail which also is an indicator that your e-Mails will end up in spam folders of your recipients.
Recommendations
The safest way to make sure every recipient can view the newsletter is to send your message in text format only. At first this might not seem very attractive, however, it has various advantages. As the e-Mail has obviously no graphical layout, there's no way it can look wrong in your recipient's e-Mail client as it's plain text. This is also a huge time saver. The e-Mail can of course include a link to a page on your website where you again are able to do graphical layouts and fit it to your Corporate Identity. There it's also possible to do adjustments and correct possible errors after you've actually sent out the newsletters. Being only a text e-Mail makes the message also a lot smaller in size which makes it faster to download.
Regarding HTML newsletters there are a few things to consider to make you and your recipients happy. A good idea is to add a small text bit at the beginning with a link to a page on your website where it should be possible to view the same newsletter in a web browser in case the recipient is not able to view your newsletter correctly. Images should not be sent as attachments within the email but rather linked to an external server. This also enables you to track readers of your newsletter by analyzing access log files of those images.
A possible (almost free) solution
Instead of using Word and Outlook, switch for example to PHPList. You may still use your web based contacts database and export the target list to PHPList. It is still not ideal, because many steps are involved to send the newsletter. Special knowledge is required for certain steps. Using PHPList mays be a bit tricky for someone who is used to Word and Outlook, but it would improve a few things:
- - Newsletters are less likely to be marked as spam
- - HTML template/layout seems to work in most common e-Mail clients
- - No major bandwidth usage on your side
- - Sending the newsletter itself is quite fast (approx. 10 Minutes for 3000 e-Mails on a standard shared host) compared to your current setup
In addition to that, PHPList has some features which are quite handy if you get your developer to integrate it with your contact database.
- - PHPlist support automatic handling of e-Mail Bounces.
- - PHPlist can be set up to update other databases if an e-Mail address seems invalid
I would recommend to create a HTML newsletter template which should be tested and should work in most major email clients without breaking the layout, for example Windows Live Mail, Microsoft Outlook, Mozilla Thunderbird, Gmail and Apple Mail. This template could be used as a basis for further newsletters. The safest way to edit this template without breaking the layout is still editing the HTML source code. A possible solution might be using the full version of the online/javascript editing tool FSKEditor (which e.g. is included with phplist). Still, not breaking things is quite tricky. I recommend not doing this on your own and better work with a good designer who's aware of the issues and knows what he's doing. It will save you a lot of headache and time.
Further Recommendations
The following lines are based on personal experiences and preferences and could therefore be biased and not objective.
As far as it seems to me your requirements for costumer relationship activities are quite general in nature. In my opinion it is therefore not necessary or feasible to create any kind of software for this purpose from scratch. There exist many kinds of commercial or free open-source solutions for the different kind of activities you are doing. Depending on your budget and time restraints it would be better to go with a commercial solutions provider or to invest in adapting open-source software to your needs. Open-source is taking and giving.
You get great free software and its source code. If you (or your developer) are able to extend it, develop it further or make it better in any ways, it is much appreciated if you give your achievements back to the developer community. This creates better software not only for you, but for everybody. Many eyes have a look on the code, which makes the software better documented and more secure. It also means that you're not depended on a single person building a proprietary system for you. If you use a popular open-source solution, it is very likely that you are able to find another developer who has experience with the given software should you lose your current developer.
Hope this helps.