Email Design Guidelined

At some stage in your career, it’s likely you’ll be asked by a client to design a HTML email. Before you rush to explain that all the cool kids are using social media, keep in mind that when done correctly, email is still one of the best ways to promote you and your clients online. In fact, a recent survey showed that every dollar spent on email marketing this year generated more than $40 in return. That’s more than any other marketing channel, including the cool ones.

There are a whole host of ingredients that contribute to a good email marketing campaign. Permission, relevance, timeliness and engaging content are all important. Even so, the biggest challenge for designers still remains building an email that renders well across all the popular email clients.

Same same, but different

Before getting into the details, there are some uncomfortable facts that those new to HTML email should be aware of. Building an email is not like building for the web. While web browsers continue their onward march towards standards, many email clients have stubbornly stayed put. Some have even gone backwards. In 2007, Microsoft switched the Outlook rendering engine from Internet Explorer to Word. Yes, as in the word processor. Add to this the quirks of the major web-based email clients like Gmail and Hotmail, sprinkle in a little Lotus Notes and you’ll soon realize how different the email game is.

While it’s not without its challenges, rest assured it can be done. In my experience the key is to focus on three things. First, you should keep it simple. The more complex your email design, the more likely is it to choke on one of the popular clients with poor standards support. Second, you need to take your coding skills back a good decade. That often means nesting tables, bringing CSS inline and following the coding guidelines I’ll outline below. Finally, you need to test your designs regularly. Just because a template looks nice in Hotmail now, doesn’t mean it will next week.

Setting your lowest common denominator

To maintain your sanity, it’s a good idea to decide exactly which email clients you plan on supporting when building a HTML email. While general research is helpful, the email clients your subscribers are using can vary significantly from list to list. If you have the time there are a numberof tools that can tell you specifically which email clients your subscribers are using. Trust me, if the testing shows almost none of them are using a client like Lotus Notes, save yourself some frustration and ignore it altogether.

Knowing which email clients you’re targeting not only makes the building process easier, it can save you lots of time in the testing phase too. For the purpose of this article, I’ll be sharing techniques that give the best results across all of the popular clients, including the notorious ones like Gmail, Lotus Notes 6 and Outlook 2007. Just remember that pixel perfection in all email clients is a pipe dream.

Let’s get started.

Use tables for layout

Because clients like Gmail and Outlook 2007 have poor support for float, margin and padding, you’ll need to use tables as the framework of your email. While nested tables are widely supported, consistent treatment of width, margin and padding within table cells is not. For the best results, keep the following in mind when coding your table structure.

Set the width in each cell, not the table

When you combine table widths, td widths, td padding and CSS padding into an email, the final result is different in almost every email client. The most reliable way to set the width of your table is to set a width for each cell, not for the table itself.

<table cellspacing="0" cellpadding="10" border="0">
<tr>
 <td width="80"></td>
 <td width="280"></td>
</tr>
</table>

Never assume that if you don’t specify a cell width the email client will figure it out. It won’t. Also avoid using percentage based widths. Clients like Outlook 2007 don’t respect them, especially for nested tables. Stick to pixels. If you want to add padding to each cell, use either the cellpadding attribute of the table or CSS padding for each cell, but never combine the two.

Err toward nesting

Table nesting is far more reliable than setting left and right margins or padding for table cells. If you can achieve the same effect by table nesting, that will always give you the best result across the buggier email clients.

Use a container table for body background colors

Many email clients ignore background colors specified in your CSS or the <body> tag. To work around this, wrap your entire email with a 100% width table and give that a background color.

<table cellspacing="0" cellpadding="0" border="0" width="100%">
<tr>
 <td bgcolor=”#000000”>
 Your email code goes here.
 </td>
</tr>
</table>

You can use the same approach for background images too. Just remember that some email clients don’t support them, so always provide a fallback color.

Avoid unnecessary whitespace in table cells

Where possible, avoid whitespace between your <td> tags. Some email clients (ahem, Yahoo! and Hotmail) can add additional padding above or below the cell contents in some scenarios, breaking your design for no apparent reason.

CSS and general font formatting

While some email designers do their best to avoid CSS altogether and rely on the dreaded <font> tag, the truth is many CSS properties are well supported by most email clients. See this comprehensive list of CSS support across the major clients for a good idea of the safe properties and those that should be avoided.

Always move your CSS inline

Gmail is the culprit for this one. By stripping the CSS from the <head> and <body> of any email, we’re left with no choice but to move all CSS inline. The good news is this is something you can almost completely automate. Free services like Premailer will move all CSS inline with the click of a button. I recommend leaving this step to the end of your build process so you can utilize all the benefits of CSS.

Avoid shorthand for fonts and hex notation

A number of email clients reject CSS shorthand for the font property. For example, never set your font styles like this.

p {
 font:bold 1em/1.2em georgia,times,serif;
}

Instead, declare the properties individually like this.

p {
   font-weight: bold;
   font-size: 1em;
   line-height: 1.2em;
   font-family: georgia,times,serif;
}

While we’re on the topic of fonts, I recently tested every conceivable variation of @font-face across the major email clients. The results were dismal, so unfortunately it’s web-safe fonts in email for the foreseeable future.

When declaring the color property in your CSS, some email clients don’t support shorthand hexadecimal colors like color:#f60; instead of color:#ff6600;. Stick to the longhand approach for the best results.

Paragraphs

Just like table cell spacing, paragraph spacing can be tricky to get a consistent result across the board. I’ve seen many designers revert to using double <br /> or DIVs with inline CSS margins to work around these shortfalls, but recent testing showed that paragraph support is now reliable enough to use in most cases (there was a time when Yahoo! didn’t support the paragraph tag at all).

