The EAA and UI motion: what actually applies
The European Accessibility Act raises the expected accessibility baseline for digital products in the EU, but it does not name individual techniques. Its requirements apply from 28 June 2025 (Directive (EU) 2019/882). For UI motion that means there is no separate animation rulebook to look up: the practical question is which WCAG success criteria your motion can actually be checked against. For motion, the machine-checkable success criterion is WCAG 2.2.2 (Pause, Stop, Hide — Level A) — an infinite loop a user can't pause is a WCAG 2.2.2 Level A failure, the kind an audit or a complaint can point straight at.
This guide maps that one sentence onto practice: the criterion you can test by machine, the best-practice track next to it, what "evidence" can honestly mean, and what the measured base rate looks like. It is an engineering view, not a legal compliance verdict.
Which WCAG criterion is machine-checkable for motion?
For UI motion, the machine-checkable success criterion is WCAG 2.2.2 (Pause, Stop, Hide — Level A). The failing pattern is concrete: moving content that starts automatically, lasts more than five seconds, runs alongside other content, and offers no way to pause, stop, or hide it. An infinite CSS loop with no pause path is the most common web form of that pattern, and a static scan can find it. The full breakdown — what falls under the criterion, what is exempt, and the three fixes — is in our explainer on WCAG 2.2.2 (Pause, Stop, Hide).
Next to it runs a second rail: WCAG 2.3.3 (Animation from Interactions) is a best-practice gap, not an A/AA failure. This is where the prefers-reduced-motion guard lives — honouring the operating-system setting that asks for less motion. We report the two tracks separately and never blur them: 2.2.2 is the Level A item; 2.3.3 is best practice. The distinction is spelled out in our guide to WCAG 2.3.3 (Animation from Interactions).
What does "evidence" mean — and why not "compliance"?
Evidence here means a dated, WCAG-cited record that specific motion criteria were checked — detection, not conformance. No tool can make a product EAA- or WCAG-compliant, and the EAA does not hand out a "motion certificate" you can buy. A scan can prove that a failing pattern is present and show the fix; it cannot certify a page, because overall conformance depends on the whole product and on judgments no static check can make. That is why every MotionSpec report states its date, sample and scope — the evidence is exactly as strong as what we measured, no more. How the free check draws that line is documented at how the check works.
How big is the gap in practice?
Across 196 AI-generated production apps we measured in July 2026 and re-measured with our September 2026 method (192 still online), 65.1% of 186 measurable apps ran at least one loop with no way to pause it — the WCAG 2.2.2 (Level A) pattern. 96.8% shipped motion with no reduced-motion guard — a WCAG 2.3.3 best-practice gap, not an A/AA failure. The median measurable app carried 13 distinct motion root causes, and only 2 of 186 measurable apps — 1.1% — came back clean. The scan reads linked CSS and style blocks only, so every number is a lower bound. Method and raw data are published in The State of Motion in AI-Generated UIs, so the result can be checked without our tooling.
What should you do next?
The practical first step is to find out what your motion does today; the second is to decide what record of it you need. If you ship code, paste a URL into the free motion check — a static scan against WCAG 2.2.2 and 2.3.3, every finding with its fix — or wire the MotionSpec MCP into your generation loop so the guard and the pause path are present by construction. If you need dated, citable evidence for a due-diligence file, the enterprise page explains the report and its limits: MotionSpec for enterprise. If your platform generates web UI at scale, the exposure travels with the output — the platform route is at MotionSpec for platforms.
Flashing is a separate criterion: WCAG 2.3.1 (Three Flashes or Below Threshold, Level A). MotionSpec’s scan does not check flashing. In EU accessibility work the usual technical reference is the European standard EN 301 549, which incorporates WCAG 2.1 Level AA.
Sources: Directive (EU) 2019/882 (European Accessibility Act) on EUR-Lex · W3C Understanding WCAG 2.2.2 Pause, Stop, Hide, 2.3.3 Animation from Interactions and 2.3.1 Three Flashes or Below Threshold.
FAQ
Does MotionSpec make us EAA-compliant?
No — and no tool can. MotionSpec gives you dated, WCAG-2.2.2 / 2.3.3-cited evidence that your product's motion was checked and, where you act on it, fixed. That is an engineering evidence artifact for your due-diligence file, not a legal compliance verdict. Overall EAA conformance depends on your whole product and your legal situation.
Does the EAA name specific animation techniques?
No. The European Accessibility Act raises the expected accessibility baseline for digital products in the EU, but it does not name individual techniques. For UI motion, the machine-checkable success criterion is WCAG 2.2.2 (Pause, Stop, Hide — Level A); WCAG 2.3.3 (Animation from Interactions) is a best-practice gap, not an A/AA failure.
Is a prefers-reduced-motion guard required by the EAA?
The EAA does not name individual techniques, so we don't claim any single CSS pattern is legally required. A prefers-reduced-motion guard maps to WCAG 2.3.3 (Animation from Interactions) — a best-practice gap, not an A/AA failure. It is still worth shipping: 96.8% of the 186 measurable apps among the 196 AI-built apps we re-measured with our September 2026 method had no such guard.
How common is unpausable motion in AI-generated apps?
In our static scan of 196 AI-generated production apps — July 2026, re-measured with the September 2026 method (192 still online) — 65.1% of 186 measurable apps ran at least one infinite animation with no way to pause it — the WCAG 2.2.2 (Level A) pattern. Only 2 of 186 measurable apps — 1.1% — came back clean, and the median measurable app carried 13 distinct motion root causes. The scan reads linked CSS and style blocks only, so the numbers are a lower bound.
Paste a URL into the free motion check — a static scan against WCAG 2.2.2 and 2.3.3, every finding with its fix. No signup, nothing stored.
Check a page for freeOne page tells you. A dated write‑up is what you hand to a client or a boss: the $29 Motion Report cites every candidate to WCAG 2.2.2 / 2.3.3 and ranks your score against 196 AI‑built pages — read a real one first. Fourteen‑day refund, no questions asked.
Generating web UI at scale? See the Design Partner Program.
MotionSpec checks and compiles UI animation for AI-generated web apps — it does not generate AI video.