Loading…
Loading…
Avoiding flashing content and motion patterns that can trigger seizures or physical discomfort.
stellae.design
Seizure prevention in design ensures that web content doesn't trigger photosensitive seizures or other physical reactions. About 3% of people with epilepsy (roughly 1 in 4000 people) have photosensitive epilepsy, where flashing lights or patterns can trigger seizures that range from momentary disorientation to life-threatening events. WCAG 2.1 SC 2.3.1 (Three Flashes or Below Threshold, Level A) prohibits content that flashes more than three times per second unless the flash is below the general flash and red flash thresholds. SC 2.3.2 (Three Flashes, Level AAA) prohibits all flashing above three per second regardless of threshold. This is one of the most critical accessibility requirements because it directly prevents physical harm.
Seizure prevention in digital design addresses the medically documented risk that flashing or rapidly changing visual content can trigger photosensitive epileptic seizures in approximately 1 in 4,000 people — a condition that can cause loss of consciousness, physical injury, and in rare cases death, making this one of the few areas of digital accessibility where design decisions carry direct, immediate physical safety consequences. WCAG success criteria 2.3.1 (Three Flashes or Below Threshold) at Level A and 2.3.2 (Three Flashes) at Level AAA exist specifically to prevent this harm, and they are among the very few WCAG criteria that cannot be worked around with assistive technology — a screen reader cannot protect a photosensitive user from a flashing animation, so the only solution is to eliminate the hazard at the source. Beyond clinical photosensitive epilepsy, rapidly flashing content also causes migraines, nausea, disorientation, and discomfort in a much broader population including people with vestibular disorders, concussion recovery patients, and individuals with anxiety disorders — making seizure prevention a concern that affects far more users than the clinical seizure risk alone suggests.
A video streaming platform integrates the Photosensitive Epilepsy Analysis Tool (PEAT) into its content upload pipeline, automatically scanning every video for sequences that exceed the WCAG flash threshold before the content becomes publicly available — flagged videos are held for human review and either rejected or published with a photosensitive content warning and an automatic reduced-motion playback option. The platform also provides a user preference setting that applies a luminance-dampening filter to all video content, reducing flash contrast below dangerous thresholds without dramatically altering the viewing experience for users who need the protection. This proactive approach prevents seizure-inducing content from reaching vulnerable users rather than relying on user reports after the harm has already occurred.
A design system implements all animations within a motion-safe media query wrapper by default, so components render without animation for users with prefers-reduced-motion enabled, and provides a global AnimationController component that renders a persistent, keyboard-accessible pause button allowing users to halt all page animations instantly regardless of their OS settings. The design system documentation includes explicit guidelines for animation timing that prohibit flash rates above two per second with a safety margin, and the component review process includes automated tests that flag any animation with timing values that could approach the three-flash threshold. New components that include animation cannot pass design system review without demonstrating both the animated and reduced-motion experiences, ensuring that the reduced-motion version is a considered design rather than a broken state.
A brand launch website features a full-screen hero animation with rapid color transitions that flash between high-contrast states at approximately four to five times per second during a three-second intro sequence, with no skip button, no reduced-motion alternative, and no way to pause or dismiss the animation — the only option is to wait for it to complete or close the browser tab. The development team tested the animation on their own screens and found it visually exciting, but did not measure flash frequency against WCAG thresholds or consider that their test audience self-selected for people without photosensitive conditions. A user with photosensitive epilepsy experiences a seizure upon visiting the site, resulting in both a medical emergency and significant legal liability that could have been entirely prevented by measuring the animation against the three-flash threshold before launch.
• The most dangerous mistake is assuming that seizure prevention only applies to obviously strobing content like flashing warnings or nightclub-style animations, when in reality the threshold can be violated by subtle sources like auto-playing video with rapid scene cuts, animated loading spinners with high-contrast pulses, scrolling-triggered parallax effects that cause rapid luminance changes, or even large CSS transitions between light and dark states. Teams also frequently implement prefers-reduced-motion as a binary that either shows the full animation or shows nothing at all, which creates an accessibility penalty where users who need seizure protection receive a degraded, static experience rather than a thoughtfully designed alternative that conveys the same information without the hazardous motion. Another common error is failing to account for the area of the flash — WCAG's threshold considers both frequency and the size of the flashing area relative to the viewport, so a small flashing indicator may be safe while the same flash frequency applied to a full-screen element is dangerous, but teams often apply a single animation timing rule without considering the spatial dimension of the risk.
Was this article helpful?