The best approach is to set the margin inline via CSS for every paragraph in your email, like so:

p {
 margin: 0 0 1.6em 0;
}

Again, do this via CSS in the head when building your email, then use Premailer to bring it inline for each paragraph later.

If part of your design is height-sensitive and calls for pixel perfection, I recommend avoiding paragraphs altogether and setting the text formatting inline in the table cell. You might need to use table nesting or cellpadding / CSS to get the desired result. Here’s an example:

<td width="200" style="font-weight:bold; font-size:1em; line-height:1.2em; font-family:georgia,'times',serif;">your height sensitive text</td>

Links

Some email clients will overwrite your link colors with their defaults, and you can avoid this by taking two steps. First, set a default color for each link inline like so:

<a href="http://somesite.com/" style="color:#ff00ff">this is a link</a>

Next, add a redundant span inside the a tag.

<a href="http://somesite.com/" style="color:#ff00ff"><span style="color:#ff00ff">this is a link</span></a>

To some this may be overkill, but if link color is important to your design then a superfluous span is the best way to achieve consistency.

Images in HTML emails

The most important thing to remember about images in email is that they won’t be visible by default for many subscribers. If you start your design with that assumption, it forces you to keep things simple and ensure no important content is suppressed by image blocking.

With this in mind, here are the essentials to remember when using images in HTML email:

Avoid spacer images

While the combination of spacer images and nested tables was popular on the web ten years ago, image blocking in many email clients has ruled it out as a reliable technique today. Most clients replace images with an empty placeholder in the same dimensions, others strip the image altogether. Given image blocking is on by default in most email clients, this can lead to a poor first impression for many of your subscribers. Stick to fixed cell widths to keep your formatting in place with or without images.

Always include the dimensions of your image

If you forget to set the dimensions for each image, a number of clients will invent their own sizes when images are blocked and break your layout. Also, ensure that any images are correctly sized before adding them to your email. Some email clients will ignore the dimensions specified in code and rely on the true dimensions of your image.

Avoid PNGs

Lotus Notes 6 and 7 don’t support 8-bit or 24-bit PNG images, so stick with the GIF or JPG formats for all images, even if it means some additional file size.

Provide fallback colors for background images

Outlook 2007 has no support for background images (aside from this hack to get full page background images working). If you want to use a background image in your design, always provide a background color the email client can fall back on. This solves both the image blocking and Outlook 2007 problem simultaneously.

Don’t forget alt text

Lack of standards support means email clients have long destroyed the chances of a semantic and accessible HTML email. Even still, providing alt text is important from an image blocking perspective. Even with images suppressed by default, many email clients will display the provided alt text instead. Just remember that some email clients like Outlook 2007, Hotmail and Apple Mail don’t support alt text at all when images are blocked.

Use the display hack for Hotmail

For some inexplicable reason, Windows Live Hotmail adds a few pixels of additional padding below images. A workaround is to set the display property like so.

img {display:block;}

This removes the padding in Hotmail and still gives you the predicable result in other email clients.

Don’t use floats

Both Outlook 2007 and earlier versions of Notes offer no support for the float property. Instead, use the align attribute of the img tag to float images in your email.

<img src="image.jpg" align="right">

If you’re seeing strange image behavior in Yahoo! Mail, adding align=“top” to your images can often solve this problem.

Video in email

With no support for JavaScript or the object tag, video in email (if you can call it that) has long been limited to animated gifs. However, some recent research I did into the HTML5 video tag in email showed some promising results.

Turns out HTML5 video does work in many email clients right now, including Apple Mail, Entourage 2008, MobileMe and the iPhone. The real benefit of this approach is that if the video isn’t supported, you can provide reliable fallback content such as an animated GIF or a clickable image linking to the video in the browser.

Of course, the question of whether you should add video to email is another issue altogether. If you lean toward the “yes” side check out the technique with code samples.

What about mobile email?

The mobile email landscape was a huge mess until recently. With the advent of the iPhone, Android and big improvements from Palm and RIM, it’s becoming less important to think of mobile as a different email platform altogether.

That said, there are a few key pointers to keep in mind when coding your emails to get a decent result for your more mobile subscribers.

Keep the width less than 600 pixels

Because of email client preview panes, this rule was important long before mobile email clients came of age. In truth, the iPhone and Pre have a viewport of 320 pixels, the Droid 480 pixels and the Blackberry models hover around 360 pixels. Sticking to a maximum of 600 pixels wide ensures your design should still be readable when scaled down for each device. This width also gives good results in desktop and web-based preview panes.

Be aware of automatic text resizing

In what is almost always a good feature, email clients using webkit (such as the iPhone, Pre and Android) can automatically adjust font sizes to increase readability. If testing shows this feature is doing more harm than good to your design, you can always disable it with the following CSS rule:

-webkit-text-size-adjust: none;

Don’t forget to test

While standards support in email clients hasn’t made much progress in the last few years, there has been continual change (for better or worse) in some email clients. Web-based providers like Yahoo!, Hotmail and Gmail are notorious for this. On countless occasions I’ve seen a proven design suddenly stop working without explanation.

For this reason alone it’s important to retest your email designs on a regular basis. I find a quick test every month or so does the trick, especially in the web-based clients. The good news is that after designing and testing a few HTML email campaigns, you will find that order will emerge from the chaos. Many of these pitfalls will become quite predictable and your inbox-friendly designs will take shape with them in mind.

Looking ahead

