• Success Criterion 2.2.1
  • Conformance level A

Re-Login Flow That Also Discards the User’s Entered Data

2.2.1 — Timing Adjustable

Scenario

Setting

A music streaming app's playlist screen

What’s wrong

Re-login loops that also discard entered data (compound with 2.2.5 AAA, but base timing fail here).

Example

setTimeout(() => logOut(), 60000); // no warning

Why it matters

People who read, type, or move slowly, including many screen-reader users.

How to test

Let a session time out mid-form: if re-login is required and the previously entered form data is also discarded, it fails.

How to fix

The time limit must be removable or adjustable (to at least 10x) before it starts, or extendable via a warning giving at least 20 seconds to respond with a simple action. setTimeout(() => showExtendSessionPrompt(), 55000); Users need a warning and a way to extend a time limit before it expires, unless the limit is essential (e.g. an auction).

Outcome

On a music streaming app's playlist screen, this barrier is gone for people who read — they reach the same outcome without extra effort.

Who is affected

People who read, type, or move slowly, including many screen-reader users.

Learn more