Operable · 2.3 Seizures and Physical Reactions

Three Flashes or Below Threshold WCAG 2.3.1 · Level A

Nothing on a page may flash more than three times in any one-second period, unless the flashing stays below the general flash and red flash thresholds, which depend on the flashing area, the size of the luminance change and whether saturated red is involved.

Level
A
Since
WCAG 2.0
Principle
Operable
Guideline
2.3 Seizures and Physical Reactions

Live demo

Measure a flashing sale badge

The same task, done two ways: switch between the version that passes and the one that fails, or put them side by side. Everything in the box is live, so try it with a keyboard, a pointer or a screen reader.

Compare the one-second strips for both versions. Nothing here flashes: each strip is a still chart of what the badge would do.

Live example

Passes

Flash sale badge

A sale badge about 100 by 60 pixels switches between saturated red and black five times a second.

Viewed at 1024 by 768, it covers about 7 percent of a 10 degree field of vision.

What happened

    Why it passes

    The badge still flashes five times a second, but it covers only about 7 percent of a 10 degree field, under the 25 percent limit, so it stays below both thresholds. Slowing it to three flashes a second or fewer would be safer still.

    Why it fails

    Five saturated red flashes a second over about a third of a 10 degree field cross both the general and the red flash thresholds, which can trigger a seizure.

    Examples

    Code that fails, and the fix

    Three examples, each one running: the usual ways this criterion fails, and code that passes. Listen to them, measure them, or copy the code.

    01What changes 1 line

    Fails

    Red sale banner flashing five times a second

    Live preview

    CSS
    .sale-banner {  min-height: 40vh;  background: #ff0000;  animation: sale-flash 0.2s infinite;}@keyframes sale-flash {  0%, 49% { background: #ff0000; }  50%, 100% { background: #000000; }}

    Each 0.2 second cycle is one flash, so this large banner flashes five times a second in saturated red. That crosses both the general and the red flash thresholds.

    Passes

    Flash once a second, then stop

    Live preview

    CSS
    .sale-banner {  min-height: 40vh;  background: #ff0000;  animation: sale-flash 1s 3;}@keyframes sale-flash {  0%, 49% { background: #ff0000; }  50%, 100% { background: #000000; }}

    One flash a second, stopping after three, stays within the three-flash limit at any size and in any color (technique G19).

    Passes

    Small flashing dot below the threshold

    Live preview

    CSS
    /* 16 by 16 pixels; a 10 degree field is about 341 by 256 pixels at 1024 by 768 */.live-dot {  width: 16px;  height: 16px;  border-radius: 50%;  animation: live-blink 0.25s 8;}@keyframes live-blink {  0%, 49% { background: #ffffff; }  50%, 100% { background: #1f2937; }}

    Four flashes a second is more than three, but the dot covers well under 25 percent of any 10 degree field, so it stays below the general flash threshold (technique G176). It would still fail 2.3.2.

    Why it matters

    Who it helps

    Flashing can trigger seizures in people with photosensitive epilepsy, and large, bright or saturated red flashes carry the greatest risk. A seizure can occur before the user has any chance to look away.

    W3C: Understanding 2.3.1
    • Level A

      Level A is the minimum: failing it can shut some people out completely.

    • In WCAG versions

      Part of WCAG 2.0 since December 2008, and of every version after it.

      WCAG 1.0 checkpoints: 7.1

    • Where it is required

      Required where the law names WCAG 2.0 or later at this level: the United States, Canada, the European Union, the United Kingdom, France, Germany, Italy, Spain, the Netherlands, Ireland, Norway, Switzerland, India, Japan, Australia, New Zealand and Israel.

    How to test

    Checking it

    A few concrete steps. Automated tools find some failures; most need a person.

    1. Find all content that flashes or strobes, including videos, animated images and animations.
    2. Count the flashes in any one-second period; three or fewer passes regardless of size or color.
    3. If there are more, confirm the flashing area is below 25 percent of any 10 degree visual field, roughly 341 by 256 pixels at 1024 by 768, or use a tool such as PEAT.

    Common failures

    Where it breaks

    • A video or animated image contains strobe or lightning effects that flash more than three times a second across a large part of the screen.
    • An attention-grabbing banner covering much of the screen alternates between saturated red and black more than three times a second.

    On the Accessibility Checklist