Designing HTML email can be a tough pill for new designers and standardistas to swallow, especially given the fickle and retrospective nature of email clients today. With HTML5 just around the corner we are entering a new, uncertain phase. Will email client developers take the opportunity to repent on past mistakes and bring email clients into the present? The aim of groups such as the Email Standards Project is to make much of the above advice as redundant as the long-forgotten <blink> and <marquee> tags, however, only time will tell if this is to become a reality.

Although not the most compliant (or fashionable) medium, the results speak for themselves – email is, and will continue to be one of the most successful and targeted marketing channels available to you. As a designer with HTML email design skills in your arsenal, you have the opportunity to not only broaden your service offering, but gain a unique appreciation of how vital standards are.

Reference from: http://www.campaignmonitor.com/design-guidelines/

Amazon Simple Email Service (Amazon SES)

Amazon Simple Email Service (Amazon SES) is a highly scalable and cost-effective bulk and transactional email-sending service for businesses and developers. Amazon SES eliminates the complexity and expense of building an in-house email solution or licensing, installing, and operating a third-party email service. The service integrates with other AWS services, making it easy to send emails from applications being hosted on services such as Amazon EC2. With Amazon SES there is no long-term commitment, minimum spend or negotiation required – businesses can utilize a free usage tier and after that enjoy low fees for the number of emails sent plus data transfer fees.

Building large-scale email solutions to send marketing and transactional messages is often a complex and costly challenge for businesses. To optimize the percentage of emails that are successfully delivered, businesses must deal with hassles such as email server management, network configuration, and meeting rigorous Internet Service Provider (ISP) standards for email content. Additionally, many third-party email solutions require contract and price negotiations, as well as significant up-front costs.

Amazon SES eliminates these challenges and enables businesses to benefit from the years of experience and sophisticated email infrastructure Amazon.com has built to serve its own large-scale customer base. Through a simple API call, businesses can now access a high-quality, scalable email infrastructure to efficiently and inexpensively communicate to their customers. For high email deliverability, Amazon SES uses content filtering technologies to scan a business’s outgoing email messages to help ensure that the content meets ISP standards. The email message is then either queued for sending or routed back to the sender for corrective action. To help businesses further improve the quality of email communications with their customers, Amazon SES provides a built-in feedback loop, which includes notifications of bounce backs, failed and successful delivery attempts, and spam complaints.

Reference from: http://aws.amazon.com/ses/

Gmail’s Priority Index impact Email Marketing

On August 30, 2010, Google announced that it is launching a new mailbox priority system within its Gmail email platform called “Priority Inbox”. This brings Gmail more in line with the recent launch of Hotmail’s Sweep functionality that was announced in late July. It also continues the trend by the anti-spam and ISP industry to move to a more relevancy-based reputation and filtering model. The new system is still in beta but will be available to all customers by the end of the week.

Priority Inbox provides users with even more control of the email they receive and how it is viewed in their inbox. The new Gmail inbox will be broken down into 3 basic sections:

  • Important and Unread: Contains one-to-one communications and messages that recipients interact with the most.
  • Starred: Messages that Gmail users have specifically marked as Starred and intend to come back to at a later time.
  • Everything Else: Contains messages that users have not interacted with or that are deemed less important by Gmail’s system. Gmail users can train the system manually by marking messages as “Important” or “Not Important” and/or rely on Gmail’s system to determine how to filter messages based on the users’ previous actions with those messages.  This means Gmail will be using data from user interactions with individual messages and senders to determine how Gmail recipients most likely want their emails filtered going forward.

For more information on Gmail’s Priority Inbox, please see the official Google blog announcement below:
http://googleblog.blogspot.com/2010/08/email-overload-try-priority-inbox.html

What does this mean for email marketers?

The industry has been pushing email marketers to drive relevancy and user engagement in their marketing programs for quite some time. This is even more critical now because the way a user perceives your email or interacts with it will directly determine how or if the user sees your messages in their inbox in the future.

Think of it as a filter for mail that is not spam, but is also not important enough to the recipient for them to take an immediate action to ensure it remains easily visible to them.

What should you do to mitigate the possible negative impact on your messaging?

It’s important to continue to follow best practices, or start now if you are not currently, because the same principles will apply to Gmail’s Priority Inbox placement that apply to good delivery and inbox penetration among all ISPs – you will simply have to be better at it. If ISPs are heavily monitoring customer interaction with your messages, then you have to work harder to engage your subscribers. Make sure you are sending email that your customers want to open and look forward to receiving.

However, there are a few important action items you should take to optimize your emails for Gmail’s new inbox priority system:

  1. Optimize your subject lines and snippet/pre-header text
  2. In addition to your subject line, Gmail displays the first few words of your message depending on the length of your subject line – about 70 characters total.  This means that your snippet text, also known as a pre-header, is just as important as your subject line in getting your subscribers’ attention because it will be the text displayed in the Gmail inbox immediately following your subject line.

  3. Incorporate unique calls to action for Gmail users.
  4. While asking subscribers to add your sending address to their contact lists is a good idea across all email platforms, it’s especially important for Gmail users, to ensure that your message reaches the inbox in the first place, let alone the Priority Inbox.  Additionally, consider Priority Inbox users’ ability to “star” messages to read at a later time, and suggest that they do so for messages that are long in nature and require more time to read.  Not only will you improve your reputation with Gmail, you’ll build more trust with your subscribers.

  5. Pay attention to keywords
  6. The Gmail algorithm will use frequently used keywords included in the copy of your emails to determine the importance of your message. For image-heavy emails, create a version that incorporates HTML text to ensure that your message is crawled properly, and be sure to add the appropriate keywords in your image alt tags to describe the images you are using.  Treat your email copy as you would a page on your website that you’re trying to optimize for search engines, and if you have someone on your team that specializes in SEO, it might be a good idea to consult with him/her when drafting your messages.

  7. Avoid “batch and blast” emails
  8. While this best practice has been encouraged for quite a long time, it is more important than ever to send the right messages to the right people at the right time.  Use advanced segmentation and lifecycle messaging tools to identify your most engaged subscribers and target them with highly relevant messaging to ensure high open rates.  You might end up sending less email, but you will improve your reputation with Gmail (and other ISPs) as a result – which will ultimately increase the effectiveness of your email campaigns and drive greater ROI.

  9. Always be optimizing
  10. This goes for all of your subscribers, but it will be increasingly important to revisit your email marketing tactics over time and make necessary changes according to your engagement metrics.  What subject lines and/or snippet text performed best?  What types of messages in general are you seeing higher engagement with? Do you see any trends that may have resulted from keyword optimization?  Be sure to segment your Gmail subscribers and keep a close eye on their level of engagement separately – you may want to create separate versions of your emails for this group depending on their behaviors.

