Email Marketing Best Practices

Technical Stuff

Coding HTML email can be a pain. If you, as a designer/developer, get frustrated trying to ensure cross-browser conformity with your websites, you’re going to pull your hair out with all the available client tools for reading email. Not only do your emails have to look decent in the various web email services such as Gmail, Hotmail and Yahoo!, but you also have to design for desktop applications such as Outlook, AOL, Eudora and Thunderbird.

One thing I’ve learned about coding decent HTML email is that you have to be comfortable taking a step backwards into the dark ages of HTML. Standards compliance is about to go out the window as is most CSS. With that said, let’s jump in!

  • First of all, use tables for your layout. Yes, I really said that. CSS positioning will give widely mixed results so don’t even try to use a DIV. Don’t get complicated with your tables, either. For example, for a 2-column layout with a header and footer, make a single container table for the whole thing, then separate tables for the header, the two main content columns and the footer. Although colspans work in most email clients, they break some, so separate tables is the way to go. Feel free to use CELLPADDING and CELLSPACING liberally.
  • Design your document to display well at about 500-600 pixels. Most email clients don’t allow more width than that in their preview panes. You want them to be able to see enough of your message to want to open it. If all they see if a bit of a larger graphic (which may well not be displayed anyway), they’re unlikely to want to pursue it farther.
  • Anything you put in the <HEAD> tag will be lost, since most email clients strip out the <HEAD> tag. Therefore instead of linking to an external CSS file, use embedded and/or inline CSS instead. Don’t try to get fancy with your CSS — use it mostly for simple font and color formatting. Also, make sure your CSS will degrade gracefully.
  • Similarly, background colors and anything else you might be tempted to put in the <BODY> tag will be lost. Instead, set your background color to your container table.
  • Flash, JavaScript, ActiveX, etc. are not going to work in HTML email. If these things are essential in your email, put a link in your email that goes to a landing page on the web instead of trying to deliver it in the actual email.

Design Stuff

I’m using the term “Design” to include email content or even customer service in general. Basically, when making decisions about HTML email, treat others the way you’d want to be treated. Be respectful, don’t send out unsolicited emails (where people haven’t opted in to receive your emails), don’t bombard people with email, etc. The bullet points below list some specifics:

  • Put your company’s name in the “From” box. Be up front about who you are so your recipient doesn’t think you’re a spammer.
  • Put the recipient’s name (not their email address) in the “To” box. This not only makes your email look a bit more personal, it also helps differentiate you from spammers.
  • Put relevant info in the “Subject” line and try not to sound like a snake oil salesman. If you’re tempted to put exclamation marks in your subject line, you probably need to rewrite it. Your subject line should give your recipient a reasonably good idea of the reason for the email without hitting them over the head with it.
  • Always provide a one-click opt-out link that is easy to see. If people don’t see an easy opt-out, they’re likely to hit their “Junk” button.
  • Don’t bombard people with email. One email every month or two is enough for most types of businesses.
  • On the other hand, if you haven’t sent out emails in a long time, consider reminding people that they signed up to receive emails from you at such-and-such website or wherever. People are likely to forget signing up if they haven’t heard from you in awhile.
  • Provide as much contact information in your emails as possible. The more contact info you provide, the friendly and more reputable you look. If you look like you’re trying to hide something, people will assume you are and won’t trust your organization (or your emails) as much.
  • Put a link in your emails to allow people to view an online version of your email. That will be helpful in case they have trouble deciphering your email and will also help if they forward their email to friends and it gets mangled along the way.