We're having complaints from user that emails are showing up in their spam folders. I've checked some of the headers but I can't get a straight answer as to what to check for and what they really mean. Is there a tool I can use to check our emails and possible fix them?
It's probably not your fault - and there's only a little you can sensibly do about it.
It would have been helpful if you'd provided an example
It's the service provider of the recipient who is deciding to classify the message as spam. But they will not usually reveal information about why your message has been classified as spam because:
There is stuff you can do so you appear less like a spammer:
When viewing the headers of the emails going to the spam folder, look for a line with "SCL: " in it. The SCL denotes what level (0-9) of spam the message is marked as when it enters the email server. Usually by default, messages with an SCL of 1-3 are sent to the Junk Mail / Spam folder... If you are in a Microsoft Exchange environment, this filtering threshold can be changed through the Exchange Management Console on the server.