We encourage you not to look at this as a negative change in the community or an additional hurdle for email marketing success. Instead, look at this as a great opportunity to set your brand and email marketing apart from your competitors and raise yourself to the top of your customers’ “Important” mail. If you do this successfully, this change will have nothing but positive impacts on your email marketing program because there will be less noise from fewer messages to compete for your subscribers’ limited attention span

Reference from: http://www.bluehornet.com/articles/full/gmail-priority-inbox

Gmail’s Priority Index impact Email Marketing

On August 30, 2010, Google announced that it is launching a new mailbox priority system within its Gmail email platform called “Priority Inbox”. This brings Gmail more in line with the recent launch of Hotmail’s Sweep functionality that was announced in late July. It also continues the trend by the anti-spam and ISP industry to move to a more relevancy-based reputation and filtering model. The new system is still in beta but will be available to all customers by the end of the week.

Priority Inbox provides users with even more control of the email they receive and how it is viewed in their inbox. The new Gmail inbox will be broken down into 3 basic sections:

  • Important and Unread: Contains one-to-one communications and messages that recipients interact with the most.
  • Starred: Messages that Gmail users have specifically marked as Starred and intend to come back to at a later time.
  • Everything Else: Contains messages that users have not interacted with or that are deemed less important by Gmail’s system. Gmail users can train the system manually by marking messages as “Important” or “Not Important” and/or rely on Gmail’s system to determine how to filter messages based on the users’ previous actions with those messages.  This means Gmail will be using data from user interactions with individual messages and senders to determine how Gmail recipients most likely want their emails filtered going forward.

For more information on Gmail’s Priority Inbox, please see the official Google blog announcement below:
http://googleblog.blogspot.com/2010/08/email-overload-try-priority-inbox.html

What does this mean for email marketers?

The industry has been pushing email marketers to drive relevancy and user engagement in their marketing programs for quite some time. This is even more critical now because the way a user perceives your email or interacts with it will directly determine how or if the user sees your messages in their inbox in the future.

Think of it as a filter for mail that is not spam, but is also not important enough to the recipient for them to take an immediate action to ensure it remains easily visible to them.

What should you do to mitigate the possible negative impact on your messaging?

It’s important to continue to follow best practices, or start now if you are not currently, because the same principles will apply to Gmail’s Priority Inbox placement that apply to good delivery and inbox penetration among all ISPs – you will simply have to be better at it. If ISPs are heavily monitoring customer interaction with your messages, then you have to work harder to engage your subscribers. Make sure you are sending email that your customers want to open and look forward to receiving.

However, there are a few important action items you should take to optimize your emails for Gmail’s new inbox priority system:

  1. Optimize your subject lines and snippet/pre-header text
  2. In addition to your subject line, Gmail displays the first few words of your message depending on the length of your subject line – about 70 characters total.  This means that your snippet text, also known as a pre-header, is just as important as your subject line in getting your subscribers’ attention because it will be the text displayed in the Gmail inbox immediately following your subject line.

  3. Incorporate unique calls to action for Gmail users.
  4. While asking subscribers to add your sending address to their contact lists is a good idea across all email platforms, it’s especially important for Gmail users, to ensure that your message reaches the inbox in the first place, let alone the Priority Inbox.  Additionally, consider Priority Inbox users’ ability to “star” messages to read at a later time, and suggest that they do so for messages that are long in nature and require more time to read.  Not only will you improve your reputation with Gmail, you’ll build more trust with your subscribers.

  5. Pay attention to keywords
  6. The Gmail algorithm will use frequently used keywords included in the copy of your emails to determine the importance of your message. For image-heavy emails, create a version that incorporates HTML text to ensure that your message is crawled properly, and be sure to add the appropriate keywords in your image alt tags to describe the images you are using.  Treat your email copy as you would a page on your website that you’re trying to optimize for search engines, and if you have someone on your team that specializes in SEO, it might be a good idea to consult with him/her when drafting your messages.

  7. Avoid “batch and blast” emails
  8. While this best practice has been encouraged for quite a long time, it is more important than ever to send the right messages to the right people at the right time.  Use advanced segmentation and lifecycle messaging tools to identify your most engaged subscribers and target them with highly relevant messaging to ensure high open rates.  You might end up sending less email, but you will improve your reputation with Gmail (and other ISPs) as a result – which will ultimately increase the effectiveness of your email campaigns and drive greater ROI.

  9. Always be optimizing
  10. This goes for all of your subscribers, but it will be increasingly important to revisit your email marketing tactics over time and make necessary changes according to your engagement metrics.  What subject lines and/or snippet text performed best?  What types of messages in general are you seeing higher engagement with? Do you see any trends that may have resulted from keyword optimization?  Be sure to segment your Gmail subscribers and keep a close eye on their level of engagement separately – you may want to create separate versions of your emails for this group depending on their behaviors.

