2
votes

According to the spam-test available at this link -- The automated, "Thank you for signing up" emails are going into the spam folder because :

SPAM: BODY: Message is 10% to 20% HTML obfuscation (-32)

However, I can't find anything that explains what that means -

I'm using SwiftMailer, and this is the relevant code that I use to set the headers / add the HTML part :

[...] $body_txt = strip_tags($body); $message = Swift_Message::newInstance();

$typeone = $message -> getHeaders() -> get('MIME-Version');
$typeone -> setValue('1.0');

$typetwo = $message -> getHeaders() -> get('Content-Type');
$typetwo -> setValue('text/html');
$typetwo -> setParameter('charset', 'utf-8');

$message -> setSubject($subject)
         -> setFrom(array("courier@".TRIMMED_DOMAIN => HUMAN_READABLE_URL))  
         -> setTo($to)
         -> setBody($body_txt)
         -> addPart($body, 'text/html');
$transport = Swift_SmtpTransport::newInstance(TRIMMED_URL, 25)
                -> setUsername("courier@".TRIMMMED_URL)
                -> setPassword(MAILER_PASSWORD); 
$mailer = Swift_Mailer::newInstance($transport);
$result = $mailer -> send($message);

And the email, itself, with lots of text omitted: (Perhaps we are using too much HTML?)

<!doctype html>
<html>
    <head>
        <title>Thank you for Joining [the website]</title>
    </head>
    <body>
        <div>
            <h1> Welcome!</h1>
            <p>
                Thank you for joining [our] community.
            </p>
            <h2>%s</h2><!-- this gets run through sprintf() and ultimately winds up being an <a> -->
            %s
            <p>
                Our goal is to connect you [ blah, blah, blah ]
            </p>
            <ul>
                <li>
                    [each of these contains a <strong> tag]
                </li>
                <li>[text omitted..] 
                </li>
                <li>
                </li>
                <li>
            </li>
                <li>
                </li>
            </ul>
            <p>
                    If you have any questions, comments, concerns, or suggestions,
 feel free to send us a message on our Contact Page.



            We sincerely appreciate your feedback.

                Constructive input from our community members helps us continually improve the [ ] experience.

                Thank you again for joining [our] community.


            </p>
            <p>
                Sincerely,
            </p>
            <p>
                <em>The [...] Team.</em>
            </p>

        </div>
    </body>
</html>

So if anyone can give me any insight at all on what is triggering this HTML obfuscation flag, then I would greatly appreciate it.

EDIT:


Also, I forgot to mention that viewing the email source shows a bunch of =09's :

=09=09=09=09We sincerely ap=
preciate your feedback.

=09=09=09=09Constructive input from our commun=
ity members helps us continually improve the[]experience.=
1
would have to see a whole actual emailuser557846
Uh, well, that's pretty much it, there... I figured the content was irrelevant to a flag that says "HTML Obfuscation" - But, I'll put more of the original text back in there... Although, I think the only keyword is "Free"rm-vanda
i call B.S on that checker, its overly sensitive so they can sell their crapuser557846
Remember that there is no one spam detection program, and that every mail server will have a different configuration.Andy Lester
Well, yeah, but that was the best place I could start. And while I thought we had crafted this to the best of "not-spam" standards - it seems kinda hopeless.rm-vanda

1 Answers

4
votes

Judging by the message you're getting they're just running it through SpamAssassin, which has an entry for that specific warning on their wiki page

and explains it to be because of

The message includes HTML with obfuscated text, such as unnecessary hex-encoding of ASCII characters. This is probably an attempt to avoid text-based filters

While I can't see any reason for that to be triggered by the part of your e-mail that you pasted, maybe there's something about it in the parts that were omitted? Hope this helps.

EDIT AFTER ORIGINAL POST WAS EDITED FOR ADDITIONAL INFO:

the =09 characters you're seeing represent tabs in ascii.

Generally speaking html emails are somewhat of a challenging beast by itself and most of the knowledge I could contribute are way outside the scope of this specific question, but to provide some general additional help, which i hope will be applicable to your situation:

for maximum compatibility always use the following header:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name="viewport" content="width=device-width" />

This is because some email clients and/or providers in their web interface will actually strip your doctype and replace them with the one you see above - this way you optimize for it. The meta tag in the head forces the encoding to utf-8 which is always helpful.

Try to not have any whitespace, at least, within your tags - as stated above the =09 you're seeing are due to the tabs you're using.

If you need a separation of paragraphs, close the </p> and open a new one.

For example:

<p>lorem ipsum whateverrrrrrrrr</p>
<br>
<p>another paragraph</p>

Don't try to simulate vertical spacing with whitespace, you'll run into tons of trouble. (Don't use <br> within <p>'s either to force a break unless you want gmail to make the following text purple [this is not a joke])