Accessibility · Email

Email accessibility checker.

Paste the HTML of an email and get a rule-by-rule list of accessibility problems: missing lang, missing alt text, layout tables without role="presentation", vague links, low inline colour contrast, tiny text and skipped headings. Optionally paste the List-Unsubscribe headers to check them against RFC 8058. Nothing leaves your browser.

Advertisement

Input

Paste the full document for the best result. Header lines are optional and only used for the RFC 8058 check.
Your own threshold. WCAG sets no minimum text size, so this is advisory.

Result

Paste email HTML and press Check email.

The rules, with sources

How contrast is calculated

Each sRGB channel is divided by 255, then linearised: values at or below 0.04045 are divided by 12.92, others become ((c + 0.055) / 1.055)2.4. Relative luminance is L = 0.2126 R + 0.7152 G + 0.0722 B. The ratio is (L1 + 0.05) / (L2 + 0.05) with L1 the lighter colour. Source: WCAG 2.2, definition of relative luminance and contrast ratio, checked 2026-09-30.

Worked example

Load the example. It has no lang, an image with no alt, a "Click here" link, a layout table with no role, grey #999999 text on white and an h1 followed by an h3. The grey text is 2.85:1, below the 4.5:1 needed for normal text. Changing it to #767676 gives 4.54:1 and passes.

What this tool does not check

It reads inline style attributes, bgcolor and font color only. It does not apply <style> block rules, media queries, dark-mode inversion, background images, gradients or how a given email client renders the message. Colours it cannot resolve (rgba, hsl, default link colours) are skipped and counted, not guessed. It cannot see DKIM signatures, reading order, colour-only meaning, image content or the quality of your alt text. A clean result is not a full WCAG conformance claim; test with a screen reader and in real clients as well.

Frequently asked questions

Does the email have to meet WCAG?

WCAG is a web standard, but its success criteria are the usual yardstick for accessible HTML email. Whether a law requires it depends on your jurisdiction and audience; this tool does not give legal advice.

Why do layout tables need role="presentation"?

Without it, a screen reader may announce table, row and column structure for a layout grid, which adds noise. The role removes that table semantics so the content reads in order.

Is there a minimum font size in WCAG?

No. WCAG 2.2 sets contrast and resizing requirements but no minimum point size, so the font-size result here is a setting you control, not a standard.

Where do the List-Unsubscribe headers go?

They are message headers set by your sending platform, not part of the HTML. Paste them above the HTML if you want their shape checked. A pass here does not confirm the DKIM signature RFC 8058 also requires.

Rule-based scan, not an audit

This tool applies a fixed set of checks to the markup you paste. It does not render the email, so a clean result is not proof of WCAG conformance and a finding may be a false positive. Sources: WCAG 2.2 (W3C) and RFC 8058 (IETF), checked 2026-09-30.

Advertisement
Listening…