Skip to post content
3 min readDaniel Kosbab

The cognitive accessibility nobody talks about

WCAG has about two dozen success criteria at level AA. Two of them are explicitly about cognitive load. Neither is well-implemented on most sites.

The population cognitive accessibility serves includes ADHD, dyslexia, memory loss, anxiety, chronic fatigue, brain fog from post-viral syndromes, and aging-related decline. Somewhere between 15 and 25 percent of users, depending on how you count. It is the largest disability population. It has the thinnest guidance.

Why the guidance is thin

WCAG emerged from a disability rights movement rooted in perceptual and motor disabilities. Blindness. Deafness. Low vision. Motor impairment. These are axes where the measurements are clean. Contrast is a number. Keyboard reachability is binary. Screen reader output is deterministic.

Cognitive disabilities are not like this. The same interface can overwhelm one user with ADHD and be fine for another. The affected functions (attention, working memory, reading fluency) are dimensional, not binary. They interact with stress, sleep, and time of day in ways the other axes do not.

Industry responded by either over-specifying ("use a seventh-grade reading level") or under-specifying ("keep content simple"). Neither is useful.

What actually helps

Principles that hold up across the cognitive accessibility literature.

  • Reduce what has to be held in working memory. Multi-step forms save progress. Long flows recap what's been done. Key information stays on screen rather than requiring a scroll-up. Codes and numbers are reshown where they're used, not asked to be remembered.
  • One thing at a time. A page that presents everything at once is unusable for someone with ADHD. A page that walks the user through one decision at a time is usable by almost everyone.
  • Let the user control pace. No autoplay. No auto-advance. No content appearing and disappearing on a timer. If the user needs fifteen seconds to read a line, they should have fifteen seconds.
  • Make undo cheap and visible. Every interaction that commits something should be reversible. The reverse option should be as obvious as the original action. Not behind a "settings" menu three clicks deep.
  • Don't punish re-reading. A user who re-reads a sentence four times is not inefficient. They are using the site. Nothing in the UI should change while they're doing this.
  • Language that doesn't require inference. "Click here to continue" beats "proceed." Direct instructions beat hints. Honest labels beat clever ones.
  • Persistent orientation. The user should always be able to answer: what am I doing, where am I in the flow, and what's next. Breadcrumbs and step indicators are old patterns for good reasons.

What doesn't help

  • Readability scores. Flesch-Kincaid does not capture whether a sentence requires holding three variables in working memory. Plain text can be cognitively hard. Structured text with clear reference points can be cognitively easy.
  • "Simple language." A patronizing tone is not accessibility. Treating adult users as children is worse than a hard sentence.
  • Icons without labels. Most users can read. Cognitive-accessibility users still need the label, because recalling what an icon means is exactly the kind of task they are trying to offload.
  • Tutorials and tooltips. A well-designed UI doesn't need them. If you need to teach the user what your button does, the button is wrong.

Why this axis matters so much

Every human has cognitive limits. Every user is in some state of load, tiredness, distraction. Designing for the user who arrives tired on a Tuesday evening after work is the same design problem as designing for the user with ADHD.

The accessibility framing makes this explicit. The usability framing makes it invisible.

The usability framing is why most sites fail this axis. The accessibility framing is the path to fixing it. Build for the Tuesday-evening-tired user, and you build for the largest disability population at the same time.

© 2026 Daniel Kosbab

Built with love and Tailwind CSS