SpamAssassin score explained: what it means and how to lower it
What a SpamAssassin score is, how rules add and take away points, why 5.0 is the default spam line, and the fixes that lower your score.
A SpamAssassin score is the total number of points that Apache SpamAssassin, an open-source spam filter, gives an email. Each rule the message matches adds points, and some rules take points away. If the total reaches the spam threshold, 5.0 by default, the message is marked as spam. A lower score is better.
What is SpamAssassin?
Apache SpamAssassin is a free, open-source spam filter from the Apache Software Foundation. It runs on mail servers, so the people who see its result are usually the recipients and the admins of that server, not the sender. Many hosting companies and businesses that run their own mail use it. Large mailbox providers such as Gmail and Outlook use their own filters, so a SpamAssassin score is one opinion about your email, not the final word on where it lands.
How the SpamAssassin score works
SpamAssassin checks each incoming message against a large set of rules. A rule can look at the headers, the text of the body, the links, or network data such as public DNS blocklists. Each rule has a score. When a rule matches, its score is added to the total.
- Positive scores come from rules that match things spam often does, such as a sender on a blocklist or a body that is HTML only.
- Negative scores come from rules that match things normal mail does. A negative total is possible and means the message looks very clean.
- The threshold is the line between "not spam" and "spam". The default is 5.0. A message that scores 5.0 or more is marked as spam.
The server's admin can change both the threshold and the score of any rule, and the rules are updated over time. So the same email can get a different score on two servers, or on the same server a month later.
How to read a SpamAssassin result
A server that runs SpamAssassin usually adds its verdict to the email's headers. Open the raw message (in Gmail, the three-dot menu and Show original) and look for a line that starts with X-Spam-Status. It looks something like this example:
X-Spam-Status: No, score=1.2 required=5.0 tests=HTML_MESSAGE, ..."No" is the verdict, "score" is your total, "required" is the server's threshold, and "tests" lists the rules that matched. The rule names tell you what to fix. Look them up on the SpamAssassin site if a name is unclear.
The only number SpamAssassin itself defines is the threshold. Aim to stay well below it, because a strict server may set its threshold lower than 5.0.
Common causes of a high SpamAssassin score
- Missing or failing authentication. No SPF record, no DKIM signature, or a signature that does not verify.
- Blocklists. Your sending IP address, or a domain in your links, is listed on a public DNS blocklist.
- HTML-only email. A message with an HTML part and no plain-text version is a long-standing sign of bulk mail.
- Broken headers. For example a missing or malformed Date header.
- Spammy writing. Salesy phrases, a subject in capital letters, many exclamation marks or money symbols.
- Images instead of text. An email that is mostly one big image with very little text.
How to lower your SpamAssassin score
Fix the rules that matched, starting with the ones with the highest scores. Most fixes fall into three groups.
1. Authenticate your domain
Publish one SPF record that lists every service that sends your mail, sign your mail with DKIM, and add a DMARC record. The free SPF record generator and DMARC record generator help you write the records, and the SPF checker and DKIM checker confirm what is live. The domain email health checker checks SPF, DKIM, DMARC, MX and public blocklists together.
2. Get off blocklists
Run the email blocklist checker on your domain and mail host. If you are listed, fix the cause first (for example a hacked account or a bad list), then follow the blocklist's own removal steps.
3. Clean up the message
- Send a plain-text part along with your HTML. The HTML email to plain text converter gives you a text version to start from.
- Write like a person, not an ad. The free email spam checker flags common writing signals such as salesy words, shouting, too many links and image-only emails. It runs its own content checks; it does not calculate a SpamAssassin score.
- Keep text around your images, and use one clear link instead of many.
To see how a receiving server judged SPF, DKIM and DMARC for a real message, paste its raw headers into the email header analyzer. It reads the Authentication-Results line the receiving server added.
A low score is not the whole story
A clean SpamAssassin result means your email avoids many known red flags. It does not promise the inbox. Gmail, Outlook and other providers also weigh your sender reputation, how much you send, and how recipients react: replies help, spam reports hurt. Only email people who expect to hear from you, make it easy to opt out, and keep your volume steady.