We encourage you not to look at this as a negative change in the community or an additional hurdle for email marketing success. Instead, look at this as a great opportunity to set your brand and email marketing apart from your competitors and raise yourself to the top of your customers’ “Important” mail. If you do this successfully, this change will have nothing but positive impacts on your email marketing program because there will be less noise from fewer messages to compete for your subscribers’ limited attention span

Reference from: http://www.bluehornet.com/articles/full/gmail-priority-inbox

How to use DomainKeys Signature

DomainKeys is a technology proposal that can bring black and white back to this decision process by giving email providers a mechanism for verifying both the domain of each email sender and the integrity of the messages sent. To learn more detail about DomainKeys, please refer to http://antispam.yahoo.com/domainkeys

DKIM is a similar technology as Domainkeys. To learn more detail about DKIM, please refer to RFC4871.

Now, EmailArchitect Server provides a way to add DomainKeys signature and DKIM signature to outgoing email.

Make key-pair certificate

First of all, we need to generate a certificate which contains public key/private key. We can use MakeCert.exe (.NET Framework Tools) to generate certificate like this:

makecert -pe -n "CN=mydomainkeys" -ss my -sr LocalMachine -a sha1 -sky signature -r

Then you can check the certficate like this:

Windows Start Menu->input:
MMC

press enter.

MMC->File Menu->Add/Remove Span-in
Add->Choose "Certificates"-> Computer Account->Local Machine->Finish->Close.

Then you should find the certificate at
"Certificates(Local Computer)->Personal->Certificates"

You can also use this online tool to generate the certificate
http://mail.adminsystem.com/getpfx/getpfx.aspx

Create X-DK-File

To sign the DomainKeys with EmailArchitect Server, we need to create a text file with notepad. and save it.

For example:
We create a adminsystem.com.domainkey.txt and contains the following content.

dk_d: adminsystem.com
dk_s: s1024
CertStore: machine
CertStoreName: my
CertSubjectName: mydomainkeys
DKIMSupport: yes
method: nofws

dk_d is the email sender domain,
dk_s is the domain public key  selector.
CertSubjectName is the keyword in certificate subject.
If DKIMSupport is "yes", then DKIM signature will be added as well.
If method is "simple", then Domainkeys/DKIM signature uses "simple" algorithm;
If method is "nofws", then Domainkeys/DKIM signature uses "nofws/relaxed" algorithm;

You can also export the certificate with MMC. If importing private key is chosen, the *.pfx will be generated.

then the adminsystem.com.domainkey.txt should contain the following content
dk_d: adminsystem.com
dk_s: s1024
PFXPath: c:\my cert\adminsystem.pfx
PFXPassword: mypassword
DKIMSupport: yes
method: simple

dk_d is the email sender domain,
dk_s is the domain public key  selector.
PFXPath is the PFX file full path.
PFXPassword is the PFX file password.
If DKIMSupport is "yes", then DKIM signature will be added as well.
If method is "simple", then Domainkeys/DKIM signature uses "simple" algorithm;
If method is "nofws", then Domainkeys/DKIM signature uses "nofws/relaxed" algorithm;

Finally, we just need to copy this file to EmailArchitect Server installation path\domainkeys folder. EmailArchitect Server will generate the DomainKeys signature and DKIM signature for email from domain “adminsystem.com” automatically. The file name syntax must be “[domain name].domainkey.txt”.

Deploy Public Key

We also need to deploy the certificate Public Key to your domain DNS server. You can use the online tool http://emailarchitect.com/live/getpublickey.aspx to export the Public Key of your certificate.

Once you get the public key, you should set a TXT record in your domain DNS server. For example: your selector is s1024, your domain is adminsystem.com, then you should create a TXT record for s1024._domainkey.adminsystem.com and set the following content in the record.

s1024._domainkey.adminsystem.com       text =

        "t=y; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCmKsozkVJqlNAGsvn1LoJPmoZl8nizv6pIuOV5P
44E8C6Vbl4DW8p0Bb5Zg8EgpYRgsEiJX5pYDj67YzzXNIhViziHwQ3jbUedxNkw/6GV4ZX8aRJKJnwnYqGWIQ8tQESwQtywfduQ2
TjsS1aG3XeOgxxEeuhBNaZHQWVThSinuQIDAQAB"

To learn more detail about Public Key deployment, please refer to http://antispam.yahoo.com/domainkeys

Test DomainKeys and DKIM

You just need to send an email to check-auth@verifier.port25.com, then a report will be send back to your sender email address.

reference from: http://www.emailarchitect.net/emailserver/doc/html/domainkeys.htm

20 Ways Opt-in E-Mailers Can Outsmart Spam Filters

20 Ways Opt-in E-Mailers Can Outsmart Spam Filters

by Dr. Ralph F. Wilson, E-Commerce Consultant
Web Marketing Today, Issue 119, December 3, 2002


It’s a jungle out there. Assurance Systems estimates that 5% of e-mails are blocked by spam filters. MarketingSherpa found a similar number but estimates that many companies will be instituting filters in the near future.

