views:

407

answers:

3

I'm implementing a email newsletter sender service using .NET and Windows Server technologies. Are there comprehensive guidelines which could help avoiding emails being trapped by spam filters and other mechanisms?

They should cover all aspects of (legal) bulk mail sending: SMTP configuration, DNS, HTML content, images, links within content etc. A simple example: is it better to embed images or load them from a server?

It would be great if you could provide some empirical data to show the efficiency of some measures taken.

+2  A: 

Although I don't have a definitive answer, I think this is a very important question. Here are few tidbits I know about it

  1. Choose a clean hosting/smtp server. IP addresses of spamming SMTP servers are often black-listed by other ISPs.
  2. Send a simple introductory email to every subscriber, asking them to add your sender address to their safe list.
  3. Be very prudent in sending to only those people who are actually expecting it. You wouldn't want pattern recognizers of spam filters learning the smell of your content.
  4. If you don't know your smtp servers in advance, its a good practice to provide configuration options in your application for controlling batch sizes and delay between batches. Some servers don't like large batches or continuous activity.
Tahir Akhtar
+1  A: 

Unless you have a very specific reason to host the newsletter yourself, I think you'd be much better off using a third party service. There are lots out there, and some are very cheaply priced.

  1. It'll save you on development work (no point in re-inventing the wheel).

  2. Their system will handle all the unsubscribe link stuff that you need to include in email newsletters to comply with CAN SPAM laws or whatever.

  3. They handle the spam reports that you will inevitably get if you have a list of any non-trivial size. They keep records of who signed up, how they signed up, and their IP address, and can present those on receipt of a spam report to prove that their service wasn't sending out spam.

  4. You can use double-opt in (or confirmed opt in), for extra evidence to prove that the people you're sending emails to actually signed up to receive them.

If you really do need to host it yourself I'd suggest you search the web for "email deliverability". Things that are known to help include properly set up SPF records, DomainKeys/DKIM, correct DNS settings (reverse DNS especially - best to just use an online service to check your DNS settings). You can test a lot of these things by sending an email to [email protected].

It's best to avoid using spammy words in your email - always a bit of guesswork this but you some words can trip filters.

But I'd guess that by far the most important thing is to be sending your email from a trusted server that maintains good relationships with ISPs (i.e. ensuring that ISPs don't think that the server is sending out spam). This is a big reason why it's much much easier to get a third party to handle everything for you.

MB
A: 

This is a duplicate of How do you make sure email you send programmatically is not automatically marked as spam?.

Jim
There is certainly useful and relevant advice in the thread you point to, but newsletter sending (thousands of emails sent at once) is different to sending automated licence-key-on-sale type emails. For example, opt-in and opt-out mechanisms are highly relevant to the former, but not to the latter.
MB