Avoid Time Limits Unless Essential
Why It Matters
This is the strictest level regarding time limits, essentially stating that users should not be subject to time limits at all unless inherent to the activity itself. This provides the maximum possible time for users with disabilities who need longer to read, understand, and interact with content, removing the stress and potential failure caused by any form of timer.
Fixing the Issue
Remove all time limits from processes and interactions wherever possible. Design workflows, forms, and activities so users can complete them at their own pace. If a time limit seems necessary (e.g., for security), critically evaluate if it’s truly essential or if the risk can be mitigated in other ways (e.g., requiring re-authentication for sensitive actions instead of a full session timeout). Avoid timed quizzes or tests unless timing is fundamental to what’s being assessed; otherwise, allow untimed completion.
Good Code Example
A multi-step form without session timeouts:
-
<form action="/submit-application" method="post"> <fieldset>...</fieldset> <fieldset>...</fieldset> <fieldset>...</fieldset> <button type="submit">Submit Application</button> </form> <p>You can take as long as you need to complete this application.</p>
Bad Code Example
An online test with a strict, non-adjustable time limit per question:
-
<div id="question">What is the capital of France?</div> <div id="timer">Time remaining: <span id="time">30</span>s</div> <button onclick="submitAnswer()">Next Question</button> <script> let timeLeft = 30; const timerInterval = setInterval(() => { timeLeft--; document.getElementById('time').textContent = timeLeft; if (timeLeft <= 0) { // Force submit or mark as incorrect - no option to pause/extend clearInterval(timerInterval); // submitAnswer(true); // Indicate timeout } }, 1000); // Unless timing is essential to the skill being tested, this fails WCAG 2.2.3 </script>
