I had a bad time today trying to figure out why emails sent from my server kept ending up in people's SPAM folders. Yahoo's mail servers wouldn't even deliver my emails to my wife, not even to her SPAM folder.
And what was confusing is that my IP addresses that I was sending from weren't on any blacklists and nothing about the messages I was sending could be construed as spam.
Later I took a look at some of the headers of some of my emails that landed in the SPAM folder of a gmail account and I noticed that my problem seemed to be that the IP address that I was sending from wasn't listed as a permitted sender in any SPF record for my domain.
Well, to make a long story short, I got myself an education in SPF records. No I don't know how to create SPF records, but I found the next (or first) best thing. I found a free SPF generator that will ask you some questions and from the information you provide, you'll get a genuine SPF record that you can add to your DNS records, thus permitting the sending of email from your domain such that it won't get lost in the anti-spam mechanisms of the big popular email providers like Yahoo!, GMail, and Hotmail.
So here it is. I used the free SPF generator provided by Microsoft at www.microsoft.com/mscorp/safety/content/technologies/senderid/wizard/
There you'll find an easy 4 step SPF wizard and also a brief primer on SPF with a nice little chart to explain how SPF works.
There's also another SPF record wizard at www.openspf.org which I haven't tried yet.
There are still some other things I need to learn in order to get my mail delivered. I noticed that since I've added SPF records, my mail is getting through Yahoo!'s mail service, but it's going to SPAM. Maybe domain keys are the next step. I'm looking for an overall tutorial or primer that will show me everything I need to know about preparing a domain for sending email successfully.
edit: looks like I found a good primer on keeping email out of the spam folder at blog.sendgrid.com/10-tips-to-keep-email-out-of-the-spam-folder/ Of course, their ultimate message is that you should use their email sending service, but they do mention the DNS adjustments you would need to make if using your own server.