Community & Support

How to prevent email sent from drupal from going into spam box?

Email sent to my member end up in their spam box. How do I correct this. I use mass contact module and invite module. Thanks.

Comments

If there was a 100% way to do

If there was a 100% way to do this, don't you think the spammers would do it too?

In practice, things can be spam-binned for any number of reasons, many of which are rules controlled by te receiver not the sender.
So it would be the most help if you checked the rating produced by the system that decided it is spam. If you don't look at that data, you have to guess what the problem is.

The first thing to check is that the 'from' field in the email is really the server the email is coming from. A mismatch there is a common spam sign.

IMO, email is an alchemy all

IMO, email is an alchemy all it's own. The rules are always changing, and it takes a lot of work to keep up with what's going on and what will get your mails blocked.

What email address are you using? Are you just using the default mail send stuff in Drupal? You might want to check out the SMTP module -- sending it through a more trusted mail server might help. This can also help if your mails server IP address isn't the same as your web server IP address, which can send up warning flags in some cases.

Another thing to look for in your email is the way it's constructed -- email filters make decisions about whether an email is spam or not based on scoring things like the use of ALL CAPS or words like "free" or "viagra". ;) I'm not saying you're using any of those (I have no way of knowing) but you might take a hard look at what you're sending out.

Lastly, I don't know much about the mass contact module, but judging by the description on the project page, the module uses a method for sending a bunch of emails at once that is bound to get emails marked as spam -- the "bcc:" method is something that most mail filters will key off of as an indicator of spam. I'd recommend looking for a solution that will process individual emails to each recipient, rather than bulk mailing. And, if your list is big enough that it's prohibitive to do that, you might want to look at services like Constant Contact or Mailchimp. For both there are modules that help connect them to a drupal site.

www.drupaleverything.com :: my drupal blog

Three Tips

Here are three tips I use:

1. See if your domain is blacklisted:

http://www.mxtoolbox.com/blacklists.aspx

2. Set an SPF record in you DNS.

This is a TXT record which is sometimes checked by recipient mail servers. List all IP addresses linked to your domain/server. Make the rules as permissive as possible e.g.:

v=spf1 ip4:75.95.121.114 ip4:75.95.121.116 ip4:75.95.121.117 ip4:75.95.121.119 ~all

You can check the validity of your SPF record here:
http://www.kitterman.com/spf/validate.html

3. Microsoft --- UGH

For hotmail, live and msn accounts Microsoft implements its own checks. Once your SPF record is in place you can sign up for their Sender ID program here:

https://support.msn.com/eform.aspx?productKey=senderid&page=support_send...

While nothing guarantees that email sent from your server will be delivered all of these help. As Dan points out, the From field is probably the most important check. Look at the complete header of the email and make sure the From field matches the server. (This may be impossible to fix if you are on a shared account.) If you have multiple domains running on a single server, you may need to run multiple instances of your mail server so you have a Sendmail or Postfix running in the name of the website sending the mail.

---
Mark Borghese
http://borgheselegal.com

nobody click here