Spam filters read the message after they have judged the sender, and content is the part you can change ten minutes before a send. This checker scores a draft on the signals that filters and recipients react to: how the subject line is written, what the body says and how it is built, where the links go, and whether the message meets the legal and provider requirements for commercial email. It runs entirely in your browser.
What the checker looks at
Paste the subject line, the From address if you have it, and the body as plain text or as the HTML your template produces. The tool returns a score out of 100 with a letter grade and five panels:
Subject line. Length against mobile truncation, the share of capital letters, exclamation marks, fake RE: or FW: prefixes, emoji count and trigger phrases.
Content. Word count, image-to-text balance for HTML, trigger phrase density, capitalised words, exclamation density and generic greetings such as “Dear customer”.
Links. How many, to how many domains, shortened URLs, links to raw IP addresses, and the phishing pattern where the visible text shows one domain and the link goes to another.
Compliance and sender. An unsubscribe link or wording, a postal address, a display name, a monitored reply address, and whether the From domain is a free mailbox provider.
HTML. Total size against Gmail’s 102 KB clipping limit, scripts and event handlers, forms, hidden text, and images without alt text.
The score starts at 100 and loses points per signal, weighted by how strongly each one correlates with filtering. The panels list every check with a sentence on why it matters and what to change.
How to use the result
Fix the fails first; they are the deceptive patterns (mismatched links, raw IP links, hidden text, fake reply prefixes, a free mailbox From domain) that filters treat as near-certain spam regardless of everything else. Then work through the warnings in order of effort: a subject rewrite takes a minute, an image-heavy template takes an afternoon.
Once the content is clean, remember what the score cannot see. Run the sender reputation checker on the From domain for authentication and blocklist status, and read why emails go to spam for the reputation and list-quality causes that outweigh wording.
The signals, and why each one counts
| Signal | Why filters care |
|---|---|
| Shouting and exclamation marks | Over-represented in spam corpora; also lowers opens |
| Trigger phrases in quantity | One is noise; six in a message matches a learned pattern |
| Shortened URLs | Hide the destination and are heavily abused in phishing |
| Visible domain differs from link target | The core phishing technique; a strong negative in every filter |
| Image-only body | Nothing for the filter to read, breaks with images blocked |
| Hidden text with content | Cloaking: the oldest way to game text analysis |
| No unsubscribe | Breaks CAN-SPAM and the Gmail and Yahoo bulk sender rules |
| Free mailbox From domain | Cannot be authenticated for your platform; fails DMARC |
| Scripts, forms, iframes | Stripped by clients, flagged by filters |
| Over 102 KB of HTML | Gmail clips the message, hiding the footer and unsubscribe |
What a good marketing email looks like to a filter
A subject line under 60 characters that says what the email is. A body with real sentences, one clear call to action, links that go to your own domain or your platform’s tracking domain and nowhere surprising, images with alt text and a readable text version behind them. A footer with the sender’s postal address and an unsubscribe link that works in one click, matched by a List-Unsubscribe header the platform adds. Sent from a domain you own, with SPF, DKIM and DMARC in place.
Every reputable platform produces this by default if you use its templates and footer. The problems this checker catches usually come from custom HTML, from copy written for ads rather than inboxes, and from link shorteners pasted in out of habit.
Before the send: the rest of the checklist
Content is one of five things that decide placement. The others:
- Authentication. SPF, DKIM and DMARC on the sending domain, checked with the SPF checker, DKIM checker and DMARC checker.
- Reputation. Blocklist status and the history of the IP and domain; the blacklist checker covers the public lists.
- List quality. Bounces under 2% and complaints under 0.1%, which means verified addresses and a sunset policy; the list hygiene guide sets the rules.
- Engagement. Opens, replies and clicks over time, which no tool can fake.
- Content. This page.
Platforms such as SendPulse, Mailchimp and Brevo show a content check inside the editor as well; this tool is for the HTML you built elsewhere, for second opinions, and for teams whose platform does not have one.
Limits of a content score
The checker uses rules, not a trained filter, so it cannot tell you how Gmail will treat a specific message. It will not see your sending history, the reputation of the tracking domain your platform uses, or how recipients engaged with your last ten campaigns. It is a lint tool for copy and markup: cheap, instant and private, and best used before every send rather than after a campaign has already landed in spam.