After several of my friends informed me that my Doctor Ebiz newsletter had been rejected by SpamAssassin, I decided to do some checking on my own to see how this could happen. I’ve done some evaluation on tests performed by SpamAssassin ver 2.43 (http://www.spamassassin.org/tests.html). I make no claim to be an expert, but I learned a lot from studying their tests.

Filters these days are much more sophisticated than the typical e-mail filters in Eudora and Outlook that can be made to delete an e-mail message that contains a “bad” word. Filters such as SpamAssassin look for patterns and add or delete points for certain factors. Then, if the total score reaches a predetermined level, the message is flagged as spam. By looking at what adds points (bad) and subtracts points (good), I’ve learned how to construct e-mails that will do better with the filters, if not escape them entirely.

Note: spam filters are a moving target, and my suggestions may not be as useful a few months from now. Moreover, the SpamAssassin defaults listed here can be (and sometimes are) adjusted by over-eager spam-adverse ISPs, so don’t count on them. They’re best used as a way of seeing what the filters consider bad or good, rather than as a precise measure.

I’ve found 20 different strategies that can help. Some of these are crucial; others are only of minor importance. But taken together they can help you get more of your legitimate opt-in e-mails through the obstacle course to your recipients.

1. Avoid E-Mail Software or Listservers Used by Spammers

Certain desktop e-mail listserver programs, as well as ASP hosted listservers, have developed a bad reputation for sending spam.

SpamAssassin looks for “fingerprints” of programs on its “bad list,” and adds points to your spam score if it detects them. For example, any e-mail address that includes @email-publisher.com costs you 1.00 points. Employing various free web hosting services that are commonly used by spammers can hurt, too.

The desktop e-mailing software used most often by spammers (if it can be identified as such by SpamAssassin) is penalized from 3.0 to 2.0, in descending order: jpfree, VC_IPA, StormPost, JiXing, MMailer (Gammadyne, 2.73), EVAMAIL, IMktg, screwup1, Outlook 3.14159. GroupMail, hash 2. Group Mail (ver 2.0) is dinged 1.84. Other identifiable bulk mailers are penalized about 1.00 points. (Note: While I don’t spam, I use Gammadyne Mailer routinely. The current version has no tell-tale headers identifying it as in some earlier versions. I am told Group Mail 3.x does not use such headers either.)

You might study e-mails sent out for any header lines that indicate the brand of mailer. You’ll sometimes see this in the user agent and x-mailer header lines. If you find them, disable them or insist that the software vendor remove them. It is better to send e-mail from an unknown e-mail program than one which can be identified as used by spammers. Or use Apple Mail which has such a good record (spammers can’t make it work well for them?) that your point score is reduced by 1.78. (Just kidding.)

2. Use Capitalization Carefully

Capital letters are seen as “yelling” and spammy. Excess capital letters cost you .21. I had been using capitalized titles until I found that I was being penalized for these. Since then, I’ve stopped using whole lines of capitalized type as headlines in my text newsletters. Instead I limit capitalization to partial lines only.

3. Keep HTML Simple

According to SpamAssassin, if your HTML message has more than 50% HTML tags (that is, has very specific formatting), you are fined 0.31 to 1.78 points. The lesson is to keep your HTML very simple. Highly stylized formats can hurt your score. Here are a few more elements to avoid, if possible:

  • An HTML table with a thick border (0.41 points)
  • JavaScript contained in the message (21 to .30 points)
  • HTML comments “which obfuscate text” cost 2.08 (whatever that means).
  • An HTML form in your e-mail message can also be costly. An “obfuscated action attribute” in an HTML form costs 1.00 point.

4. Watch Your Hyperlinks

SpamAssassin gives links a good looking over, so be careful.

  • Links without an http:// prefix cost 1.28. Oops. I’ve been shortening them, but does that spamify my newsletters? I hope not.
  • Don’t link to URLs using IP address numbers instead of a domain name (3.1).
  • More on mailto links below under unsubscription systems.

5. Use Color Judiciously

Realize that high art is likely to cost you something. A font color tag that isn’t formtted quite right can cost you .21. If you are using special font colors that aren’t in the palette of 217 web safe colors, you are dinged .30 points. Hidden letters (same color as the background color) cost you .34 points. Beware the color police.

Black

0

Blue

.21

Red

.32

Gray

.33

Green

.41

Cyan

.41

Yellow

.42

Unknown color

.42

Magenta

.44

Black fonts are safe, but I’m not ready to desert color yet. I’ll try to avoid using it in font tags, however. Rather I’ll control color with style sheets and see if that helps. Unfortunately, many e-mail client programs don’t handle style sheets very well yet. Also be aware that using a background color other than white is suspect, and racks up 0.317 points.

6. Use Large Fonts and Characters Judiciously

Fonts larger than +2 or size 3 (normal) cost you 0.34 points. I don’t believe this includes H1, H2, H3 (presumably not), so I’ll probably use HTML headers in the future rather than font tags to increase font size.

7. Avoid Suspect Spam Phrases

This list is a long one. I’ve included it on its own webpage so you can print it out for easy reference — “Words and Phrases that Trigger Some Spam Filters,” Web Marketing Today, 12/3/02. http://www.wilsonweb.com/wmt8/spamfilter_phrases.htm

Does it help to include * or ^ characters in place of vowels? The jury’s still out. I suspect that some spam filters are smart enough to detect this ruse, but I’m not sure.

8. Be Careful with Subject Lines

SpamAssassin is particularly interested in subject lines. Here are a few subject lines no-nos to learn from:

Contains “FREE” in CAPS

0.43

Starts with dollar amount

1.10

GUARANTEED

0.62

Starts with “Free”

0.30

Starts with “Hello”

1.58

To: username at front of subject

2.86

Subject includes a question mark or exclamation point

0.10

Subject contains lots of white space

2.64

Subject is all in capitals

0.48

Subject talks about savings

0.41

Subject talks about losing pounds

0.51

Subject is missing

0.34

9. Carefully Word Your Unsubscribe System

It seems ironic that legitimate opt-in e-mailers are penalized for having unsubscription information. But since so many spammers have bogus systems, it is apparently a spam indicator. For example:

List removal information

1.00

Click-to-remove with PHP/ASP action found

0.30

Claims you can be removed from the list

2.70

Claims to listen to some removal request list

1.00

Says: “to be removed, reply via email” or similar

0.45

Header contains exists:X-List-Unsubscribe

1.11

You need to include ways to unsubscribe, of course, but avoid the phrase “click here to…” and substitute something like “use this link to ….” You’re especially hurt by using mailto e-mail links with “remove” — or anything, for that matter — in the subject. Make sure that the program you are using to unsubscribe people doesn’t have “unsubscribe” or “remove” in the URL.

10. Flaunt Being a Newsletter

Fortunately, being a legitimate newsletter lowers your spam score.

Subject contains newsletter header (list)

-0.22

Subject contains newsletter header (news)

-0.62

Subject contains newsletter header (in review)

-1.00

Subject contains a frequency – probable newsletter

-0.73

Subject contains a month name – probable newsletter

-0.48

Subject contains a date

-1.60

Other words and phrases which may help you include a PGP signature, or something about a forgotten password or a registration system.

11. Use a Signature

You’re helped if your e-mail contains an e-mail signature — since so many spam messages don’t.

Short signature present (no empty lines)

-0.30

Short signature present (empty lines)

-2.09

Long signature present (no empty lines)

-3.13

Long signature present (empty lines)

-0.30

Contains what looks like an ‘E-Mail Disclaimer’

-0.70

Contains what looks like an email attribution

-1.63

Contains what looks like a quoted email text

-0.83

12. Don’t Mention Spam Law Compliance

It’s very unwise to claim that you observe all the spam laws. Only spammers say that. SpamAssassin will assess you from .91 to 3.47 points for this. If you mention House Bill 4176 you’ll be fined 2.02 points. H.R. 3113 dings you 2.93.

13. Message Size of 20K to 40K Helps

Since so many spam messages are under 20K, SpamAssassin gives you credit for a message size between 20K and 40K (-.71). Over 40K helps you less (-.12).

14. Remove Spam Flag Addresses from Your List

Occasionally, evil-minded people will add e-mail addresses to your list just to get you in trouble with the anti-spammers. Try scanning your e-mail database for an e-mail address that starts with abuse@, postmaster@, or nospam@. Sometimes an e-mail address will be inserted that subscribes you to an autoresponder each time you send out an e-mailing. You might scan for the word “subscribe” among your e-mail addresses (though this one won’t affect you with the spam filters).

15. Monitor Your “From” E-mail Address for Challenge Systems

I am seeing a small but increasing number of recipients who use systems that block all e-mails except those that take the trouble to respond to an e-mail message, and perhaps give a name and reason for the e-mail. Thus, it’s important to monitor the mailbox for your “From” e-mail address to catch these.

16. Ask Subscribers to Put Your Address in their “Whitelist” or Address Book

Some e-mail client programs such as AOL 8.0 and Hotmail have recently changed their interface to allow users to sort their mail into preferred folders. As people subscribe, ask them specifically to place you in their address book (AOL), “safe list” (Hotmail), or “whitelist” (some spam filters). That way your e-mail will come directly into their inbox. Asking may be a little trouble, but it may make the difference between your recipients seeing or not seeing your e-mail.

17. Monitor Blacklists and Test Accounts

ISPs and spam filter systems often check blacklists of known spammers to help them reject e-mails. If your listserver’s IP address or domain — or yours — gets on a spam blacklist because of complaints of spam, it will prevent some of your e-mails from getting to their recipients. Your listserver vendor should be actively working with ISPs and anti-spam services to keep an excellent reputation in the e-mail community and resolve any problems. But if they fail to — or cater to spammers — your e-mail delivery can suffer.

SpamAssassin currently checks three blacklists, and addresses that appear on such lists cause substantial penalties to any e-mails coming from them.

  • Razor2 (http://razor.sf.net)
  • DCC List (www.rhyolite.com/anti-spam/dcc/dcc-tree/dcc.html)
  • Pyzor (http://pyzor.sf.net)

Some other blacklists that may prevent your recipients from receiving their e-mail include:

Other anti-spam organizations are listed in Yahoo! Directory under “Email > Spam

You can check many blacklists at once to see if your domain is on it using a utility from OsiruSoft Research & Engineering (http://relays.osirusoft.com/cgi-bin/rbcheck.cgi).

In addition to checking blacklists periodically, it might be a good idea to subscribe to some of the more important ISPs (or find a friend who subscribes) so you can monitor if your e-mails are getting through. ISPs with the largest blocks of subscribers include America Online (with CompuServe and RoadRunner), MSN, Earthlink (with Mindspring and others), United Online (Juno and NetZero), and SBC/Prodigy. If you find your newsletter blacklisted, contact the service(s) involved and actively work to see the ban removed.

18. Move Immediately to Confirmed Opt-in

As I argued a few months ago in “Why I’m Moving to Double Opt-in Subscription Confirmation,” Web Marketing Today, 9/10/02 (www.wilsonweb.com/wmt7/double_optin.htm), the time has come for each company to require the higher standard of confirmed opt-in for new subscribers. If the government doesn’t require it, then the free marketplace driven by spam filters may require the higher standard. When you’re falsely accused of spamming, it’s a whole lot easier to argue your case before an ISP or blacklist when you have a confirmed opt-in standard than if you don’t.

19. Use the Habeas Header If You Qualify

Finally, if you do use a confirmed opt-in system and qualify to apply for a Habeas warrant mark (www.habeas.com), then I suggest you purchase a license to use it. Habeas is actively working with the anti-spam community and leading spam filters to have their mark (contained in headers) recognized as certifying your e-mail as confirmed opt-in. SpamAssassin, for example, subtracts 4.00 points from your score if the e-mail message contains the Habeas header lines. For more information on Habeas, read my Review of Habeas, Web Marketing Today, 1/7/03 (www.wilsonweb.com/reviews/habeas.htm).

I wish that I could guarantee that if you took all the above steps, your legitimate opt-in e-mails would get through the spam filters. But I can’t. I can’t even get all my newsletters through. Another important piece of this problem is to reduce the quantity of spam, and to do that requires legislation.

20. Use a Spam Checker to Test Your Message

We’re now seeing some services you can use to test the spam quotient of your e-zines and e-mail offers before sending them out.

  • SiteSell SpamCheck Report tests your message at no charge using SpamAssassin and sends you a report. Send your test e-mails to mailto:sales-spamcheck@sitesell.net Be careful, however, that you put the word TEST as the first word in the subject — and make sure it is capitalized. Otherwise, the system will delete the mail, thinking it’s spam. Following the word TEST, add the subject line that would appear in the email normally.
  • Assurance Systems offers three functions as part of a paid service. (1) Message Checker rates your e-mail message for spam. (2) Mailbox Monitor checks test addresses for each of the major ISPs to make sure your e-mail is being delivered. (3) Blacklist Alert lets you know what blacklists you are appearing on so you can work to get your domain or IP number off the list. http://www.assurancesys.com

I don’t want intrusive government regulation any more than you. But I believe that the time has come for clear federal regulations to prohibit spam in the same way as unrequested faxes are prohibited. State and provincial laws can’t really regulate what is a national and international problem. Federal regulations won’t stop spam entirely, but they’ll certainly put a dent in it. Yes, some spammers will move offshore. But thousands of small spammers who are willing to spam now because it’s cheap and legal will no longer spam because it illegal, and the risks are too great. I encourage you to advocate with your legislator for federal anti-spam regulations in your country. Perhaps we can recover for legitimate business use a communications medium that was once called the “killer ap.” I hope so.

additional info: http://www.list-unsubscribe.com/

Bulk Sender Guidenline

 We’ve received inquiries from bulk senders who’d like more information on best practices to ensure that their mail is delivered to Gmail users. The way Gmail classifies spam depends heavily on reports from our users. Gmail users can mark and unmark any message as spam, at any time. To increase the inbox delivery rate of your messages, make sure that all recipients on your distribution lists actually want to receive the mail. Visit the following sections for some tips on how to make sure your messages are welcomed by Gmail users.

Authentication & Identification
Subscription
Unsubscribing
Format
Delivery
Third-Party Senders
Affiliate Marketing Programs

Reference from:

https://mail.google.com/support/bin/answer.py?hl=en&answer=81126

DKIM介紹

DKIM(DomainKeys Identified Mail)是一種用來對抗釣魚之類廣告信的協定.

當初yahoo以及cisco為了對抗廣告信(至少不讓廣告商冒用其名義寄信),使用一種特殊的方式對抗廣告信,
實施了多年以後,終於證明可以有效阻擋廣告信,因此他們將此協定開放讓大家使用,
到了2005年,在多家廠商的合作下,規範出第一版DKIM,送交IETF審查.
,並且在2007年通過,成為開放通訊協定中的一種,RFC編號為4871.

DKIM的運作方式有兩種, 第一種是驗證(verification),第二種是簽名(signature).
假設我是test.com這個網域的管理員, 我必須利用DNS設定一組公開金鑰,
讓所有人可以取得且用來驗證郵件是否為test.com郵件伺服器發出.
這樣以後所有從test.com郵件伺服器所送出的郵件,只要經過簽名(必須使用私密金鑰才可以簽名),
對方就可以使用公開金鑰認證,確保郵件是否為真.

若所有的郵件伺服器都有這樣的機制, 那些廣告信就無所遁形, 因為他們無法經由簽名預告郵件是否為真
.若廣告商要破解這種機制是需要很大的成本,就目前來說, 是很有效的檔廣告機制.

目前實做的DKIM的模組,對於所定義的公開金鑰與私密金鑰,
還只限於郵件伺服器本身對外發出(非公信力單位發出),
現已有 RFC5016(DKIM Signing Practices Protocol)討論所謂的SPP,
未來很可能形成另一種具備安全性與公信力的通訊協定,讓DKIM更能普及.

若遭遇大量廣告郵件攻擊郵件伺服器,在伺服器還沒進行DKIM驗證的動作時,
可以搭配其他輔助套件,先行阻擋廣告商郵件寄送,
才不至於造成郵件伺服器負載過高甚而停止運作.

特別一提的是目前DKIM並不能證明郵件真的是發信者本人發出,
必須搭配第三者簽名的方式如PGP等單位才是正確方式,

Reference from:

http://gmailblog.blogspot.com/2009/07/unsubscribing-made-easy.html

http://fromtw.blogspot.com/2008/09/dkim.html

http://www.dkim.org/index.html

http://www.thismail.org/bbs/viewthread.php?tid=2743

http://a-wei.net/archives/611

http://news.cnet.com/8301-27080_3-10293284-245.html