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.
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.=
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 (archive.org)
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.
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])