Skip to main content
Tu navegador es demasiado antiguo para mostrar este sitio correctamente. Actualiza a la última versión de Chrome, Edge, Firefox o Safari.
Back to WCAG Database
Level AAAWCAG 2.0

3.2.5 Change on Request

Changes of context are initiated only by user request, or a mechanism is available to turn off such changes.

Last reviewed: September 9, 2026

Understanding 3.2.5

This is the strictest of the context-change criteria (alongside 3.2.1 and 3.2.2). It requires that any change of context (a new window, a focus shift, a navigation, an automatic content refresh) only happen when the user requests it, or that users have a way to disable such automatic changes altogether. This protects people with cognitive, attention, or vision disabilities from being disoriented by content that changes without their initiation.

How to Meet It

Eliminate automatic redirects, auto-refreshing content, and pop-ups triggered by timers. Where automatic updates are genuinely necessary, provide a user-facing setting that lets people turn off automatic context changes. Never open new windows or tabs without a clear, user-initiated action, and warn users in advance when a control will do so.

Code Examples

INCORRECT
<meta http-equiv="refresh" content="5;url=https://example.com/next-page">
<!-- Redirects automatically after 5 seconds with no user control -->
CORRECT
<p>Continue to <a href="https://example.com/next-page">the next page</a> when you're ready.</p>
<!-- The user decides when the change of context happens -->

Frequently Asked Questions

How is this different from 3.2.1 and 3.2.2?

3.2.1 (On Focus) and 3.2.2 (On Input) only prohibit context changes caused specifically by focusing or interacting with a control. 3.2.5 (AAA) goes further, prohibiting any unrequested change of context from any source, including timers and automatic updates, unless the user can turn it off.

Related Success Criteria

Quick Facts

  • Criterion3.2.5
  • LevelAAA
  • IntroducedWCAG 2.0

Automate Compliance

AccessiSight automatically scans and identifies 3.2.5 issues in your codebase.

Try Scanner Free