2.2.1 Timing Adjustable
When content has a time limit, users must be able to turn it off, adjust it or extend it, with a few narrow exceptions.
Level APrinciple 2: Operable
What does it mean?
Session timeouts, countdown timers on forms and automatic page redirects all set a time limit. Some people need much longer to read, type or understand. For every time limit you set, users must be able to turn it off before it starts, adjust it to at least ten times the default, or get a warning before it runs out and extend it with a simple action (such as pressing a key) at least ten times, with at least 20 seconds to respond.
Exceptions: real-time events where the limit is part of the activity (such as a live auction), limits that are essential and where extending would invalidate the activity (such as a timed exam), and time limits longer than 20 hours.
Who does it help?
- People who read slowly, including people with dyslexia or cognitive disabilities
- Screen reader and screen magnifier users, who often need more time to explore a page
- People with motor impairments who type slowly
- People who are interrupted and come back to the task later
Common failures
- A login session that ends after a short time without warning, discarding a half-filled form
- A meta refresh that redirects the page after a few seconds
- A booking or checkout timer that cannot be paused or extended
- A warning dialog that appears but gives less than 20 seconds to react
How we test it
- axe-core Automatic: axe-core finds typical violations. A violation is pre-filled as “fails”.
Test question: Time limits (session timeouts, auto-redirects) can be turned off, adjusted or extended.
A person decides every criterion. No criterion ever passes automatically.
How to fix it
<meta http-equiv="refresh" content="5; url=/next"><div role="alertdialog" aria-modal="true" aria-labelledby="t-title" aria-describedby="t-desc">
<h2 id="t-title">Your session will end soon</h2>
<p id="t-desc">You will be signed out in 2 minutes. Do you need more time?</p>
<button type="button" id="extend">Yes, give me more time</button>
</div>Instead of a silent timeout or redirect, users get a clear warning with enough time and one button to extend.
Practical tips
- Save form input so that a timeout does not destroy work.
- Replace automatic redirects with a link the user can follow when ready.
Guides and patterns on this
- Stop spam without stopping peopleA CAPTCHA is meant to stop bots and often stops people instead: those who are blind, have low vision, are hard of hearing or find puzzles hard. There are better ways to fight spam.
- Status messages that get through without stealing focusAnnounce messages via a live region, focus stays put.
Official source
How does your website do on this criterion?
The free check tests your home page automatically; the audit decides all 55 criteria.