Skip to content
Tool No. 12 · Spam check

Email Spam Checker

Score a draft on the content signals that trip spam filters, from subject line shouting to mismatched links and a missing unsubscribe, and fix them before the campaign goes out.

Content heuristics only, scored in your browser. Nothing is sent anywhere. Authentication and sender reputation matter more than content: check those too.

Free, no signupRuns in your browserNothing stored

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.

Pro tip Run the HTML your platform actually sends, not the draft in the editor. Export or view the source of a test message so the tool sees the footer, tracking links and preheader exactly as recipients will.

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:

  1. Authentication. SPF, DKIM and DMARC on the sending domain, checked with the SPF checker, DKIM checker and DMARC checker.
  2. Reputation. Blocklist status and the history of the IP and domain; the blacklist checker covers the public lists.
  3. 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.
  4. Engagement. Opens, replies and clicks over time, which no tool can fake.
  5. 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.

FAQ

Email Spam Checker questions

Is this the same as a seed-list deliverability test?

No. A seed test sends your real message to inboxes at Gmail, Outlook and Yahoo and reports where it landed, which depends mostly on your sender reputation and authentication. This tool scores the content alone, in your browser, so you can fix the wording and structure before you spend a seed test or a send on it.

Do spam trigger words still matter in 2026?

Less than they did, and never on their own. Modern filters weigh sender reputation, authentication, engagement and complaint history far above vocabulary. A message from a trusted domain can say free in every sentence and arrive fine. Trigger phrases matter when they pile up alongside other weak signals: shouting, shortened links, no unsubscribe, an unknown sender.

Why does the checker flag my preheader as hidden text?

Preheader text is usually hidden with font-size:0 or display:none, and that is legitimate when it is a sentence or two. The tool flags hidden elements that contain text so you can confirm that is all there is. Hidden blocks of keywords or whole paragraphs are what filters treat as cloaking.

What score should I aim for?

A or B. A C means a few avoidable signals stack up; D or F means the message resembles the templates spam filters were trained on. The score is relative to content only, so an A does not guarantee the inbox if the sending domain has no DKIM or a complaint problem.

Does the checker see my images?

It counts them, checks for alt text and compares image count to word count, but it does not download or analyze the pictures themselves. Image-only emails are flagged because filters cannot read them and because they break when images are blocked.

Why does sending from a Gmail or Yahoo address score so badly?

Bulk mail with a free mailbox domain in the From address cannot be authenticated by your sending platform, so it fails DMARC alignment. Yahoo and AOL publish a reject policy, which means mailbox providers refuse the message outright. Use a domain you control and authenticate it.

Free · no signup

Check your domain before you hit send.

Run the full check: SPF, DKIM, DMARC, 15+ blocklists, MX, reverse DNS and infrastructure, scored A to F with a ranked list of fixes.