WCAG 2.3.1 Three Flashes or Below Threshold — Testing Guide for Mobile & Web Apps

WCAG 2.3.1, "Three Flashes or Below Threshold," is a crucial Web Content Accessibility Guideline that addresses the risk of photosensitive seizures. This guideline aims to prevent users with photosens

February 26, 2026 · 5 min read · WCAG Guides

Ensuring Your Application is Safe for Photosensitive Users: A Practical Guide to WCAG 2.3.1

WCAG 2.3.1, "Three Flashes or Below Threshold," is a crucial Web Content Accessibility Guideline that addresses the risk of photosensitive seizures. This guideline aims to prevent users with photosensitive epilepsy from experiencing seizures triggered by flashing content.

What WCAG 2.3.1 Requires

In straightforward terms, WCAG 2.3.1 mandates that no part of your application's content should flash more than three times within any one-second period. This applies to any flashing content, regardless of its brightness or color. The intent is to eliminate the risk of triggering seizures, which can be debilitating and dangerous.

Why This Matters: Impact on Users and Compliance

Photosensitive epilepsy affects a significant portion of the population, estimated to be around 1 in 4,000 individuals. For these users, flashing or rapidly changing visual content can induce seizures, ranging from mild to severe. This can lead to serious injury, loss of consciousness, and a profound inability to use digital products.

Beyond user well-being, compliance with WCAG 2.3.1 is often a legal requirement. In regions like the European Union, the European Accessibility Act (EAA) mandates that digital services meet accessibility standards, including WCAG. In the United States, the Americans with Disabilities Act (ADA) is frequently interpreted to include web accessibility, making WCAG compliance essential for avoiding legal challenges. Failing to address this criterion can alienate a substantial user base and expose your organization to litigation.

Common Violations and Examples

Violations of WCAG 2.3.1 typically arise from poorly implemented animations, video content, or even certain interactive elements.

Testing for WCAG 2.3.1 Compliance

Ensuring your application meets WCAG 2.3.1 requires a multi-faceted approach, combining manual checks with automated tools.

#### Manual Testing Steps

  1. Visual Inspection: Systematically review all dynamic visual elements in your application. This includes animations, videos, GIFs, and any interactive components that exhibit rapid visual changes.
  2. Timing Observation: For any identified flashing or rapidly changing content, observe its behavior over a one-second interval. A stopwatch or a screen recording tool can be helpful here. Count the number of flashes or distinct visual changes within that second.
  3. User Persona Simulation: Test with users who might be more sensitive. While you can't perfectly simulate photosensitive epilepsy, consider how a user with such a condition might experience the content. This is where persona-based testing becomes invaluable.

#### Automated Tools for WCAG 2.3.1

While manual inspection is essential for nuanced dynamic content, automated tools can quickly identify many potential violations.

#### Mobile-Specific Considerations (Android/iOS)

On mobile platforms, flashing content can originate from:

Thorough testing on actual devices is critical, as emulator behavior can sometimes differ.

Fixing WCAG 2.3.1 Violations

The primary fix for WCAG 2.3.1 violations is to modify the flashing content to adhere to the three-flash-per-second limit.

How SUSA (SUSATest) Checks for WCAG 2.3.1

SUSA's autonomous QA platform significantly streamlines the process of identifying WCAG 2.3.1 violations. By uploading your APK or web URL, SUSA's intelligent exploration engine, driven by multiple user personas, can uncover these issues.

By integrating SUSA into your CI/CD pipeline (e.g., via GitHub Actions or its CLI tool), you can ensure that your application remains compliant with WCAG 2.3.1 and provides a safe experience for all users.

Test Your App Autonomously

Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts.

Try SUSA Free