Back to Blog

The Deterministic Case for Email Accessibility

TechnicalBy Fabio BiocchettiPublished Updated 4 min read

Email accessibility is not a vibe. It is a set of measurable, deterministic rules defined in WCAG 2.1, WCAG 2.2, and the European Accessibility Act. Yet most audit tools treat it like a creative exercise.

The Problem with Non-Deterministic Audits

Most accessibility checkers fall into two camps. The first uses heuristics: weighted warnings, confidence scores, detection logic tuned to be helpful rather than correct. The second, increasingly common, sends your HTML to a large language model and asks it what looks wrong. Both can produce useful hints. Neither produces a compliance report.

We ran into this firsthand while building AccessiMail. Feed the same template to an LLM-based checker five times and you get five overlapping but different lists of issues. One run flags a contrast problem. The next run misses it and reports a missing alt text that is not actually missing. Now Legal asks for evidence of compliance. Which of the five reports do you file?

“If your compliance report produces different results each time you run it on the same email, it is not a compliance report. It is a guess.”

There is a quieter cost too. When a tool cries wolf differently on every run, developers stop trusting it. The warnings get ignored, the check gets dropped from the workflow, and the real accessibility bugs ship anyway. An unreliable audit is worse than no audit, because it produces the feeling of coverage without the substance.

How Deterministic Auditing Works

The alternative is boring, in the best sense of the word. WCAG success criteria are rules. Rules can be encoded, and encoded rules can be checked mechanically, the same way a compiler checks syntax: nobody wants a compiler that accepts a file on Tuesday and rejects it on Wednesday.

A deterministic audit engine:

  1. Parses the email HTML into a structured syntax tree
  2. Applies rules mapped directly to WCAG success criteria
  3. Returns binary results, pass or fail, for each rule, every single time

No hallucinations. No randomness. No two runs producing different outputs on the same input.

What about edge cases?

Some checks genuinely require human judgment. A rules engine can verify that an image has an alt attribute, and it can flag obvious junk like a file name used as a description. It cannot tell you whether a grammatically correct alt text actually describes the image. We do not pretend otherwise. Where a criterion needs human eyes, AccessiMail says so explicitly and marks it for manual review instead of guessing. That honesty is what keeps the automated part of the report trustworthy.

What This Means for Your Team

When your compliance report is deterministic, it becomes:

  • Reproducible: developers can verify fixes locally before pushing
  • Auditable: legal and compliance teams can rely on the output in court
  • Automatable: CI/CD pipelines can gate sends on accessibility score

This stopped being theoretical in June 2025, when the European Accessibility Act came into force. If your emails reach EU customers, accessibility is now a legal requirement, not a nice-to-have, and at some point someone may ask you to prove compliance after the fact. A deterministic report generated today will say exactly the same thing when you regenerate it months later. That is the property an auditor cares about.

Day to day, the audit stops being a quarterly scramble and becomes a routine gate: fix the template until the report is green, then send.

The AccessiMail Approach

AccessiMail was built from the ground up on this principle. Every check maps to a specific WCAG 2.1, WCAG 2.2, or EAA criterion. The engine is fully deterministic: given the same HTML input, you will always receive the same report.

If you want to check that claim, audit one of your templates at app.accessimail.com, then run the same audit again. The two reports will match, line for line. That is the whole product.

Put your accessibility on autopilot.

Run your first audit free — no credit card required.

Start Free Audit