<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Usability on Smashing Magazine — For Web Designers And Developers</title><link>https://www.smashingmagazine.com/category/usability/index.xml</link><description>Recent content in Usability on Smashing Magazine — For Web Designers And Developers</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Sat, 30 May 2026 06:46:31 +0000</lastBuildDate><item><author>Eleanor Hecks</author><title>Session Timeouts: The Overlooked Accessibility Barrier In Authentication Design</title><link>https://www.smashingmagazine.com/2026/04/session-timeouts-accessibility-barrier-authentication-design/</link><pubDate>Mon, 20 Apr 2026 13:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2026/04/session-timeouts-accessibility-barrier-authentication-design/</guid><description>Poorly handled session timeouts are more than a technical inconvenience. They can become serious accessibility barriers that interrupt essential online tasks, especially for people with disabilities. Here is how to implement thoughtful session management that improves usability, reduces frustration, and helps create a more accessible and respectful web.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2026/04/session-timeouts-accessibility-barrier-authentication-design/" />
              <title>Session Timeouts: The Overlooked Accessibility Barrier In Authentication Design</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Session Timeouts: The Overlooked Accessibility Barrier In Authentication Design</h1>
                  
                    
                    <address>Eleanor Hecks</address>
                  
                  <time datetime="2026-04-20T13:00:00&#43;00:00" class="op-published">2026-04-20T13:00:00+00:00</time>
                  <time datetime="2026-04-20T13:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>For web professionals, session management is a balancing act between user experience, cybersecurity, and resource usage. For people with disabilities, it is more than that &mdash; it is a barrier to buying digital tickets, scrolling on social media, or applying for a loan online. <strong>Session timeout accessibility</strong> can be the difference between a bad day and a good day for those with disabilities.</p>

<p>For many, getting halfway through an important form only to be unceremoniously kicked back to the login screen is a common experience. Such incidents can lead to exasperation and even abandonment of the website entirely. With some backend work, web professionals can ensure no one has to experience this frustration.</p>

<h2 id="why-session-timeouts-disproportionately-affect-users-with-disabilities">Why Session Timeouts Disproportionately Affect Users With Disabilities</h2>

<p>A considerable portion of the global population has cognitive, motor, or vision impairments. Worldwide, <a href="https://designerly.com/mobile-app-accessibility-checklist/">around 1.3 billion people</a> have significant disabilities. Whether they possess motor, cognitive, or visual impairments, their disabilities affect their ability to interact with technology easily. They can all be disproportionately affected by session timeouts, making session timeout accessibility a critical issue.</p>

<p>Session timeouts are inaccessible for a large percentage of the population. An <a href="https://www.hanoversearch.com/blog/inclusive-recruitment-a-focus-on-neurodiverse-talent/.">estimated 20% of people are</a> neurodivergent, meaning timeout barriers don’t just affect a small subset of users &mdash; they impact a <strong>substantial portion of any website’s audience</strong>. As a result, some users may look inactive when they are not. <strong>Strict timeouts create undue pressure.</strong></p>

<h3 id="motor-impairments-and-slower-input-speeds">Motor Impairments and Slower Input Speeds</h3>

<p>For instance, someone with cerebral palsy tries to purchase tickets online for an upcoming concert. Due to coordination difficulties and muscle stiffness, they may enter their information more slowly than a non-disabled person would. They select the date, choose their seats, and fill out personal information. Before they can enter their credit card details, a timeout pop-up appears. They have been logged out due to “inactivity” and must restart the entire process.</p>

<p>This situation is not entirely hypothetical. Matthew Kayne is a disability rights advocate, broadcaster, and contributor to The European magazine. He describes the effort required to navigate websites as someone with cerebral palsy. He explains how the user interface <a href="https://the-european.eu/story-53902/this-one-digital-glitch-is-pushing-disabled-people-to-breaking-point.html">is often poorly designed</a> for adaptive devices, and he worries his equipment won’t respond correctly. After carefully navigating each page, he is suddenly logged out. In a moment, one timed form can erase hours of work, and it’s not just a matter of inconvenience. A single failed attempt can delay support or cause him to miss appointments.</p>

<p>Motor impairments can <strong>slow input speed</strong>, making it appear the user is not at their computer. As such, people who experience stiffness, hand tremors, coordination challenges, involuntary movements, or muscle weakness are disproportionately affected by session timeouts. According to the DWP Accessibility Manual, it <a href="https://accessibility-manual.dwp.gov.uk/tools-and-resources/basic-accessibility-checks/10-session-timeouts-impact-on-users">can take multiple attempts</a> for adaptive technology to register input, slowing users down considerably. Even if they receive a warning, they may not be able to act fast enough to prove they are still active.</p>

<h3 id="cognitive-impairments-and-processing-time">Cognitive Impairments and Processing Time</h3>

<p>Session timeouts can also create accessibility barriers for those with various types of cognitive differences. Strict timeouts can create undue pressure that assumes everyone processes information at the same speed. Users may appear inactive when they are actually reading, thinking, or processing.</p>

<p>Cognitive differences encompass a wide range of experiences, including neurodivergences like autism and ADHD, developmental disabilities like Down syndrome, and learning disabilities like dyslexia. Many people are born with cognitive differences. In fact, an <a href="https://www.hanoversearch.com/blog/inclusive-recruitment-a-focus-on-neurodiverse-talent/.">estimated 20% of people are</a> neurodivergent, making up a large portion of any website’s audience. Others acquire cognitive disabilities later in life through traumatic brain injury or conditions like dementia.</p>

<p>People with cognitive disabilities often need more time to complete online tasks &mdash; not because of any deficit, but because they process information differently. Design choices that work well for neurotypical users can create unnecessary obstacles for people with ADHD, dyslexia, autism, or memory-related conditions.</p>

<p>Invisible session timeouts are particularly problematic for people who experience memory loss, language processing differences, or <strong>time blindness</strong>. For example, neurodivergent technology leader Kate Carruthers says ADHD <a href="https://katecarruthers.com/life-with-adhd-time-blindness-or-why-i-lose-hours-not-just-my-keys/">has affected her perception</a> of time. She has time blindness and can’t reliably track how much time has passed, making estimates unhelpful.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aWhen%20websites%20depend%20on%20users%20estimating%20remaining%20time%20before%20a%20session%20expires,%20they%20quietly%20exclude%20people%20%e2%80%94%20not%20just%20those%20with%20formal%20ADHD%20diagnoses,%20but%20anyone%20who%20experiences%20time%20differently%20or%20processes%20information%20at%20a%20different%20pace.%0a&url=https://smashingmagazine.com%2f2026%2f04%2fsession-timeouts-accessibility-barrier-authentication-design%2f">
      
When websites depend on users estimating remaining time before a session expires, they quietly exclude people — not just those with formal ADHD diagnoses, but anyone who experiences time differently or processes information at a different pace.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<h3 id="vision-impairments-and-screen-reader-navigation-overhead">Vision Impairments and Screen Reader Navigation Overhead</h3>

<p>Since blind or low-vision users cannot visually scan a page to find what they need, they must listen to links, headings, and form fields, which is inherently <strong>more time-consuming</strong>. More than <a href="https://int.livhospital.com/complete-top-5-reasons-for-vision-loss-worldwide/">43 million people worldwide</a> are affected by blindness, while 295 million have moderate to severe vision impairment, which makes this a significant accessibility concern for any global-facing website.</p>

<p>As a result, these users’ sessions may expire even if they are active. <strong>Live timers and 30-second warnings do little to help</strong>, as they are not built with screen readers in mind.</p>

<p>Bogdan Cerovac, a web developer passionate about digital accessibility, experienced this firsthand. The countdown timer informed him how long he had left before being logged out due to inactivity. By all accounts, it worked fine. However, he describes the <a href="https://cerovac.com/a11y/2025/07/countdowns-and-timers-forgotten-detail-that-can-make-your-users-really-hate-your-product/">screen reader experience as horrible</a>, as it notified him of the remaining time every single second. He couldn’t navigate the page because he was spammed by constant status messages.</p>

<h2 id="common-timeout-patterns-that-fail-accessibility-requirements">Common Timeout Patterns That Fail Accessibility Requirements</h2>

<p>According to the National Institute of Standards and Technology, <a href="https://pages.nist.gov/800-63-4/sp800-63b/session/">session management is preferable</a> to continually preserving credentials, which would incentivize users to create authentication workarounds that could threaten security. However, several common timeout patterns fail to meet modern standards for session timeout accessibility.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/1-timeout-pattern-fail-accessibility.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="480"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/1-timeout-pattern-fail-accessibility.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/1-timeout-pattern-fail-accessibility.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/1-timeout-pattern-fail-accessibility.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/1-timeout-pattern-fail-accessibility.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/1-timeout-pattern-fail-accessibility.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/1-timeout-pattern-fail-accessibility.png"
			
			sizes="100vw"
			alt="A session expired window with a “Back to main page” button."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://github.com/alfio-event/alf.io/issues/903'>princekwame</a>. (<a href='https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/1-timeout-pattern-fail-accessibility.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="silent-timeouts-and-insufficient-warnings">Silent Timeouts and Insufficient Warnings</h3>

<p>Many websites either provide no warning before logging users out, or they display a brief, seconds-long pop-up that appears too late to be actionable. For users who navigate via screen reader, these warnings may not be announced in time. For those with motor impairments, a 30-second countdown may not provide enough time to respond.</p>

<p>Let’s consider the Consular Electronic Application Center’s DS-260 page, which is used to apply for or renew U.S. nonimmigrant visas. If an application <a href="https://travel.state.gov/content/travel/en/us-visas/visa-information-resources/forms/online-immigrant-visa-forms/ds-260-faqs.html">is idle for around 20 minutes</a>, it will log the user off without warning. The FAQ page only provides an approximate time estimate. Someone’s work only saves when they complete the page, so they may lose significant progress.</p>

<h3 id="nonextendable-sessions">Nonextendable Sessions</h3>

<p>An abrupt “session expired” message is frustrating even for individuals without disabilities. If there is no option to continue, users are forced to log back in and restart their work, wasting time and energy.</p>

<h3 id="form-data-loss-on-expiration">Form Data Loss on Expiration</h3>

<p>Unless the website automatically saves progress, visitors will lose everything when the session expires. For someone with disabilities, this does not simply waste time. It can make their day immeasurably harder. Imagine spending an hour on a service request, job application, or purchase order only for all progress to be completely erased with little to no warning.</p>

<h2 id="design-patterns-that-balance-security-and-accessibility">Design Patterns That Balance Security and Accessibility</h2>

<p>Inconsistent timeout periods and a lack of warnings lead to the sudden, unexpected loss of all unsaved work. For long, complex forms, like the DS-260, a poor user experience is extremely frustrating. In comparison, the United Kingdom’s application for pension credit is highly accessible. It warns users <a href="https://design-system.dwp.gov.uk/patterns/manage-a-session-timeout">at least two minutes</a> in advance and allows them to extend the session. It meets level AA of the WCAG 2.2 success criteria, indicating its accessibility.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/2-timeout-pattern-accessibility.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/2-timeout-pattern-accessibility.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/2-timeout-pattern-accessibility.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/2-timeout-pattern-accessibility.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/2-timeout-pattern-accessibility.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/2-timeout-pattern-accessibility.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/2-timeout-pattern-accessibility.png"
			
			sizes="100vw"
			alt="A tab session expired window with a refresh button."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://experienceleaguecommunities.adobe.com/adobe-workfront-23/pop-up-message-saying-session-has-expired-129862'>Experience League</a>. (<a href='https://files.smashing.media/articles/session-timeouts-accessibility-barrier-authentication-design/2-timeout-pattern-accessibility.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>People with disabilities are disproportionately affected by the unintended consequences of poor session management. Thankfully, session timeouts’ inaccessibility is not a matter of fact. With a few small changes, web professionals can significantly improve their website’s accessibility.</p>

<h3 id="advance-warning-systems-and-extend-functionality">Advance Warning Systems and Extend Functionality</h3>

<p>Websites should clearly state the time limit’s existence and duration before the session starts. For instance, if someone is filling out a bank form, the first page should exist solely to inform them that it has a 60-minute time limit. A live counter that updates regularly can help them track how much time remains. Also, users should be told whether they can adjust the session timeout length.</p>

<h3 id="activity-based-vs-absolute-timeouts">Activity-Based vs. Absolute Timeouts</h3>

<p>An activity-based timeout logs users out due to inactivity, while an absolute timeout logs them out regardless of activity. For an office, a 24-hour absolute timer might make sense, since workers only need to log in when they get to work. As long as users know when their session will expire, the latter is more accessible than the former.</p>

<h3 id="auto-save-and-progress-preservation">Auto-Save and Progress Preservation</h3>

<p>Cookies, localStorage, and sessionStorage are temporary, client-side storage mechanisms that allow web applications to store data for the duration of a single browser session. They are powerful, lightweight tools. Web developers can use them to automatically save users’ progress at frequent intervals, ensuring data is restored upon reauthentication.</p>

<p>This way, even if someone’s session expires by accident, they are not penalized. Once they log back in, they can finish filling out their credit card details or pick up where they left off with an online form.</p>

<h2 id="testing-and-wcag-compliance-considerations">Testing and WCAG Compliance Considerations</h2>

<p>The Web Content Accessibility Guidelines (WCAG) is a collection of internationally accepted internet accessibility standards published by the W3C. It acts as the arbiter of session timeout accessibility. Web developers should pay special attention to <strong>Guideline 2.9.2</strong>, <a href="https://www.w3.org/TR/wcag-3.0/#adequate-time">which outlines best practices for adequate</a> time.</p>

<p>The <strong>timeout adjustable mechanism</strong> should extend the time limit before the session expires or allow it to be turned off completely. For the former option, a dialog box should appear asking users if they need more time, allowing them to continue with one click. The WC3 notes that exceptions exist.</p>

<p>For example, when a website conducts a live ticket sale, users can only hold tickets in their carts for 10 minutes to give others a chance to purchase limited inventory. Alternatively, session timeouts may be necessary on shared computers. If librarians allowed everyone to stay logged in instead of automatically signing them out overnight, they would risk security issues.</p>

<p>Some processes should not have time limits at all. When browsing social media, reading a news article, or searching for items on an e-commerce site, there is no reason a session should expire within an arbitrary time frame. Meanwhile, in a timed exam, it may be necessary. However, in this case, administrators can extend time limits for students with disabilities.</p>

<p>When web developers make session management accessible, they are not catering to a small group. Pew Research Center data shows <a href="https://www.pewresearch.org/short-reads/2021/09/10/americans-with-disabilities-less-likely-than-those-without-to-own-some-digital-devices/">62% of adults with disabilities</a> own a computer. 72% have high-speed home internet. These figures do not differ statistically from the percentage of non-disabled adults who say the same.</p>

<h2 id="overcoming-the-session-timeout-accessibility-barrier">Overcoming the Session Timeout Accessibility Barrier</h2>

<p>The WCAG provides additional resources that web developers can review to understand session management accessibility better:</p>

<ul>
<li><a href="https://www.w3.org/TR/UNDERSTANDING-WCAG20/time-limits-required-behaviors.html">WCAG SC 2.2.1 Timing Adjustable</a></li>
<li><a href="https://www.w3.org/TR/UNDERSTANDING-WCAG20/time-limits-server-timeout.html">WCAG SC 2.2.5 Re-authenticating</a></li>
<li><a href="https://www.w3.org/WAI/WCAG22/Understanding/timeouts.html">WCAG SC 2.2.6 Timeouts</a></li>
</ul>

<p>In addition to following these guidelines, there is a wealth of information from leading educational institutions, authorities on open web technologies, and government agencies. They provide a great starting place for those with intermediate web development knowledge.</p>

<p>Web professionals should consider the following resources to learn more about tools and techniques they can use to make session management more accessible:</p>

<ul>
<li><a href="https://accessibility.huit.harvard.edu/technique-session-extension">Harvard University’s Session Extension Technique</a></li>
<li><a href="https://accessibility-manual.dwp.gov.uk/tools-and-resources/basic-accessibility-checks/10-session-timeouts-how-to-test">DWP Accessibility Manual: How to test session timeouts</a></li>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage">Window: sessionStorage property</a></li>
</ul>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aSession%20timeout%20accessibility%20is%20not%20only%20an%20industry%20best%20practice%20but%20an%20ethical%20web%20development%20standard.%0a&url=https://smashingmagazine.com%2f2026%2f04%2fsession-timeouts-accessibility-barrier-authentication-design%2f">
      
Session timeout accessibility is not only an industry best practice but an ethical web development standard.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>Those who prioritize it will appeal to a wider audience, <strong>improve usability</strong>, and attract more website visitors and longer sessions.</p>

<p>The main takeaway is that a website with inaccessible session timeouts sends a clear message that it doesn’t value the user’s time or effort, a problem that creates significant barriers for people with disabilities. However, this is a solvable issue. With a few simple changes, such as providing session extension warnings and auto-saving progress, web developers can build a more considerate, accessible, and respectful internet for everyone.</p>

<h3 id="further-reading-on-smashingmag">Further Reading On SmashingMag</h3>

<ul>
<li>“<a href="https://www.smashingmagazine.com/2025/04/what-mean-site-be-keyboard-navigable/">What Does It Really Mean For A Site To Be Keyboard Navigable</a>”, Eleanor Hecks</li>
<li>“<a href="https://www.smashingmagazine.com/2025/06/designing-for-neurodiversity/">Designing For Neurodiversity</a>”, Vitaly Friedman</li>
<li>“<a href="https://www.smashingmagazine.com/2025/06/what-i-wish-someone-told-me-aria/">What I Wish Someone Told Me When I Was Getting Into ARIA</a>”, Eric Bailey</li>
<li>“<a href="https://www.smashingmagazine.com/2024/02/web-designer-accessibility-advocacy-toolkit/">A Designer’s Accessibility Advocacy Toolkit</a>”, Yichan Wang</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Anders Toxboe</author><title>Persuasive Design: Ten Years Later</title><link>https://www.smashingmagazine.com/2026/03/persuasive-design-ten-years-later/</link><pubDate>Mon, 09 Mar 2026 11:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2026/03/persuasive-design-ten-years-later/</guid><description>Many product teams still lean on usability improvements and isolated behavioral tweaks to address weak activation, drop-offs, and low retention – only to see results plateau or slip into shallow gamification. Anders Toxboe updates persuasive design for today’s reality, clarifying what has actually held up over the last decade and how modern frameworks can guide both discovery and ideation.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2026/03/persuasive-design-ten-years-later/" />
              <title>Persuasive Design: Ten Years Later</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Persuasive Design: Ten Years Later</h1>
                  
                    
                    <address>Anders Toxboe</address>
                  
                  <time datetime="2026-03-09T11:00:00&#43;00:00" class="op-published">2026-03-09T11:00:00+00:00</time>
                  <time datetime="2026-03-09T11:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>Ten years ago, persuasive design was a relatively new frontier in the field of UX. In a 2015 Smashing article, I was among those who <a href="https://www.smashingmagazine.com/2015/10/beyond-usability-designing-with-persuasive-patterns">showed a way</a> for practitioners to move from being primarily focused on improving usability and removing friction to also guide users toward a desired outcome. The premise was simple: by leveraging <strong>psychology</strong>, we could influence user behavior and drive outcomes like higher sign-ups, faster and richer onboarding, and stronger retention and engagement.</p>

<p>A decade later, that promise has proven true &mdash; but not in the same way many of us expected. Most product teams still face familiar problems: high bounce rates, weak activation, and users dropping off before experiencing core value. Usability improvements help, but they don’t always address the behavioral gap that sits underneath these patterns.</p>

<p>Persuasive design didn’t disappear &mdash; it matured.</p>

<p>Today, the more useful version of this work is often called <strong>behavioral design</strong>: a way to align product experiences with the real drivers of human behavior, with an ethical mindset. Done well, it can improve conversion, onboarding completion, engagement, and long-term use without slipping into manipulation.</p>

<p>Here’s what I’ll cover:</p>

<ul>
<li>What has held up from the last decade of persuasive design;</li>
<li>What didn’t hold up, especially the limits of pattern-first gamification;</li>
<li>What changed in how we model behavior, from triggers to context and systems;</li>
<li>How to use <strong>modern behavioral frameworks</strong> to improve both discovery and ideation;</li>
<li>A practical way to run this work as a team, using a <strong>five-exercise workshop sequence</strong>, you can adapt to your product.</li>
</ul>

<p>The goal is not to add more tactics to your toolkit. It’s to help you build a repeatable, shared approach to diagnosing behavioral barriers and designing solutions that support both users’ goals and business outcomes.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="https://www.smashingconf.com/online-workshops/">Smashing Workshops</a></strong> on <strong>front-end, design &amp; UX</strong>, with practical takeaways, live sessions, <strong>video recordings</strong> and a friendly Q&amp;A. With Brad Frost, Stéph Walter and <a href="https://smashingconf.com/online-workshops/workshops">so many others</a>.</p>
<a data-instant href="smashing-workshops" class="btn btn--green btn--large" style="">Jump to the workshops&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="smashing-workshops" class="feature-panel-image-link">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-scubadiving-panel.svg"
    alt="Feature Panel"
    width="257"
    height="355"
/>

</div>
</a>
</div>
</aside>
</div>

<h2 id="is-persuasion-the-same-as-deception">Is Persuasion The Same As Deception?</h2>

<p>Behavioral Design is not about slapping <a href="https://www.deceptive.design/">deceptive patterns</a> or superficial “growth hacks” onto your UI. It’s about understanding what truly enables or hinders your users on their way to achieving their goal and then designing experiences that guide them to success.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/persuasive-design-ten-years-later/1-behavioral-design.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="404"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/1-behavioral-design.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/persuasive-design-ten-years-later/1-behavioral-design.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/persuasive-design-ten-years-later/1-behavioral-design.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/persuasive-design-ten-years-later/1-behavioral-design.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/persuasive-design-ten-years-later/1-behavioral-design.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/1-behavioral-design.png"
			
			sizes="100vw"
			alt="Persuasion vs manipulation"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/persuasive-design-ten-years-later/1-behavioral-design.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Behavioral design is more about bridging the gap between <strong>what users want</strong> (achieving their goals, feeling value) and <strong>what businesses need</strong> (activation, retention, revenue), creating win-win outcomes where good UX and good business results align.</p>

<p>But like with all powerful tools, they can be used both for good and bad. The difference lies in the <strong>intention of the designer</strong>. Some designers argue for not promoting behavioral or persuasive design, while others argue that we need to understand the tools to learn how to use them well and how we can easily, and often mindlessly, fall into the trap of promoting an unethical lens.</p>

<p>If we are not enlightened, then how can we judge what represents good and bad practice? If we do not understand how psychology works, then we lack the awareness needed to spot our biases. If we don’t understand these tools, we can’t spot when they’re misused.</p>

<p>The difference between persuasion and deception is intention, plus accountability.</p>

<h2 id="a-decade-later-what-have-we-learned">A Decade Later, What Have We learned?</h2>

<p>In the early 2010s, many teams treated persuasive design as almost synonymous with gamification. If you added points, badges, and leaderboards, you were doing psychology. And to be fair, those surface mechanics did work in some cases, at least in the short term. They could nudge people through onboarding flows or encourage a few extra logins. But over the decade, their limits became clear. Once the novelty wore off, many of these systems felt shallow. Users learned to ignore streaks that did not connect to anything meaningful or dropped out when they realized the game layer was not helping them reach a real goal.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/persuasive-design-ten-years-later/2-persuasive-design.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="533"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/2-persuasive-design.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/persuasive-design-ten-years-later/2-persuasive-design.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/persuasive-design-ten-years-later/2-persuasive-design.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/persuasive-design-ten-years-later/2-persuasive-design.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/persuasive-design-ten-years-later/2-persuasive-design.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/2-persuasive-design.png"
			
			sizes="100vw"
			alt="Diagram contrasting extrinsic rewards (points, praise, prizes, money) with intrinsic rewards like mastery, meaningful work, helping others, well-being, and personal satisfaction."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/persuasive-design-ten-years-later/2-persuasive-design.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>This is where <strong>self-determination theory</strong> has quietly reshaped how serious teams think about motivation. It distinguishes between <strong>extrinsic motivators</strong>, such as rewards, points, and status, and <strong>intrinsic drivers</strong> like autonomy, competence, and relatedness. Put simply, if your “gamification” fights against what people actually care about, it will eventually fail. The interventions that have survived are the ones that support intrinsic needs. A language learning streak that makes you feel more capable and shows progress can work because it makes the core activity feel more meaningful and manageable. A badge that only exists to move a dashboard number, on the other hand, quickly becomes noise.</p>

<h2 id="lesson-1-from-quick-fixes-to-behavioral-strategy">Lesson 1: From Quick Fixes To Behavioral Strategy</h2>

<p>One key lesson from the past decade is that behavioral design creates the most value when it moves beyond isolated fixes and becomes a <strong>deliberate strategy</strong>. Many product teams start with a narrow goal: improve a sign-up rate, reduce drop-off, or boost early retention. When standard UX optimizations plateau, they turn to psychology for a quick lift, often with success.</p>

<p>The biggest opportunity is not one more uplift on a stubborn metric, but having a systematic way to understand and shape behavior across the product.</p>

<blockquote>Behavioral design isn’t about hacks.<br />It’s about helping people succeed.</blockquote>

<p>Common signals are easy to recognize: people sign up but never finish onboarding; they click around once and never return; key features sit unused. A behavioral strategy doesn’t just ask “<em>What can we change on this screen?”</em> It asks what is happening in the user’s mind and context at those moments.</p>

<p>That might lead you to design an onboarding experience that uses <a href="https://learningloop.io/plays/psychology/triggers">curiosity</a> and the <a href="https://learningloop.io/plays/psychology/goal-gradient-effect">goal-gradient effect</a> to guide people to a clear first win, instead of hoping they read a help doc. Or it might lead you to design for exploration and commitment over time: <a href="https://ui-patterns.com/patterns/Social-proof">social proof</a> where it actually matters, <a href="https://learningloop.io/plays/psychology/appropriate-challenges">appropriate challenges</a> that stretch but don’t overwhelm, <a href="https://ui-patterns.com/patterns/ProgressiveDisclosure">progressive disclosure</a> so advanced features show up when people are ready, and the right <a href="https://learningloop.io/plays/psychology/triggers">triggers</a> at the most <a href="https://ui-patterns.com/patterns/Kairos">opportune moment</a> instead of random nags.</p>

<blockquote>Great products aren’t just easy to use.<br />They’re easier to commit to.</blockquote>

<p>Product psychology has shifted from scattered hypotheses to a <a href="https://learningloop.io/playbook-collections/persuasive-patterns/">growing library of repeatable patterns</a>. Those patterns only shine when they sit inside a coherent behavioral model: what users are trying to achieve, what blocks them, and which levers the team will pull at each stage.</p>

<p>Simple nudges, inspired by <a href="https://www.amazon.com/Nudge-Improving-Decisions-Health-Happiness/dp/014311526X">Thaler and Sunstein</a>, have helped popularize behavioral thinking in design. But we’ve also learned that <a href="https://betteregulation.lumsa.it/repost-rednmr-publication-book-%E2%80%9Cnudge-final-edition%E2%80%9D-juli-ponce-sol%C3%A9">nudges alone rarely solve deeper behavioral challenges</a>. A behavioral strategy goes further: it blends tactics, grounds them in real motivations, and ties experiments to a clear theory of change. The goal is not a one-off win on today’s dashboard, but a way of working that compounds over time.</p>

<h3 id="lesson-2-game-mechanics-alone-are-not-enough">Lesson 2: Game Mechanics Alone Are Not Enough</h3>

<p>Game mechanics alone are no longer a credible behavioral strategy. Ten years ago, adding points, badges, and leaderboards was almost shorthand for “we’re doing psychology.” Today, most teams have learned the hard way that this is decoration unless it serves a real need.</p>

<p>A behavioral approach starts with a blunt question: What is the game layer in service of, and for whom? Does it help people make progress that matters to them, or does it just keep a dashboard happy? If it ignores intrinsic motivation, it will look clever in a slide deck and brittle in production.</p>

<p>In practice, that means points and streaks are not treated as automatic upgrades anymore. Teams ask whether a mechanic helps users feel more competent, more in control, or more connected to others. A streak only makes sense if it reflects real progress in a skill the user cares about. A leaderboard only adds value if people actually want to compare themselves and if the ranking helps them decide what to do next. If it does not pass those tests, it is clutter, not a motivational engine.</p>

<blockquote>Streaks and badges only work when they support something users truly value.</blockquote>

<p>The most effective products now start with the intrinsic side. They are clear about what the product helps users become or achieve, and only then ask whether a game mechanic can amplify that journey. When game elements are added, they live in the core loop rather than on top of it. They show mastery, mark meaningful milestones, and reinforce self-driven goals. That is the difference between treating gamification as a paint job and using it to support users on a path they already care about.</p>

<h3 id="lesson-3-from-cause-and-effect-to-holistic-systems-thinking">Lesson 3: From Cause And Effect To Holistic Systems Thinking</h3>

<p>Early persuasive design often assumed a simple logic: find the broken step, add the right lever, and users move forward. Nice on a slide, rarely true in reality.</p>

<p>People don’t act for a single reason. They have context, history, competing goals, mood, time pressure, trust issues, and different definitions of success. Two users can take the same step for completely different reasons. The same user can behave differently on a different day.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/persuasive-design-ten-years-later/3-holistic-systems-thinking-persuasive-design.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="533"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/3-holistic-systems-thinking-persuasive-design.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/persuasive-design-ten-years-later/3-holistic-systems-thinking-persuasive-design.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/persuasive-design-ten-years-later/3-holistic-systems-thinking-persuasive-design.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/persuasive-design-ten-years-later/3-holistic-systems-thinking-persuasive-design.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/persuasive-design-ten-years-later/3-holistic-systems-thinking-persuasive-design.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/3-holistic-systems-thinking-persuasive-design.png"
			
			sizes="100vw"
			alt="Diagram comparing cause-and-effect thinking (linear, predictable outcomes) with systems thinking (feedback loops, delays, and unknown outcomes)."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/persuasive-design-ten-years-later/3-holistic-systems-thinking-persuasive-design.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>That’s why <a href="https://en.wikipedia.org/wiki/Systems_thinking">systems thinking</a> matters. Behavior is shaped by feedback loops and delays, not just one trigger. Outcomes we care about, trust, competence, and habit, are built over time. A change that boosts this week’s conversion can still weaken next month’s retention.</p>

<p>If you have ever shipped a “conversion win” and then watched support tickets, refunds, or churn go up, you have felt this. The local metric improved. The system got worse.</p>

<p>Your design structures either enable people or box them in. Defaults, navigation, feedback, pacing, rewards &mdash; each of these decisions reshapes the system and therefore the journeys people take through it.</p>

<p>So the job is not to perfect a single funnel. It is to build an environment where multiple valid paths can succeed, and where the system supports long-term goals, not just short-term clicks.</p>

<blockquote>The job isn’t to perfect one funnel, but to support multiple valid paths.</blockquote>

<p>A mature behavioral strategy is explicit about that. It is designed for several paths instead of one “happy flow,” supports autonomy instead of forcing compliance, and looks at downstream effects instead of only first-step conversion.</p>

<h3 id="lesson-4-from-triggers-to-context">Lesson 4: From Triggers To Context</h3>

<p>The same shift has happened in the frameworks we use. A decade ago, the <a href="https://www.behaviormodel.org/">Fogg Behavior Model</a> (FBM) was everywhere. It gave teams a simple trio: motivation, ability, trigger &mdash; and a clear message: shouting louder with prompts does not fix low motivation or poor ability. That alone was a useful upgrade.</p>

<p>Fogg’s own work has moved on, too. With Tiny Habits, the focus leans more on identity, emotion, and making behaviors feel easy and personally meaningful. That mirrors a broader shift in the field: away from “fire more prompts” and toward designing environments where the right behavior feels natural.</p>

<p>Teams eventually ran into the same wall: prompts do not fix low capability or missing opportunity. You cannot nag people into skills they do not have or into contexts that do not exist. That is where many teams that work deeply with behavior change have gravitated toward <a href="https://thedecisionlab.com/reference-guide/organizational-behavior/the-com-b-model-for-behavior-change">COM-B</a> as a more complete foundation.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/persuasive-design-ten-years-later/4-fogg-behavior-com-b.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="341"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/4-fogg-behavior-com-b.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/persuasive-design-ten-years-later/4-fogg-behavior-com-b.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/persuasive-design-ten-years-later/4-fogg-behavior-com-b.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/persuasive-design-ten-years-later/4-fogg-behavior-com-b.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/persuasive-design-ten-years-later/4-fogg-behavior-com-b.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/4-fogg-behavior-com-b.png"
			
			sizes="100vw"
			alt="Diagram comparing Fogg Behavior Mode vs COM-B model"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/persuasive-design-ten-years-later/4-fogg-behavior-com-b.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>COM-B breaks behavior into <strong>capability</strong>, <strong>opportunity</strong>, and <strong>motivation</strong>. It starts with a blunt check: can people actually do this, and does their environment let them? That maps well to modern products, where behavior happens across devices, channels, and moments, not on a single screen. It also plugs into broader behavior change work in health and public policy, so we do not have to reinvent everything inside UX.</p>

<p>Thinking this way nudges teams away from simple cause-and-effect stories. A drop in completion rate is no longer “the button is bad” or “we need more reminders,” but a question about how skills, context, and motivation interact. A capability issue might need a better interface and better education. An opportunity issue might be about device access, timing, or social surroundings, not layout. Motivation might be shaped as much by pricing and brand trust as by any in-product message.</p>

<blockquote>Modern behavioral design is less about activating clicks and more about shaping conditions where action feels easy and meaningful.</blockquote>

<p>This broader lens also makes cross-functional work simpler. Product, design, marketing, and data can share one behavior model and still see their own responsibilities in it. Designers shape perceived capability and opportunity in the interface, marketing shapes motivational framing and triggers, and operations shape the structural opportunity in the service. Instead of everyone pushing their own levers in isolation, COM-B helps teams see that they are working on different parts of the same system.</p>

<h3 id="lesson-5-psychology-can-also-be-used-to-design-and-decode-discovery">Lesson 5: Psychology Can Also Be Used To Design And Decode Discovery</h3>

<p>COM-B is often used as a bridge between discovery and ideation. On the discovery side, it gives structure to research. You can use it to design interview guides, read analytics, and make sense of observational studies. It was built to diagnose what needs to change for a behavior to shift, which maps neatly onto early product discovery.</p>

<blockquote>Good discovery doesn’t just ask what users say, but examines what their behavior reveals.</blockquote>

<p>Instead of asking <em>“Why did you stop using the product?”</em> and writing down the first answer, you deliberately walk through capability, opportunity, and motivation. You ask things like:</p>

<ul>
<li>Can users actually do this, given their skills and knowledge?</li>
<li>Does their context help or hinder them in practice?</li>
<li>How strong is their motivation compared with other demands on their time and money?</li>
</ul>

<p>You walk through recent experiences in detail: which device they used, what time of day it was, who else was around, and what else they were juggling. You talk about how important this behavior is compared with everything else in their life and what trade-offs they make. To participants, these questions feel natural. Under the hood, you are systematically covering all three parts of COM-B, in line with how behavior change practitioners use the model in qualitative work.</p>

<p>You can look at behavioral data in the same way. Funnel drop-offs, time on task, and click patterns are clues: are people stuck because they cannot progress, because the environment gets in the way, or because they do not care enough to continue? Modern analytics tools make it easier to watch what people actually do rather than only what they report, and combining quantitative and qualitative data gives you a fuller picture than either alone.</p>

<p>When there is a gap between what people say and what they do, you treat it as a <strong>signal</strong> rather than an irritation. Someone might say that saving for retirement is very important, but never set up a recurring transfer. A user might claim that onboarding was simple, while their session shows repeated back and forth between steps. Those mismatches are often where biases, habits, and emotional barriers live. By labelling them in terms of capability, opportunity, and motivation, and linking them to specific barriers like <a href="https://learningloop.io/plays/psychology/risk-aversion">risk aversion</a>, <a href="https://learningloop.io/plays/psychology/analysis-paralysis">analysis paralysis</a>, <a href="https://learningloop.io/plays/psychology/status-quo-bias">status quo bias</a> or <a href="https://learningloop.io/plays/psychology/present-bias">present bias</a>, you move from vague “insights” to a structured map of what is actually in the way.</p>

<blockquote>The gap between what people say and what they do is not noise &mdash; it’s the map.</blockquote>

<p>The output of this kind of discovery is not just personas and journeys. You also get a clear statement of the current behavior, the target behavior, and the behavioral barriers and enablers that sit between them.</p>

<h3 id="lesson-6-use-behavioral-discovery-in-your-ideation">Lesson 6: Use Behavioral Discovery In Your Ideation</h3>

<p>The bridge from discovery to ideation can be a single sentence template:</p>

<blockquote>From <strong>current behavior</strong> to <strong>target behavior</strong>, by <strong>doing X</strong>, because of <strong>barrier Y</strong>.</blockquote>

<p>This “from–to–by–why” framing forces teams to say what they actually believe. You are not just saying “add a checklist.” You are saying: “We believe a checklist will help new users feel more capable, which will increase the chance they complete setup in their first session.” Now it is a <strong>behavioral hypothesis</strong> you can test with <a href="https://learningloop.io/playbook-collections/validation-patterns/">experiments</a>, not just a design idea you hope for.</p>

<p>From there, you can generate several variants that express the same principle in different ways and design experiments around them. You might try a few messages that all lean on <a href="https://learningloop.io/plays/psychology/loss-aversion">loss aversion</a>, or several ways of simplifying a high-friction step, or different forms of <a href="https://learningloop.io/plays/psychology/social-proof">social proof</a> that vary in tone and proximity.</p>

<p>The important shift is that you are no longer throwing ideas at the wall. You are deliberately targeting the capability, opportunity, or motivation issues that discovery surfaced, and testing which levers actually work in your context.</p>

<blockquote>Every idea should answer one question: which barrier are we trying to change?</blockquote>

<p>Over time, this loop between behavioral discovery and ideation turns into a local playbook. You learn that in your product, some principles reliably help your users and others fall flat. You also learn that patterns from glowing case studies do not automatically transfer. Even gamification and behavior change research often emphasize <strong>context-specific</strong>, <strong>user-centred</strong> implementations rather than generic recipes.</p>

<p>This dual use of psychology in discovery and ideation is one of the bigger shifts of the past decade. A product trio can look at a stubborn drop-off point and ask, together, “Is this a capability, opportunity, or motivation issue?” Then they generate ideas that target that part of the system instead of guessing. That shared language makes behavioral design less of a specialist add-on and more of a normal way for cross-functional teams to reason about their work.</p>

<div class="partners__lead-place"></div>

<h2 id="a-decade-later-what-has-proven-to-work-in-practice">A Decade Later: What Has Proven To Work In Practice</h2>

<p>If the first decade of persuasive design taught us anything, it is that behavioral insight is cheap until a team can act on it together.</p>

<p>Methods matter.</p>

<p>Over time, a small set of workshop formats has consistently helped product teams uncover behavioral barriers, align on opportunities, and generate solutions grounded in real psychology instead of surface patterns. As behavioral design has grown from tactical nudges into a strategic discipline, an obvious question keeps coming up: <strong>How do teams actually do this work together in practice?</strong></p>

<p>How do product managers, designers, researchers, and engineers move from scattered observations (“people seem confused here”) to a shared behavioral diagnosis, and then to targeted ideas that reflect the real drivers of capability, opportunity, and motivation?</p>

<p>One effective way to make this concrete is through a workshop format. The aim is to help teams:</p>

<ul>
<li>Interpret research through a behavioral lens,</li>
<li>Surface capability, opportunity, and motivation gaps,</li>
<li>Prioritize high-potential opportunities, and</li>
<li>Generate ideas that are both psychologically sound and ethically considered.</li>
</ul>

<p>Real product work is messy and full of feedback loops; nobody follows a perfect step-by-step checklist. But for learning, and especially for introducing behavioral design into a team for the first time, a structured sequence of exercises gives people a mental model. It shows the journey from early discovery to behavioral clarity, from opportunities to ideas, and finally to interventions that have been stress-tested through an ethical lens.</p>

<p>The exercises below are one such recipe. The order is intentional: each step builds on the previous one to move from empathy and insight to prioritized opportunities, concrete concepts, and responsible solutions. No team will follow it letter-perfect every time, but it reflects how behavioral design work tends to unfold when it goes well.</p>

<p>Before diving into the details, here is the full recipe and how each exercise contributes to the bigger behavioral design process:</p>

<ol>
<li><strong>Behavioral Empathy Mapping</strong><br />
Builds a shared understanding of the user’s psychological landscape: emotions, habits, misconceptions, and sources of friction.</li>
<li><strong>Behavioral Journey Mapping</strong><br />
Maps the user’s flow over time, and overlays behavioral enablers and obstacles.</li>
<li><strong>Behavior Scoring</strong><br />
Prioritizes which behavioral opportunities to tackle first based on impact, feasibility, and evidence.</li>
<li><strong>Ideas First, Patterns Later</strong><br />
Encourages context-first ideation, then uses <a href="https://learningloop.io/playbook-collections/persuasive-patterns/">persuasive patterns</a> to refine and strengthen promising concepts.</li>
<li><strong>Dark Reality</strong><br />
Evaluates ethical risks, unintended consequences, and potential misuse.</li>
</ol>

<p><strong>A note on timing:</strong> In practice, this sequence can be run in different formats depending on constraints. For a compact format, teams often run Exercises 1–3 in a half-day workshop, and Exercises 4–5 in a second half-day session. With more time, the work can be spread across a full week: discovery synthesis early in the week, prioritization mid-week, and ideation plus ethical review toward the end. The structure matters more than the schedule; the goal is to preserve the progression from understanding → prioritization → ideation → reflection.</p>

<p>Below is a brief walkthrough of each exercise as I typically facilitate them in workshops in tandem with a library of <a href="https://learningloop.io/playbook-collections/persuasive-patterns/">persuasive patterns</a>.</p>

<h3 id="exercise-1-behavioral-empathy-mapping">Exercise 1: Behavioral Empathy Mapping</h3>

<p>The first step is building a shared, psychologically informed understanding of users. <a href="https://learningloop.io/plays/workshop-exercise/behavioral-empathy-mapping">Behavioral Empathy Mapping</a> extends traditional empathy mapping by paying attention to what users attempt, avoid, postpone, misunderstand, or feel uncertain about. These subtle behavioral signals often reveal more than stated needs or pain points.</p>

<p><strong>Goal:</strong> Understand what drives or blocks the target behavior by capturing what users think, feel, say, and do — and spotting behavioral barriers and enablers.</p>

<p><strong>Steps:</strong></p>

<ol>
<li>On a whiteboard or large paper, draw an empathy map: <em>Thinking & Feeling, Seeing, Saying & Doing, and Hearing</em>.</li>
 













<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/persuasive-design-ten-years-later/5-empathy-map.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="515"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/5-empathy-map.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/persuasive-design-ten-years-later/5-empathy-map.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/persuasive-design-ten-years-later/5-empathy-map.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/persuasive-design-ten-years-later/5-empathy-map.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/persuasive-design-ten-years-later/5-empathy-map.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/5-empathy-map.png"
			
			sizes="100vw"
			alt="An empathy map: Thinking &amp; Feeling, Seeing, Saying &amp; Doing, and Hearing."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/persuasive-design-ten-years-later/5-empathy-map.png'>Large preview</a>)
    </figcaption>
  
</figure>

<li>Add research insights by letting everyone silently add sticky notes from interviews, data, support logs, or observations into the quadrants. One insight per note.</li>
<li><strong>Identify barriers and enablers.</strong><br />Cluster notes that make the behavior <strong>harder</strong> (barriers) or <strong>easier</strong> (enablers).</li>
</ol>

<p><strong>Output:</strong> A focused map of the psychological and contextual forces shaping the target behavior, ready to feed into Behavioral Journey Mapping.</p>

<h3 id="exercise-2-behavioral-journey-mapping">Exercise 2: Behavioral Journey Mapping</h3>

<p>Once you understand the user’s mindset and context, the next step is to map how those forces play out across time. <a href="https://learningloop.io/plays/workshop-exercise/behavioral-journey-mapping">Behavioral Journey Mapping</a> overlays the user’s goals, actions, emotions, and environment onto the product journey, highlighting the specific moments where behavior tends to stall or shift.</p>

<p>Unlike traditional journey maps, the behavioral version focuses on where capability breaks down, where the environment works against the user, and where motivation fades or conflicts arise. These become early signals of where change is both needed and possible.</p>

<p>The output shows the team precisely where the product is asking too much, where users lack support, or where additional motivation or clarity might be required.</p>

<p><strong>Goal:</strong> Map the steps from the user’s starting point to the target behavior, and capture the key enablers and barriers along the way.</p>

<p><strong>Steps:</strong></p>

<ol>
<li>Draw a horizontal line from A (starting point) to B (target behavior).</li>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/persuasive-design-ten-years-later/6-behavioral-journey-mapping.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="97"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/6-behavioral-journey-mapping.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/persuasive-design-ten-years-later/6-behavioral-journey-mapping.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/persuasive-design-ten-years-later/6-behavioral-journey-mapping.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/persuasive-design-ten-years-later/6-behavioral-journey-mapping.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/persuasive-design-ten-years-later/6-behavioral-journey-mapping.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/6-behavioral-journey-mapping.png"
			
			sizes="100vw"
			alt="A horizontal line from A to B."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/persuasive-design-ten-years-later/6-behavioral-journey-mapping.png'>Large preview</a>)
    </figcaption>
  
</figure>

<li>Have everyone write the steps a user takes from A to B on sticky notes (one per note). Include actions inside and outside the product.</li>
<li>Place the notes in order along the line. Merge duplicates and align on a shared sequence.</li>
<li>Extend the vertical axis with two rows:<ul><li><strong>Enablers</strong> (what could help users move forward),</li><li><strong>Barriers</strong> (what could slow or stop users).</li></ul></li>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/persuasive-design-ten-years-later/7-behavioral-journey-mapping.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="387"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/7-behavioral-journey-mapping.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/persuasive-design-ten-years-later/7-behavioral-journey-mapping.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/persuasive-design-ten-years-later/7-behavioral-journey-mapping.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/persuasive-design-ten-years-later/7-behavioral-journey-mapping.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/persuasive-design-ten-years-later/7-behavioral-journey-mapping.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/persuasive-design-ten-years-later/7-behavioral-journey-mapping.png"
			
			sizes="100vw"
			alt="The vertical axis with two rows: Enablers and Barriers."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/persuasive-design-ten-years-later/7-behavioral-journey-mapping.png'>Large preview</a>)
    </figcaption>
  
</figure>

<li>Look for steps with many barriers or few enablers. These are behavioral hot spots.</li>
<li>Highlight the steps where a good nudge could meaningfully help users complete the journey.</li>
</ol>

<p><strong>Output:</strong> A clear, behavior-focused journey showing <strong>where users struggle, why, and which moments offer the most leverage for change</strong>.</p>

<h3 id="exercise-3-behavior-scoring">Exercise 3: Behavior Scoring</h3>

<p>With a clearer picture of the user journey and what moments could benefit from a behaviorally helpful hand, you are now ready to identify the behavior it makes most sense to focus on trying to influence.</p>

<p><strong>Goal:</strong> Decide which potential target behaviors <a href="https://learningloop.io/plays/workshop-exercise/behavior-scoring">are worth focusing on first</a>, based on impact, ease of change, and ease of measurement.</p>

<p><strong>Steps:</strong></p>

<ol>
<li>List potential target behaviors. Based on the output of the Behavioral Journey Mapping, list behaviors that could potentially be targeted. One behavior per sticky note. Be as concrete as possible (what users do, where, and when).</li>
<li>Create a table with the following columns:<ul><li><strong>Impact of behavior change</strong> (how much it could move the goal),</li><li><strong>Ease of change</strong> (how realistic it is to influence),</li><li><strong>Ease of measurement</strong> (how straightforward it is to track).</li></ul></li>

<table class="tablesaw break-out">
    <thead>
        <tr>
            <th>Potential target behaviors</th>
            <th>Impact of behavior change</th>
      <th>Ease of change</th>
      <th>Ease of measurement</th>
      <th>Total</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>…</td>
            <td></td>
      <td></td>
      <td></td>
      <td></td>
        </tr>
        <tr>
            <td>…</td>
            <td></td>
      <td></td>
      <td></td>
      <td></td>
        </tr>
        <tr>
            <td>…</td>
            <td></td>
      <td></td>
      <td></td>
      <td></td>
        </tr>
    </tbody>
</table>

<li>Enter each listed behavior into the table and score them from 0 to 10 in each column.</li>
<li>Sort behaviors by total score and discuss the highest-scoring ones:<ul><li>Do they make sense given what you know about users and constraints?</li></ul></li>
<li>Select the primary target behaviors you want to carry into the next exercises.<br />Optionally, note “bonus behaviors” that might follow as a side effect.</li>
</ol>

<p><strong>Output:</strong> A small set of prioritized target behaviors with a clear rationale for why they matter now, and a list of lower-priority behaviors you may revisit later.</p>

<p>A filled-out Behavior Scoring table could look like this:</p>

<table class="tablesaw break-out">
    <thead>
        <tr>
            <th>Potential target behaviors</th>
            <th>Impact of behavior change</th>
      <th>Ease of change</th>
      <th>Ease of measurement</th>
      <th>Total</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>User completes onboarding checklist in first session.</td>
            <td>8</td>
      <td>6</td>
      <td>9</td>
      <td>23</td>
        </tr>
        <tr>
            <td>User invites at least one teammate within 7 days.</td>
            <td>9</td>
      <td>4</td>
      <td>8</td>
      <td>21</td>
        </tr>
        <tr>
            <td>User watches the full product tour video.</td>
            <td>4</td>
      <td>7</td>
      <td>6</td>
      <td>17</td>
        </tr>
    <tr>
            <td>User reads help documentation during onboarding.</td>
            <td>3</td>
      <td>5</td>
      <td>4</td>
      <td>12</td>
        </tr>
    </tbody>
</table>

<p>In this case, the checklist completion emerges as the strongest initial focus: it has high impact, is realistically influenceable through design changes, and can be measured reliably. Inviting a teammate may be strategically important, but it may require broader changes beyond interface design, making it a secondary focus.</p>

<div class="partners__lead-place"></div>

<h3 id="exercise-4-ideas-first-patterns-later">Exercise 4: Ideas First, Patterns Later</h3>

<p>Once the team has agreed on which behavior matters most, the next risk is jumping too quickly to familiar psychological tricks. One of the clearest lessons has been that starting with “the pattern” often leads to generic solutions that feel clever but fail in context.</p>

<p>This exercise deliberately <a href="https://learningloop.io/plays/workshop-exercise/ideas-first-patterns-later">separates idea generation from psychological framing</a>.</p>

<p><strong>Goal:</strong> Generate solutions grounded in user context first, then use <a href="https://learningloop.io/playbook-collections/persuasive-patterns/">psychological principles</a> to sharpen and strengthen them.</p>

<p><strong>Steps:</strong></p>

<ol>
<li>Start by restating the prioritized target behavior and the key barrier identified during journey mapping. Keep this visible throughout the exercise.</li>
<li>Then give the team a short, focused ideation window (10–15 minutes).<br />
The rule here is simple: no references to behavioral models, cognitive biases, or persuasive patterns yet. Ideas should come directly from the user context, constraints, and moments uncovered earlier.</li>
<li>Collect ideas on a shared surface and group similar concepts. Look for multiple ways of solving the same underlying problem (cluster them together).</li>

<li><p>Only now do you introduce a library of psychological principles and techniques. I developed the <a href="https://learningloop.io/playbook-collections/persuasive-patterns/">persuasive patterns</a> for this exact purpose. The goal of this step is not to replace ideas, but to refine them:</p>

<ul>
<li>Which ideas could be strengthened by reducing friction?</li>
<li>Which might benefit from clearer feedback, social signals, or better timing?</li>
<li>Are there alternative ways to achieve the same effect more respectfully or more clearly?</li>
</ul>

<p>Patterns are used as lenses, not prescriptions. If a pattern does not improve clarity, agency, or usefulness in this context, it is simply ignored.</p></li>
</ol>

<p><strong>Output:</strong> A refined set of solution concepts that are grounded in real user context and supported, where appropriate, by behavioral principles rather than driven by them.</p>

<p>This sequencing helps teams avoid “pattern-first design,” where ideas are reverse-engineered to fit a theory instead of addressing real human situations.</p>

<h3 id="exercise-5-dark-reality">Exercise 5: Dark Reality</h3>

<p>Before ideas turn into experiments or shipped features, they need one final test. Not for feasibility or metrics, but for <a href="https://learningloop.io/plays/workshop-exercise/dark-reality">ethics</a>.</p>

<p>Over the years, this step has proven critical. Many persuasive solutions only reveal their downside when you imagine them working too well, or being applied in the wrong hands, or used on the wrong day by the wrong person.</p>

<p><strong>Goal:</strong> Surface ethical risks, unintended consequences, and potential misuse before implementation.</p>

<p><strong>Steps:</strong></p>

<ol>
<li>Take one or two of the strongest ideas from the previous exercise.</li>
<li>Imagine worst-case scenarios by asking the team to deliberately shift perspective:

<ul>
<li>What if a competitor used this against us?</li>
<li>What if this nudges users when they’re stressed, tired, or vulnerable?</li>
<li>What happens if this works repeatedly over months, not once?</li>
<li>Could this create pressure, guilt, or dependence?</li>
</ul></li>
<li>Capture concerns around autonomy, trust, fairness, inclusivity, or long-term well-being.</li>
<li>For each risk, explore ways to soften or counterbalance the effect:

<ul>
<li>Clearer intent or transparency,</li>
<li>Lower frequency or gentler timing,</li>
<li>Explicit opt-outs,</li>
<li>Alternative paths forward.</li>
</ul></li>
<li>Some ideas are reshaped. Some are paused.<br />
Some survive intact, but now with greater confidence.</li>
</ol>

<p><strong>Output:</strong> Solutions that have been stress-tested ethically, with known risks acknowledged and mitigated rather than ignored.</p>

<h2 id="building-a-shared-vocabulary-for-product-psychology">Building A Shared Vocabulary For Product Psychology</h2>

<p>The teams that get the most out of behavioral design rarely have a single “psychology expert.” Instead, their team shares a vocabulary around product psychology and knows how to communicate around customer problem behaviorally.</p>

<blockquote>A shared vocabulary turns psychology into cross-functional work.</blockquote>

<p>When patterns and principles are shared:</p>

<ul>
<li>Product, design, engineering, and marketing can talk about behavior without talking past each other.</li>
<li>Discovery insights are easier to interpret because common barriers and drivers have names.</li>
<li>Ideas can be framed as <strong>behavioral hypotheses</strong> (“we believe this will increase early competence…”) instead of vague guesses.</li>
</ul>

<p>The <a href="https://learningloop.io/playbook-collections/persuasive-patterns/">Persuasive Patterns</a> collection grew from this need: giving teams a common language and a concrete set of examples to point at. Whether used as a printed deck in a workshop or as long-form references during everyday work, the goal is the same: make product psychology something the whole team can see and discuss.</p>

<p>Persuasive design was often framed as a bag of tricks. Today, the work looks different:</p>

<ul>
<li>Game mechanics are used to support <strong>intrinsic motivation</strong>, not drive vanity engagement.</li>
<li>Frameworks like COM-B and systems thinking help teams see <strong>behavior in context</strong>, not as a single trigger.</li>
<li>Behavioral insight is used to shape <strong>discovery and ideation</strong>, not just last-minute copy changes.</li>
<li><strong>Ethics</strong> is part of the design brief, not an afterthought.</li>
</ul>

<p>The next step is not more sophisticated nudges. It is a more systematic practice: simple methods, shared language, and a habit of asking <em>“What is really going on in our users’ lives here?”</em></p>

<p>If you start by focusing on one behavioral problem, use a couple of the exercises in this article, and give your team a shared set of patterns to reference, you are already practicing persuasive design in the way it has evolved over the last ten years: grounded in evidence, respectful of users, and aimed at outcomes that matter on both sides of the screen.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Eleanor Hecks</author><title>The Accessibility Problem With Authentication Methods Like CAPTCHA</title><link>https://www.smashingmagazine.com/2025/11/accessibility-problem-authentication-methods-captcha/</link><pubDate>Thu, 27 Nov 2025 10:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/11/accessibility-problem-authentication-methods-captcha/</guid><description>CAPTCHAs were meant to keep bots out, but too often, they lock people with disabilities out, too. From image classification to click-based tests, many “human checks” are anything but inclusive. There’s no universal solution, but understanding real user needs is where accessibility truly starts.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/11/accessibility-problem-authentication-methods-captcha/" />
              <title>The Accessibility Problem With Authentication Methods Like CAPTCHA</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>The Accessibility Problem With Authentication Methods Like CAPTCHA</h1>
                  
                    
                    <address>Eleanor Hecks</address>
                  
                  <time datetime="2025-11-27T10:00:00&#43;00:00" class="op-published">2025-11-27T10:00:00+00:00</time>
                  <time datetime="2025-11-27T10:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>The Completely Automated Public Turing test to tell Computers and Humans Apart (CAPTCHA) has become ingrained in internet browsing since personal computers gained momentum in the consumer electronics market. For nearly as long as people have been going online, web developers have sought ways to block spam bots.</p>

<p>The CAPTCHA service distinguishes between human and bot activity to keep bots out. Unfortunately, its methods are less than precise. In trying to protect humans, developers have made much of the web <strong>inaccessible</strong> to people with disabilities.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/1-authentication-failed.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="533"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/1-authentication-failed.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/1-authentication-failed.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/1-authentication-failed.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/1-authentication-failed.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/1-authentication-failed.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/1-authentication-failed.jpg"
			
			sizes="100vw"
			alt="Authentication failed’ error message"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://unsplash.com/photos/black-flat-screen-computer-monitor-bMvuh0YQQ68'>unsplash.com</a>. (<a href='https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/1-authentication-failed.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Authentication methods, such as CAPTCHA, typically use image classification, puzzles, audio samples, or click-based tests to determine whether the user is human. While the types of challenges are well-documented, their <strong>logic is not public knowledge</strong>. People can only guess what it takes to “prove” they are human.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/2-recaptcha.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="547"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/2-recaptcha.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/2-recaptcha.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/2-recaptcha.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/2-recaptcha.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/2-recaptcha.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/2-recaptcha.png"
			
			sizes="100vw"
			alt="reCAPTCHA"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://support.google.com/recaptcha/?hl=en'>Google</a>. (<a href='https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/2-recaptcha.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="what-is-captcha">What Is CAPTCHA?</h2>

<p>A CAPTCHA <a href="https://medium.com/@leo.weiss33/a-reverse-turing-test-story-cf677b0ff282">is a reverse Turing test</a> that takes the form of a challenge-response test. For example, if it instructs users to “select all images with stairs,” they must pick the stairs out from railings, driveways, and crosswalks. Alternatively, they may be asked to enter the text they see, add the sum of dice faces, or complete a sliding puzzle.</p>

<p>Image-based CAPTCHAs are responsible for the most frustrating shared experiences internet users have &mdash; deciding whether to select a square when only a small sliver of the object in question is in it.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/3-captcha-picture.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="549"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/3-captcha-picture.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/3-captcha-picture.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/3-captcha-picture.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/3-captcha-picture.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/3-captcha-picture.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/3-captcha-picture.png"
			
			sizes="100vw"
			alt="Image-based CAPTCHA showing traffic lights"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://onezero.medium.com/why-captcha-pictures-are-so-unbearably-depressing-20679b8cf84a'>Medium</a>. (<a href='https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/3-captcha-picture.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Regardless of the method, a computer or algorithm ultimately determines whether the test-taker is human or machine. This authentication service has spawned many offshoots, including reCAPTCHA and hCAPTCHA. It has even led to the creation of entire companies, such as GeeTest and Arkose Labs. The Google-owned automated system reCAPTCHA requires users to click a checkbox labeled “I’m not a robot” for authentication. It runs an adaptive analysis in the background to assign a risk score. hCAPTCHA is an image-classification-based alternative.</p>

<p>Other authentication methods include multi-factor authentication (MFA), QR codes, temporary personal identification numbers (PINs), and biometrics. They do not follow the challenge-response formula, but serve fundamentally similar purposes.</p>

<p>These offshoots are intended to be better than the original, but they often fail to meet modern accessibility standards. Take hCaptcha, for instance, which uses a cookie to let you bypass the challenge-response test entirely. It’s a great idea in theory, but it doesn’t work in practice.</p>

<p>You’re supposed to receive a one-time code via email that you send to a specific number over SMS. Users <a href="https://fireborn.mataroa.blog/blog/hellcaptcha-accessibility-theater-at-its-worst/">report receiving endless error messages</a>, forcing them to complete the standard text CAPTCHA. This is only available if the site explicitly enabled it during configuration. If it is not set up, you must complete an image challenge that does not recognize screen readers.</p>

<p>Even when the initial process works, subsequent authentication relies on a third-party cross-site cookie, which most browsers block automatically. Also, the code expires after a short period, so you have to redo the entire process if it takes you too long to move on to the next step.</p>

<h2 id="why-do-teams-use-captcha-and-similar-authentication-methods">Why Do Teams Use CAPTCHA And Similar Authentication Methods?</h2>

<p>CAPTCHA is common because it is <strong>easy to set up</strong>. Developers can program it to appear, and it conducts the test automatically. This way, they can focus on more important matters while still preventing spam, fraud, and abuse. These tools are supposed to make it easier for humans to use the internet safely, but they often keep real people from logging in.</p>

<p>These tests result in a <strong>poor user experience</strong> overall. One study found users <a href="https://arxiv.org/abs/2311.10911">wasted over 819 million hours</a> on over 512 billion reCAPTCHA v2 sessions as of 2023. Despite it all, bots prevail. Machine learning models can solve text-based CAPTCHA within fractions of a second with over 97% accuracy.</p>

<p>A 2024 study on Google’s reCAPTCHA v2 &mdash; which is still widely used despite the rollout of reCAPTCHA v3 &mdash; found bots can solve image classification CAPTCHA <a href="https://arstechnica.com/ai/2024/09/ai-defeats-traffic-image-captcha-in-another-triumph-of-machine-over-man/">with up to 100% accuracy</a>, depending on the object they are tasked with identifying. The researchers used a free, open-source model, which means that bad actors could easily replicate their work.</p>

<h2 id="why-should-web-developers-stop-using-captcha">Why Should Web Developers Stop Using CAPTCHA?</h2>

<p>Authentication methods like CAPTCHA have an accessibility problem. Machine learning advances forced these services to grow increasingly complex. Even still, they are not foolproof. Bots get it right more than people do. Research shows they can <a href="https://arxiv.org/abs/2307.12108">complete reCAPTCHA within 17.5 seconds</a>, achieving 85% accuracy. Humans take longer and are less accurate.</p>

<p>Many people fail CAPTCHA tests and have no idea what they did wrong. For example, a prompt instructing users to “select all squares with traffic lights” seems simple enough, but it gets complicated if a sliver of the pole is in another square. Should they select that box, or is that what an algorithm would do?</p>

<p>Although bot capabilities have grown by magnitudes, humans have remained the same. As tests get progressively more difficult, they feel less inclined to attempt them. One survey shows <a href="https://www.regpacks.com/blog/user-onboarding-mistakes/">nearly 59% of people</a> will stop using a product after several bad experiences. If authentication is too cumbersome or complex, they might stop using the website entirely.</p>

<p>People can fail these tests for various reasons, including technical ones. If they block third-party cookies, have a local proxy running, or have not updated their browser in a while, they may keep failing, regardless of how many times they try.</p>

<h2 id="authentication-issues-with-captcha">Authentication Issues With CAPTCHA</h2>

<p>Due to the reasons mentioned above, most types of CAPTCHA are inherently inaccessible. This is especially true for people with disabilities, as these challenge-response tests were not designed with their needs in mind. Some of the common issues include the following:</p>

<h3 id="issues-related-to-visuals-and-screen-reader-use">Issues Related To Visuals And Screen Reader Use</h3>

<p>Screen readers cannot read standard visual CAPTCHAs, such as the distorted text test, since the jumbled, contorted words are not machine-readable. The image classification and sliding puzzle methods are similarly inaccessible.</p>

<p>In one WebAIM survey conducted from 2023 to 2024, screen reader users <a href="https://webaim.org/projects/screenreadersurvey10/#problematic">agreed CAPTCHA was the most problematic</a> item, ranking it above ambiguous links, unexpected screen changes, missing alt text, inaccessible search, and lack of keyboard accessibility. Its spot at the top has remained largely unchanged for over a decade, illustrating its history of inaccessibility.</p>

<h3 id="issues-related-to-hearing-and-audio-processing">Issues Related To Hearing and Audio Processing</h3>

<p>Audio CAPTCHAs are relatively uncommon because web development best practices advise against autoplay audio and emphasize the importance of user controls. However, audio CAPTCHAs still exist. People who are hard of hearing or deaf may encounter a barrier when attempting these tests. Even with assistive technology, the intentional audio distortion and background noise make these samples challenging for individuals with auditory processing disorders to comprehend.</p>

<h3 id="issues-related-to-motor-and-dexterity">Issues Related To Motor And Dexterity</h3>

<p>Tests requiring motor and dexterity skills can be challenging for those with motor impairments or physical disabilities. For example, someone with a hand tremor may find the sliding puzzles difficult. Also, the image classification tests that load more images until none that fit the criteria are left may pose a challenge.</p>

<h3 id="issues-related-to-cognition-and-language">Issues Related To Cognition And Language</h3>

<p>As CAPTCHAs become increasingly complex, some developers are turning to tests that require a combination of creative and critical thinking. Those that require users to solve a math problem or complete a puzzle can be challenging for people with dyslexia, dyscalculia, visual processing disorders, or cognitive impairments.</p>

<h2 id="why-assistive-technology-won-t-bridge-the-gap">Why Assistive Technology Won’t Bridge The Gap</h2>

<p>CAPTCHAs are intentionally designed for humans to interpret and solve, so assistive technology like screen readers and hands-free controls may be of little help. ReCAPTCHA in particular poses an issue because it analyzes background activity. If it flags the accessibility devices as bots, it will serve a potentially inaccessible CAPTCHA.</p>

<p>Even if this technology could bridge the gap, web developers shouldn’t expect it to. Industry standards dictate that they should follow universal design principles to make their websites as accessible and functional as possible.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aCAPTCHA%e2%80%99s%20accessibility%20issues%20could%20be%20forgiven%20if%20it%20were%20an%20effective%20security%20tool,%20but%20it%20is%20far%20from%20foolproof%20since%20bots%20get%20it%20right%20more%20than%20humans%20do.%20Why%20keep%20using%20a%20method%20that%20is%20ineffective%20and%20creates%20barriers%20for%20people%20with%20disabilities?%0a&url=https://smashingmagazine.com%2f2025%2f11%2faccessibility-problem-authentication-methods-captcha%2f">
      
CAPTCHA’s accessibility issues could be forgiven if it were an effective security tool, but it is far from foolproof since bots get it right more than humans do. Why keep using a method that is ineffective and creates barriers for people with disabilities?

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>There are better alternatives.</p>

<h2 id="principles-for-accessible-authentication">Principles For Accessible Authentication</h2>

<p>The idea that humans should consistently outperform algorithms is outdated. Better authentication methods exist, such as <strong>multifactor authentication (MFA)</strong>. The two-factor authentication market will be <a href="https://designerly.com/hacked-wordpress-site/">worth an estimated $26.7 billion</a> by 2027, underscoring its popularity. This tool is more effective than a CAPTCHA because it <strong>prevents unauthorized access, even with legitimate credentials</strong>.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/4-multifactor-authentication.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/4-multifactor-authentication.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/4-multifactor-authentication.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/4-multifactor-authentication.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/4-multifactor-authentication.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/4-multifactor-authentication.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/4-multifactor-authentication.jpg"
			
			sizes="100vw"
			alt="Multifactor authentication"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://unsplash.com/photos/a-screenshot-of-a-phone-RMIsZlv8qv4'>unsplash.com</a>. (<a href='https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/4-multifactor-authentication.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Ensure your MFA technique is accessible. Instead of having website visitors transcribe complex codes, you should send push notifications or SMS messages. Rely on the verification code autofill to automatically capture and enter the code. Alternatively, you can introduce a “remember this device” feature to skip authentication on trusted devices.</p>

<p>Apple’s two-factor authentication approach is designed this way. A trusted device automatically displays a six-digit verification code, so they do not have to search for it. When prompted, iPhone users can tap the suggestion that appears above their mobile keyboard for autofill.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/5-apple-two-factor-authentication.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="546"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/5-apple-two-factor-authentication.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/5-apple-two-factor-authentication.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/5-apple-two-factor-authentication.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/5-apple-two-factor-authentication.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/5-apple-two-factor-authentication.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/5-apple-two-factor-authentication.png"
			
			sizes="100vw"
			alt=""
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://support.apple.com/en-us/102660'>Apple</a>. (<a href='https://files.smashing.media/articles/accessibility-problem-authentication-methods-captcha/5-apple-two-factor-authentication.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p><strong>Single sign-on</strong> is another option. This session and user authentication service allows people to log in to multiple websites or applications with a single set of login credentials, minimizing the need for repeated identity verification.</p>

<p><strong>One-time-use “magic links”</strong> are an excellent alternative to reCAPTCHA and temporary PINs. Rather than remembering a code or solving a puzzle, the user clicks on a button. Avoid imposing deadlines because, according to WCAG Success Criterion 2.2.3, users <a href="https://www.w3.org/WAI/WCAG22/Understanding/no-timing.html">should not face time limits</a> since those with disabilities may need more time to complete specific actions.</p>

<p>Alternatively, you could use Cloudflare Turnstile. It authenticates <a href="https://developers.cloudflare.com/turnstile/">without showing a CAPTCHA</a>, and most people never even have to check a box or hit a button. The software works by issuing a small JavaScript challenge behind the scenes to automatically differentiate between bots and humans. Cloudflare Turnstile can be embedded into any website, making it an excellent alternative to standard classification tasks.</p>

<h2 id="testing-and-evaluation-of-accessible-authentication-designs">Testing And Evaluation Of Accessible Authentication Designs</h2>

<p>Testing and evaluating your accessible alternative authentication methods is essential. Many designs look good on paper but do not work in practice. If possible, gather feedback from actual users. An open beta may be an effective way to maximize visibility.</p>

<blockquote>Remember, general accessibility considerations do not only apply to people with disabilities. They also include those who are neurodivergent, lack access to a mobile device, or use assistive technology. Ensure your alternative designs consider these individuals.</blockquote> 

<p>Realistically, you cannot create a perfect system since everyone is unique. Many people struggle to follow multistep processes, solve equations, process complex instructions, or remember passcodes. While universal web design principles can improve flexibility, no single solution can meet everyone’s needs.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aRegardless%20of%20the%20authentication%20technique%20you%20use,%20you%20should%20present%20users%20with%20multiple%20authentication%20options%20upfront.%20They%20know%20their%20capabilities%20best,%20so%20let%20them%20decide%20what%20to%20use%20instead%20of%20trying%20to%20over-engineer%20a%20solution%20that%20works%20for%20every%20edge%20case.%0a&url=https://smashingmagazine.com%2f2025%2f11%2faccessibility-problem-authentication-methods-captcha%2f">
      
Regardless of the authentication technique you use, you should present users with multiple authentication options upfront. They know their capabilities best, so let them decide what to use instead of trying to over-engineer a solution that works for every edge case.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<h2 id="address-the-accessibility-problem-with-design-changes">Address The Accessibility Problem With Design Changes</h2>

<p>A person with hand tremors may be unable to complete a sliding puzzle, while someone with an audio processing disorder may have trouble with distorted audio samples. However, you cannot simply replace CAPTCHAs with alternatives because they are often equally inaccessible.</p>

<p>QR codes, for example, may be difficult to scan for those with reduced fine motor control. People who are visually impaired may struggle to find it on the screen. Similarly, biometrics can pose an issue for people with facial deformities or a limited range of motion. Addressing the accessibility problem requires <strong>creative thinking</strong>.</p>

<p>You can start by visiting the <a href="https://www.w3.org/WAI/tutorials/">Web Accessibility Initiative’s accessibility tutorials</a> for developers to better understand universal design. Although these tutorials focus more on content than authentication, you can still use them to your advantage. The W3C Group Draft Note <a href="https://www.w3.org/TR/turingtest/">on the Inaccessibility of CAPTCHA</a> provides more relevant guidance.</p>

<p>Getting started is as easy as researching <strong>best practices</strong>. Understanding the basics is essential because there is no universal solution for accessible web design. If you want to optimize accessibility, consider sourcing feedback from the people who actually visit your website.</p>

<h3 id="further-reading">Further Reading</h3>

<ul>
<li>“<a href="https://link.springer.com/book/10.1007/978-3-030-29345-1">The CAPTCHA: Perspectives and Challenges</a>,” Darko Brodić and Alessia Amelio</li>
<li>“<a href="https://www.smashingmagazine.com/2023/08/designing-accessible-text-over-images-part1/">Designing Accessible Text Over Images: Best Practices, Techniques, And Resources</a>,” Hannah Milan</li>
<li>“<a href="https://www.smashingmagazine.com/2011/03/in-search-of-the-perfect-captcha/">In Search Of The Best CAPTCHA</a>,” David Bushell</li>
<li>“<a href="https://www.smashingmagazine.com/2025/05/wcag-3-proposed-scoring-model-shift-accessibility-evaluation/">WCAG 3.0’s Proposed Scoring Model: A Shift in Accessibility Evaluation</a>,” Mikhail Prosmitskiy</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Mikhail Prosmitskiy</author><title>WCAG 3.0’s Proposed Scoring Model: A Shift In Accessibility Evaluation</title><link>https://www.smashingmagazine.com/2025/05/wcag-3-proposed-scoring-model-shift-accessibility-evaluation/</link><pubDate>Fri, 02 May 2025 11:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/05/wcag-3-proposed-scoring-model-shift-accessibility-evaluation/</guid><description>WCAG is evolving. Since 1999, the Web Content Accessibility Guidelines have defined accessibility in binary terms: either a success criterion is met or not. But real user experience is rarely that simple. WCAG 3.0 rethinks the model — prioritizing usability over compliance and shifting the focus toward the quality of access rather than the mere presence of features. Could this be the start of a new era in accessibility?</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/05/wcag-3-proposed-scoring-model-shift-accessibility-evaluation/" />
              <title>WCAG 3.0’s Proposed Scoring Model: A Shift In Accessibility Evaluation</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>WCAG 3.0’s Proposed Scoring Model: A Shift In Accessibility Evaluation</h1>
                  
                    
                    <address>Mikhail Prosmitskiy</address>
                  
                  <time datetime="2025-05-02T11:00:00&#43;00:00" class="op-published">2025-05-02T11:00:00+00:00</time>
                  <time datetime="2025-05-02T11:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>Since their introduction in <a href="https://www.w3.org/TR/WAI-WEBCONTENT/">1999</a>, the <a href="https://www.w3.org/WAI/standards-guidelines/wcag/">Web Content Accessibility Guidelines</a> (WCAG) have shaped how we design and develop inclusive digital products. The WCAG 2.x series, released in <a href="https://www.w3.org/TR/WCAG20/">2008</a>, introduced clear technical criteria judged in a binary way: either a success criterion is met or not. While this model has supported regulatory clarity and auditability, its <strong>“all-or-nothing” nature</strong> often fails to reflect the nuance of actual user experience (UX).</p>

<p>Over time, that disconnect between technical conformance and lived usability has become harder to ignore. People engage with digital systems in complex, often nonlinear ways: navigating multistep flows, dynamic content, and interactive states. In these scenarios, checking whether an element passes a rule doesn’t always answer the main question: can someone actually use it?</p>

<p><a href="https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/">WCAG 3.0</a> is still in <a href="https://www.w3.org/TR/wcag-3.0/#sotd">draft</a>, but is evolving &mdash; and it represents a <a href="https://www.w3.org/TR/wcag-3.0/#about-wcag-3-0">fundamental rethinking</a> of how we evaluate accessibility. Rather than asking whether a requirement is technically met, it asks how well users with disabilities can complete meaningful tasks. Its new outcome-based model introduces a <a href="https://www.w3.org/TR/wcag-3.0-explainer/#additional-concepts">flexible scoring system</a> that <strong>prioritizes usability over compliance</strong>, shifting focus toward the quality of access rather than the mere presence of features.</p>

<h2 id="draft-status-ambitious-but-still-evolving">Draft Status: Ambitious, But Still Evolving</h2>

<p>WCAG 3.0 was first introduced as a public working draft by the <a href="https://www.w3.org/">World Wide Web Consortium</a> (W3C) <a href="https://www.w3.org/WAI/about/groups/agwg/">Accessibility Guidelines Working Group</a> in early <a href="https://www.w3.org/TR/2021/WD-wcag-3.0-20210121/">2021</a>. The draft is still under active development and is not expected to reach <a href="https://www.w3.org/standards/about/#what-are-web-standards">W3C Recommendation status</a> for <a href="https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/#timeline">several years, if not decades</a>, by some accounts. This extended timeline reflects both the complexity of the task and the ambition behind it:</p>

<blockquote>WCAG 3.0 isn’t just an update &mdash; it’s a paradigm shift.</blockquote>

<p>Unlike WCAG 2.x, which focused primarily on web pages, WCAG 3.0 aims to cover a much <a href="https://www.w3.org/TR/wcag-3.0-requirements/#wcag-3-0-scope">broader ecosystem</a>, including applications, tools, connected devices, and emerging interfaces like voice interaction and extended reality. It also <a href="https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/#wcag-3-name">rebrands itself</a> as the W3C Accessibility Guidelines (while the WCAG acronym remains the same), signaling that <strong>accessibility is no longer a niche concern</strong> &mdash; it’s a baseline expectation across the digital world.</p>

<p>Importantly, WCAG 3.0 <a href="https://www.w3.org/TR/wcag-3.0-explainer/#intro">will not immediately replace 2.x</a>. Both standards will coexist, and conformance to WCAG 2.2 will continue to be valid and necessary for some time, especially in legal and policy contexts.</p>

<p>This expansion isn’t just technical.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aWCAG%203.0%20reflects%20a%20deeper%20philosophical%20shift:%20accessibility%20is%20moving%20from%20a%20model%20of%20compliance%20toward%20a%20model%20of%20effectiveness.%0a&url=https://smashingmagazine.com%2f2025%2f05%2fwcag-3-proposed-scoring-model-shift-accessibility-evaluation%2f">
      
WCAG 3.0 reflects a deeper philosophical shift: accessibility is moving from a model of compliance toward a model of effectiveness.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>Rules alone can’t capture whether a system truly works for someone. That’s why WCAG 3.0 leans into <strong>flexibility</strong> and <strong>future-proofing</strong>, aiming to support evolving technologies and real-world use over time. It formalizes a principle long understood by practitioners:</p>

<blockquote>Inclusive design isn’t about passing a test; it’s about enabling people.</blockquote>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p><strong>Web forms</strong> are at the center of every meaningful interaction. Meet Adam Silver&rsquo;s <strong><a href="https://www.smashingmagazine.com/printed-books/form-design-patterns/">Form Design Patterns</a></strong>, a practical guide to <strong>designing and building forms</strong> for the web.</p>
<a data-instant href="https://www.smashingmagazine.com/printed-books/form-design-patterns/" class="btn btn--green btn--large" style="">Jump to table of contents&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="https://www.smashingmagazine.com/printed-books/form-design-patterns/" class="feature-panel-image-link">
<div class="feature-panel-image"><picture><source type="image/avif" srcSet="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/64e57b41-b7f1-4ae3-886a-806cce580ef9/form-design-patterns-shop-image-1-1.avif" />
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/51e0f837-d85d-4b28-bfab-1c9a47f0ce33/form-design-patterns-shop-image.png"
    alt="Feature Panel"
    width="481"
    height="698"
/>
</picture>
</div>
</a>
</div>
</aside>
</div>

<h2 id="a-new-structure-from-success-criteria-to-outcomes-and-methods">A New Structure: From Success Criteria To Outcomes And Methods</h2>

<p>WCAG 2.x is structured around <a href="https://www.w3.org/WAI/fundamentals/accessibility-principles/">four foundational principles</a> &mdash; Perceivable, Operable, Understandable, and Robust (aka POUR) &mdash; and testable success criteria organized into <a href="https://www.w3.org/WAI/WCAG22/Understanding/conformance#levels">three conformance levels</a> (A, AA, AAA). While technically precise, these criteria often emphasize implementation over impact.</p>

<p>WCAG 3.0 <a href="https://www.w3.org/TR/wcag-3.0/#conformance-0">reorients this structure</a> toward user needs and real outcomes. Its hierarchy is built on:</p>

<ul>
<li><a href="https://www.w3.org/TR/wcag-3.0/#guidelines"><strong>Guidelines</strong></a>: High-level accessibility goals tied to specific user needs.</li>
<li><a href="https://www.w3.org/TR/wcag-3.0-explainer/#guidelines"><strong>Outcomes</strong></a>: Testable, user-centered statements (e.g., “Users have alternatives for time-based media”).</li>
<li><a href="https://www.w3.org/TR/wcag-3.0-explainer/#requirements-and-methods"><strong>Methods</strong></a>: Technology-specific or agnostic techniques that help achieve the outcomes, including code examples and test instructions.</li>
<li><a href="https://www.w3.org/TR/wcag-3.0-explainer/#structure"><strong>How-To Guides</strong></a>: Narrative documentation that provides practical advice, user context, and design considerations.</li>
</ul>

<p>This shift is more than organizational. It reflects a deeper commitment to aligning technical implementation with UX. Outcomes speak <a href="https://www.w3.org/TR/wcag-3.0-requirements/#readability">the language of capability</a>, which is about what users should be able to do (rather than just technical presence).</p>

<p>Crucially, outcomes are also where conformance scoring begins to take shape. For example, imagine a checkout flow on an e-commerce website. Under WCAG 2.x, if even one field in the checkout form lacks a label, <a href="https://www.w3.org/WAI/WCAG22/Understanding/info-and-relationships.html">the process may fail AA conformance entirely</a>. However, under WCAG 3.0, that same flow might be evaluated <a href="https://www.w3.org/TR/wcag-3.0-explainer/#conformance-models">across multiple outcomes</a> (such as keyboard navigation, form labeling, focus management, and error handling), with each outcome receiving a separate score. If most areas score well but the error messaging is poor, the overall rating might be “Good” instead of “Excellent”, prompting targeted improvements without negating the entire flow’s accessibility.</p>

<h2 id="from-binary-checks-to-graded-scores">From Binary Checks To Graded Scores</h2>

<p>Rather than relying on pass or fail outcomes, WCAG 3.0 <a href="https://www.w3.org/TR/wcag-3.0-explainer/#additional-concepts">introduces a scoring model</a> that reflects how well accessibility is supported. This shift allows teams to <strong>recognize partial successes</strong> and prioritize real improvements.</p>

<h3 id="how-scoring-works">How Scoring Works</h3>

<p>Each outcome in WCAG 3.0 is evaluated through <a href="https://www.w3.org/TR/wcag-3.0-explainer/#types-of-tests">one or more atomic tests</a>. These can include the following:</p>

<ul>
<li><strong>Binary tests</strong>: “Yes” and “no” outcomes (e.g., does every image have alternative text?)</li>
<li><strong>Percentage-based tests</strong>: Coverage-based scoring (e.g., what percentage of form fields have labels?)</li>
<li><strong>Qualitative tests</strong>: Rated judgments based on criteria (e.g., how descriptive is the alternative text?)</li>
</ul>

<p>The result of these tests produces a score for each outcome, often normalized on a 0-4 or 0-5 scale, with labels like Poor, Fair, Good, and Excellent. These scores are then aggregated across functional categories (vision, mobility, cognition, etc.) and user flows.</p>

<p>This allows teams to measure progress, not just compliance. A product that improves from “Fair” to “Good” over time shows real <strong>evolution</strong> &mdash; <a href="https://www.w3.org/TR/wcag-3.0-requirements/#broad-disability-support">a concept</a> that doesn’t exist in WCAG 2.x.</p>

<h3 id="critical-errors-a-balancing-mechanism">Critical Errors: A Balancing Mechanism</h3>

<p>To ensure that severity still matters, WCAG 3.0 introduces <a href="https://www.w3.org/TR/wcag-3.0-explainer/#additional-concepts">critical errors</a>, which are high-impact accessibility failures that can override an otherwise positive score.</p>

<p>For example, consider a checkout flow. Under WCAG 2.x, a single missing label might cause the entire flow to fail conformance. WCAG 3.0, however, evaluates multiple outcomes &mdash; like form labeling, keyboard access, and error handling &mdash; each with its own score. Minor issues, such as unclear error messages or a missing label on an optional field, might lower the rating from “Excellent” to “Good”, without invalidating the entire experience.</p>

<p>But if a user cannot complete a core action, like submitting the form, making a purchase, or logging in, that constitutes a <strong>critical error</strong>. These failures directly block task completion and significantly reduce the overall score, regardless of how polished the rest of the experience is.</p>

<p>On the other hand, problems with non-essential features &mdash; like uploading a profile picture or changing a theme color &mdash; are considered lower-impact and won’t weigh as heavily in the evaluation.</p>

<div class="partners__lead-place"></div>

<h2 id="conformance-levels-bronze-silver-gold">Conformance Levels: Bronze, Silver, Gold</h2>

<p>In place of categorizing conformance in tiers of Level A, Level AA, and Level AAA, WCAG 3.0 proposes <a href="https://www.w3.org/TR/wcag-3.0-explainer/#additional-concepts">three different conformance tiers</a>:</p>

<ul>
<li><strong>Bronze</strong>: The new minimum. It is <a href="https://www.w3.org/TR/wcag-3.0-explainer/#conformance-models">comparable to WCAG 2.2 Level AA</a>, but based on scoring and foundational outcomes. The requirements are considered achievable via automated and guided manual testing.</li>
<li><strong>Silver</strong>: This is a higher standard, requiring broader coverage, higher scores, and <a href="https://www.w3.org/TR/wcag-3.0-requirements/#design_principles">usability validation from people with disabilities</a>.</li>
<li><strong>Gold</strong>: The highest tier. Represents exemplary accessibility, likely requiring inclusive design processes, innovation, and extensive user involvement.</li>
</ul>

<p>Unlike in WCAG 2.2, where Level AAA is often seen as aspirational and inconsistent, these levels are intended to <strong>incentivize progression</strong>. They can also <a href="https://www.w3.org/TR/wcag-3.0/#defining-conformance-scope">be scoped</a> in the sense that teams can claim conformance for a checkout flow, mobile app, or specific feature, allowing iterative improvement.</p>

<h2 id="what-you-should-do-now">What You Should Do Now</h2>

<p>While WCAG 3.0 is still being developed, its direction is clear. That said, it’s important to acknowledge that the guidelines are not expected to be finalized in a few years. Here’s how teams can prepare:</p>

<ul>
<li><strong>Continue pursuing WCAG 2.2 Level AA.</strong> <a href="https://www.w3.org/TR/wcag-3.0/#about-wcag-3-0">It remains</a> the most robust, recognized standard.</li>
<li><a href="https://www.w3.org/TR/wcag-3.0-explainer/#abstract"><strong>Familiarize yourself</strong></a> <strong>with WCAG 3.0 drafts</strong>, especially the outcomes and scoring model.</li>
<li><a href="https://www.w3.org/TR/wcag-3.0-requirements/#oppotunities_usability"><strong>Start thinking in outcomes.</strong></a> Focus on what users need to accomplish, not just what features are present.</li>
<li><strong>Embed accessibility into workflows.</strong> Shift left. Don’t test at the end &mdash; design and build with access in mind.</li>
<li><a href="https://www.w3.org/TR/wcag-3.0-requirements/#design_principles"><strong>Involve</strong></a> <strong>users</strong> with disabilities early and regularly.</li>
</ul>

<p>These practices won’t just make your product more inclusive; they’ll position your team to excel under WCAG 3.0.</p>

<h2 id="potential-downsides">Potential Downsides</h2>

<p>Even though WCAG 3.0 presents a bold step toward more <strong>holistic accessibility</strong>, several structural risks deserve early attention, especially for organizations navigating regulation, scaling design systems, or building sustainable accessibility practices. Importantly, many of these risks are interconnected: challenges in one area may amplify issues in others.</p>

<h3 id="subjective-scoring">Subjective Scoring</h3>

<p>The move from binary pass or fail criteria to scored evaluations introduces room for <strong>subjective interpretation</strong>. Without standardized calibration, the same user flow might receive different scores depending on the evaluator. This makes comparability and repeatability harder, particularly in procurement or multi-vendor environments. A simple alternative text might be rated as “adequate” by one team and “unclear” by another.</p>

<h3 id="reduced-compliance-clarity">Reduced Compliance Clarity</h3>

<p>That same subjectivity leads to a second concern: <strong>the erosion of clear compliance thresholds</strong>. Scored evaluations replace the binary clarity of “compliant” or “not” with a more flexible, but less definitive, outcome. This could complicate legal enforcement, contractual definitions, and audit reporting. In practice, a product might earn a “Good” rating while still presenting critical usability gaps for certain users, creating a disconnect between score and actual access.</p>

<h3 id="legal-and-policy-misalignment">Legal and Policy Misalignment</h3>

<p>As clarity around compliance blurs, so does alignment with existing legal frameworks. Many current laws explicitly reference WCAG 2.x and its A, AA, and AAA levels (e.g. <a href="https://www.section508.gov/manage/laws-and-policies/">Section 508 of the Rehabilitation Act of 1973</a>, <a href="https://commission.europa.eu/strategy-and-policy/policies/justice-and-fundamental-rights/disability/union-equality-strategy-rights-persons-disabilities-2021-2030/european-accessibility-act_en">European Accessibility Act</a>, <a href="https://www.gov.uk/guidance/accessibility-requirements-for-public-sector-websites-and-apps">The Public Sector Bodies (Websites and Mobile Applications) (No. 2) Accessibility Regulations 2018</a>).</p>

<p>Until WCAG 3.0 is formally mapped to those standards, its use in regulated contexts may introduce risk. Teams operating in healthcare, finance, or public sectors will likely need to maintain dual conformance strategies in the interim, increasing cost and complexity.</p>

<h3 id="risk-of-minimum-viable-accessibility">Risk Of Minimum Viable Accessibility</h3>

<p>Perhaps most concerning, this ambiguity can set the stage for a “minimum viable accessibility” mindset. Scored models risk encouraging “Bronze is good enough” thinking, particularly in deadline-driven environments. A team might deprioritize improvements once they reach a passing grade, even if essential barriers remain.</p>

<p>For example, a mobile app with strong keyboard support but missing audio transcripts could still achieve a passing tier, leaving some users excluded.</p>

<div class="partners__lead-place"></div>

<h2 id="conclusion">Conclusion</h2>

<p>WCAG 3.0 marks a <strong>new era in accessibility</strong> &mdash; one that better reflects the diversity and complexity of real users. By shifting from checklists to scored evaluations and from rigid technical compliance to <a href="https://www.w3.org/TR/wcag-3.0-requirements/#broad-disability-support">practical usability</a>, it encourages teams to prioritize real-world impact over theoretical perfection.</p>

<p>As one might say, <em>“It’s not about the score. It’s about who can use the product.”</em> In my own experience, I’ve seen teams pour hours into fixing minor color contrast issues while overlooking broken keyboard navigation, leaving screen reader users unable to complete essential tasks. WCAG 3.0’s focus on outcomes reminds us that accessibility is fundamentally about <a href="https://www.w3.org/TR/wcag-3.0-explainer/#goals">functionality and inclusion</a>.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aAt%20the%20same%20time,%20WCAG%203.0%e2%80%99s%20proposed%20scoring%20models%20introduce%20new%20responsibilities.%20Without%20clear%20calibration,%20stronger%20enforcement%20patterns,%20and%20a%20cultural%20shift%20away%20from%20%e2%80%9cgood%20enough,%e2%80%9d%20we%20risk%20losing%20the%20very%20clarity%20that%20made%20WCAG%202.x%20enforceable%20and%20actionable.%20The%20promise%20of%20flexibility%20only%20works%20if%20we%20use%20it%20to%20aim%20higher,%20not%20to%20settle%20earlier.%0a&url=https://smashingmagazine.com%2f2025%2f05%2fwcag-3-proposed-scoring-model-shift-accessibility-evaluation%2f">
      
At the same time, WCAG 3.0’s proposed scoring models introduce new responsibilities. Without clear calibration, stronger enforcement patterns, and a cultural shift away from “good enough,” we risk losing the very clarity that made WCAG 2.x enforceable and actionable. The promise of flexibility only works if we use it to aim higher, not to settle earlier.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>For teams across design, development, and product leadership, this shift is a chance to rethink what success means. Accessibility isn’t about ticking boxes &mdash; it’s about enabling people.</p>

<p>By preparing now, being mindful of the risks, and focusing on user outcomes, we don’t just get ahead of WCAG 3.0 &mdash; we build digital experiences that are truly usable, sustainable, and inclusive.</p>

<h3 id="further-reading-on-smashingmag">Further Reading On SmashingMag</h3>

<ul>
<li>“<a href="https://www.smashingmagazine.com/2023/10/roundup-wcag-explainers/">A Roundup Of WCAG 2.2 Explainers</a>,” Geoff Graham</li>
<li>“<a href="https://www.smashingmagazine.com/2024/07/getting-bottom-minimum-wcag-conformant-interactive-element-size/">Getting To The Bottom Of Minimum WCAG-Conformant Interactive Element Size</a>,” Eric Bailey</li>
<li>“<a href="https://www.smashingmagazine.com/2024/06/how-make-strong-case-accessibility/">How To Make A Strong Case For Accessibility</a>,” Vitaly Friedman</li>
<li>“<a href="https://www.smashingmagazine.com/2024/02/web-designer-accessibility-advocacy-toolkit/">A Designer’s Accessibility Advocacy Toolkit</a>,” Yichan Wang</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(gg, yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Eduard Kuric</author><title>Human-Centered Design Through AI-Assisted Usability Testing: Reality Or Fiction?</title><link>https://www.smashingmagazine.com/2025/02/human-centered-design-ai-assisted-usability-testing/</link><pubDate>Wed, 19 Feb 2025 10:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2025/02/human-centered-design-ai-assisted-usability-testing/</guid><description>Could AI assist UX researchers by dynamically asking follow-up questions based on participant responses? Eduard Kuric discusses the significance of context in the creation of relevant follow-up questions for unmoderated usability testing, how an AI tasked with interactive follow-up should be validated, and the potential &amp;mdash; along with the risks &amp;mdash; of AI interaction in usability testing.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2025/02/human-centered-design-ai-assisted-usability-testing/" />
              <title>Human-Centered Design Through AI-Assisted Usability Testing: Reality Or Fiction?</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Human-Centered Design Through AI-Assisted Usability Testing: Reality Or Fiction?</h1>
                  
                    
                    <address>Eduard Kuric</address>
                  
                  <time datetime="2025-02-19T10:00:00&#43;00:00" class="op-published">2025-02-19T10:00:00+00:00</time>
                  <time datetime="2025-02-19T10:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>Unmoderated usability testing has been steadily <a href="https://www.nngroup.com/articles/remote-usability-testing-costs/">growing</a> <a href="https://boagworld.com/usability/unmoderated-usability-testing/">more popular</a> with the assistance of online UX research tools. Allowing participants to complete usability testing without a moderator, at their own pace and convenience, can have a number of advantages.</p>

<p>The first is the liberation from a strict schedule and the availability of moderators, meaning that a lot more participants can be recruited on a <strong>more cost-effective</strong> and <strong>quick basis</strong>. It also lets your team see how users interact with your solution in their <strong>natural environment</strong>, with the setup of their own devices. Overcoming the challenges of distance and differences in time zones in order to obtain data from all around the globe also becomes much easier.</p>

<p>However, forgoing the use of moderators also has its drawbacks. The moderator brings <strong>flexibility</strong>, as well as a <strong>human touch</strong> into usability testing. Since they are in the same (virtual) space as the participants, the moderator usually has a good idea of what’s going on. They can <strong>react in real-time</strong> depending on what they witness the participant do and say. A moderator can carefully remind the participants to vocalize their thoughts. To the participant, thinking aloud in front of a moderator can also feel more natural than just talking to themselves. When the participant does something interesting, the moderator can prompt them for further comment.</p>

<p>Meanwhile, a traditional unmoderated study lacks such flexibility. In order to complete tasks, participants receive a fixed set of instructions. Once they are done, they can be asked to complete a static questionnaire, and that’s it.</p>

<p>The feedback that the research &amp; design team receives will be completely dependent on what information the participants provide on their own. Because of this, the phrasing of instructions and questions in unmoderated testing is extremely crucial. Although, even if everything is planned out perfectly, the <strong>lack of adaptive questioning</strong> means that a lot of the information will still remain unsaid, especially with regular people who are not trained in providing user feedback.</p>

<blockquote>If the usability test participant misunderstands a question or doesn’t answer completely, the moderator can always ask for a follow-up to get more information. A question then arises: Could something like that be handled by AI to upgrade unmoderated testing?</blockquote>

<p>Generative AI could present a new, potentially powerful tool for addressing this dilemma once we consider their current capabilities. Large language models (LLMs), in particular, can lead conversations that can appear almost humanlike. If LLMs could be incorporated into usability testing to interactively enhance the collection of data by conversing with the participant, they might significantly augment the ability of researchers to obtain detailed personal feedback from great numbers of people. With human participants as the source of the actual feedback, this is an excellent example of <strong>human-centered AI</strong> as it keeps humans in the loop.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/1-unmoderated-testing.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="438"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/1-unmoderated-testing.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/1-unmoderated-testing.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/1-unmoderated-testing.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/1-unmoderated-testing.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/1-unmoderated-testing.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/1-unmoderated-testing.png"
			
			sizes="100vw"
			alt="Illustration of unmoderated testing where a participant has some questions"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Illustration by <a href='https://dribbble.com/m_opalek'>Michal Opalek</a>. (<a href='https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/1-unmoderated-testing.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>There are quite a number of gaps in the research of AI in UX. To help with fixing this, we at <a href="https://www.uxtweak.com/">UXtweak research</a> have conducted a case study aimed at investigating <strong>whether AI could generate follow-up questions that are meaningful and result in valuable answers from the participants</strong>.</p>

<p>Asking participants follow-up questions to extract more in-depth information is just one portion of the moderator’s responsibilities. However, it is a reasonably-scoped subproblem for our evaluation since it encapsulates the ability of the moderator to react to the context of the conversation in real time and to encourage participants to share salient information.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="/printed-books/typescript-in-50-lessons/">“TypeScript in 50 Lessons”</a></strong>, our shiny new guide to TypeScript. With detailed <strong>code walkthroughs</strong>, hands-on examples and common gotchas. For developers who know enough <strong>JavaScript</strong> to be dangerous.</p>
<a data-instant href="/printed-books/typescript-in-50-lessons/" class="btn btn--green btn--large" style="">Jump to table of contents&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="/printed-books/typescript-in-50-lessons/" class="feature-panel-image-link">
<div class="feature-panel-image"><picture><source type="image/avif" srcSet="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/2732dfe9-e1ee-41c3-871a-6252aeda741c/typescript-panel.avif" />
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c2f2c6d6-4e85-449a-99f5-58bd053bc846/typescript-shop-cover-opt.png"
    alt="Feature Panel"
    width="481"
    height="698"
/>
</picture>
</div>
</a>
</div>
</aside>
</div>

<h2 id="experiment-spotlight-testing-gpt-4-in-real-time-feedback">Experiment Spotlight: Testing GPT-4 In Real-Time Feedback</h2>

<p>The focus of our study was on the <strong>underlying principles</strong> rather than any specific commercial AI solution for unmoderated usability testing. After all, AI models and prompts are being tuned constantly, so findings that are too narrow may become irrelevant in a week or two after a new version gets updated. However, since AI models are also a black box based on artificial neural networks, the method by which they generate their specific output is not transparent.</p>

<p>Our results can show what you should be wary of to verify that an AI solution that you use can actually deliver value rather than harm. For our study, we used GPT-4, which at the time of the experiment was the most up-to-date model by OpenAI, also capable of fulfilling complex prompts (and, in our experience, dealing with some prompts better than the more recent GPT-4o).</p>

<p>In our experiment, we conducted a usability test with a prototype of an e-commerce website. The tasks involved the common user flow of purchasing a product.</p>

<p><strong>Note</strong>: <em>See our <a href="https://www.tandfonline.com/doi/full/10.1080/10447318.2024.2427978#d1e944">article</a> published in the <a href="https://www.tandfonline.com/journals/hihc20/about-this-journal">International Journal of Human-Computer Interaction</a> for more detailed information about the prototype, tasks, questions, and so on).</em></p>

<p>In this setting, we compared the results with three conditions:</p>

<ol>
<li>A regular static questionnaire made up of three pre-defined questions (Q1, Q2, Q3), serving as an AI-free baseline. Q1 was open-ended, asking the participants to narrate their experiences during the task. Q2 and Q3 can be considered non-adaptive follow-ups to Q1 since they asked participants more directly about usability issues and to identify things that they did not like.</li>
<li>The question Q1, serving as a seed for up to three GPT-4-generated follow-up questions as the alternative to Q2 and Q3.</li>
<li>All three pre-defined questions, Q1, Q2, and Q3, each used as a seed for its own GPT-4 follow-up.</li>
</ol>

<p>The following prompt was used to generate the follow-up questions:</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/2-prompt-unmoderated-usability-testing.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="560"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/2-prompt-unmoderated-usability-testing.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/2-prompt-unmoderated-usability-testing.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/2-prompt-unmoderated-usability-testing.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/2-prompt-unmoderated-usability-testing.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/2-prompt-unmoderated-usability-testing.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/2-prompt-unmoderated-usability-testing.png"
			
			sizes="100vw"
			alt="The prompt to create AI-generated follow-up questions in an unmoderated usability test."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The prompt employed in our experiment to create AI-generated follow-up questions in an unmoderated usability test. (<a href='https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/2-prompt-unmoderated-usability-testing.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>To assess the impact of the AI follow-up questions, we then compared the results on both a quantitative and a qualitative basis. One of the measures that we analyzed is <strong>informativeness</strong> &mdash; ratings of the responses based on how useful they are at elucidating new usability issues encountered by the user.</p>

<p>As seen in the figure below, the informativeness dropped significantly between the seed questions and their AI follow-up. The follow-ups rarely helped identify a new issue, although they did help elaborate further details.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/3-ai-follow-up-questions.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="750"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/3-ai-follow-up-questions.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/3-ai-follow-up-questions.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/3-ai-follow-up-questions.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/3-ai-follow-up-questions.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/3-ai-follow-up-questions.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/3-ai-follow-up-questions.png"
			
			sizes="100vw"
			alt="A graph showing AI follow-up questions compared to the pre-defined seed questions"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Compared to the pre-defined seed questions, AI follow-up questions lacked informativeness about new usability issues. (<a href='https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/3-ai-follow-up-questions.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p><strong>The emotional reactions of the participants</strong> offer another perspective on AI-generated follow-up questions. Our analysis of the prevailing emotional valence based on the phrasing of answers revealed that, at first, the answers started with a neutral sentiment. Afterward, the sentiment shifted toward the negative.</p>

<p>In the case of the pre-defined questions Q2 and Q3, this could be seen as natural. While question Seed 1 was open-ended, asking the participants to explain what they did during the task, Q2 and Q3 focused more on the negative &mdash; usability issues and other disliked aspects. Curiously, the follow-up chains generally received even more negative receptions than their seed questions, and not for the same reason.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/4-sentiment-analysis-usability-testing.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="750"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/4-sentiment-analysis-usability-testing.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/4-sentiment-analysis-usability-testing.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/4-sentiment-analysis-usability-testing.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/4-sentiment-analysis-usability-testing.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/4-sentiment-analysis-usability-testing.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/4-sentiment-analysis-usability-testing.png"
			
			sizes="100vw"
			alt="A graph showing sentiment analysis involving AI follow-up questions compared to the seed questions in the GPT variant."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Sentiment analysis reveals a drop in participant sentiment in questions involving AI follow-up questions compared to the seed questions in the GPT variant. (<a href='https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/4-sentiment-analysis-usability-testing.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Frustration was common as participants interacted with the GPT-4-driven follow-up questions. This is rather critical, considering that frustration with the testing process can sidetrack participants from taking usability testing seriously, hinder meaningful feedback, and introduce a negative bias.</p>

<p>A major aspect that participants were frustrated with was <strong>redundancy</strong>. <strong>Repetitiveness</strong>, such as re-explaining the same usability issue, was quite common. While pre-defined follow-up questions yielded 27-28% of repeated answers (it’s likely that participants already mentioned aspects they disliked during the open-ended Q1), AI-generated questions yielded 21%.</p>

<p>That’s not that much of an improvement, given that the comparison is made to questions that literally could not adapt to prevent repetition at all. Furthermore, when AI follow-up questions were added to obtain more elaborate answers for every pre-defined question, the repetition ratio rose further to 35%. In the variant with AI, participants also rated the questions as <strong>significantly less reasonable</strong>.</p>

<blockquote>Answers to AI-generated questions contained a lot of statements like “I already said that” and “The obvious AI questions ignored my previous responses.”</blockquote> 














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/5-unmoderated-usability-test.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="750"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/5-unmoderated-usability-test.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/5-unmoderated-usability-test.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/5-unmoderated-usability-test.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/5-unmoderated-usability-test.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/5-unmoderated-usability-test.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/5-unmoderated-usability-test.png"
			
			sizes="100vw"
			alt="A graph showing repetition of answers in follow-up questions in the unmoderated usability test."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Repetition of answers in follow-up questions in the unmoderated usability test. Seed questions and their GPT-4 follow-up form a group. This allows us to distinguish the repetitions of AI follow-up answers depending on whether the information they repeat originates from the same group (intra-group) or from other groups (inter-group). (<a href='https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/5-unmoderated-usability-test.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The prevalence of repetition within the same group of questions (the seed question, its follow-up questions, and all of their answers) can be seen as particularly problematic since the GPT-4 prompt had been provided with all the information available in this context. This demonstrates that <strong>a number of the follow-up questions were not sufficiently distinct</strong> and lacked the direction that would warrant them being asked.</p>

<div class="partners__lead-place"></div>

<h2 id="insights-from-the-study-successes-and-pitfalls">Insights From The Study: Successes And Pitfalls</h2>

<p>To summarize the usefulness of AI-generated follow-up questions in usability testing, there are both good and bad points.</p>

<p><strong>Successes:</strong></p>

<ul>
<li>Generative AI (GPT-4) excels at refining participant answers with contextual follow-ups.</li>
<li>Depth of qualitative insights can be enhanced.</li>
</ul>

<p><strong>Challenges:</strong></p>

<ul>
<li>Limited capacity to uncover new issues beyond pre-defined questions.</li>
<li>Participants can easily grow frustrated with repetitive or generic follow-ups.</li>
</ul>

<p>While extracting answers that are a bit more elaborate is a benefit, it can be easily overshadowed if the lack of question quality and relevance is too distracting. This can potentially inhibit participants’ natural behavior and the relevance of feedback if they’re focusing on the AI.</p>

<p>Therefore, in the following section, we discuss what to be careful of, whether you are picking an existing AI tool to assist you with unmoderated usability testing or implementing your own AI prompts or even models for a similar purpose.</p>

<h2 id="recommendations-for-practitioners">Recommendations For Practitioners</h2>

<p>Context is the end-all and be-all when it comes to the usefulness of follow-up questions. Most of the issues that we identified with the AI follow-up questions in our study can be tied to the <strong>ignorance of proper context</strong> in one shape or another.</p>

<p>Based on real blunders that GPT-4 made while generating questions in our study, we have meticulously collected and organized a list of <strong>the types of context</strong> that these questions were missing. Whether you’re looking to use an existing AI tool or are implementing your own system to interact with participants in unmoderated studies, you are strongly encouraged to use this list as <strong>a high-level checklist</strong>. With it as the guideline, you can assess whether the AI models and prompts at your disposal can ask reasonable, context-sensitive follow-up questions before you entrust them with interacting with real participants.</p>

<p>Without further ado, these are the relevant types of context:</p>

<ul>
<li><strong>General Usability Testing Context.</strong><br />
The AI should incorporate standard principles of usability testing in its questions. This may appear obvious, and it actually is. But it needs to be said, given that we have encountered issues related to this context in our study. For example, the questions should not be leading, ask participants for design suggestions, or ask them to predict their future behavior in completely hypothetical scenarios (behavioral research is much more accurate for that).</li>
<li><strong>Usability Testing Goal Context.</strong><br />
Different usability tests have different goals depending on the stage of the design, business goals, or features being tested. Each follow-up question and the participant’s time used in answering it are valuable resources. They should not be wasted on going off-topic. For example, in our study, we were evaluating a prototype of a website with placeholder photos of a product. When the AI starts asking participants about their opinion of the displayed fake products, such information is useless to us.</li>
<li><strong>User Task Context.</strong><br />
Whether the tasks in your usability testing are goal-driven or open and exploratory, their nature should be properly reflected in follow-up questions. When the participants have freedom, follow-up questions could be useful for understanding their motivations. By contrast, if your AI tool foolishly asks the participants why they did something closely related to the task (e.g., placing the specific item they were supposed to buy into the cart), you will seem just as foolish by association for using it.</li>
<li><strong>Design Context.</strong><br />
Detailed information about the tested design (e.g., prototype, mockup, website, app) can be indispensable for making sure that follow-up questions are reasonable. Follow-up questions should require input from the participant. They should not be answerable just by looking at the design. Interesting aspects of the design could also be reflected in the topics to focus on. For example, in our study, the AI would occasionally ask participants why they believed a piece of information that was very prominently displayed in the user interface, making the question irrelevant in context.</li>
<li><strong>Interaction Context.</strong><br />
If Design Context tells you what the participant could potentially see and do during the usability test, Interaction Context comprises all their actual actions, including their consequences. This could incorporate the video recording of the usability test, as well as the audio recording of the participant thinking aloud. The inclusion of interaction context would allow follow-up questions to build on the information that the participant already provided and to further clarify their decisions. For example, if a participant does not successfully complete a task, follow-up questions could be directed at investigating the cause, even as the participant continues to believe they have fulfilled their goal.</li>
<li><strong>Previous Question Context.</strong><br />
Even when the questions you ask them are mutually distinct, participants can find logical associations between various aspects of their experience, especially since they don’t know what you will ask them next. A skilled moderator may decide to skip a question that a participant already answered as part of another question, instead focusing on further clarifying the details. AI follow-up questions should be capable of doing the same to avoid the testing from becoming a repetitive slog.</li>
<li><strong>Question Intent Context.</strong><br />
Participants routinely answer questions in a way that misses their original intent, especially if the question is more open-ended. A follow-up can spin the question from another angle to retrieve the intended information. However, if the participant’s answer is technically a valid reply but only to the word rather than the spirit of the question, the AI can miss this fact. Clarifying the intent could help address this.</li>
</ul>

<p>When assessing a third-party AI tool, a question to ask is <strong>whether the tool allows you to provide all of the contextual information explicitly</strong>.</p>

<blockquote>If AI does not have an implicit or explicit source of context, the best it can do is make biased and untransparent guesses that can result in irrelevant, repetitive, and frustrating questions.</blockquote>

<p>Even if you can provide the AI tool with the context (or if you are crafting the AI prompt yourself), that does not necessarily mean that the AI will do as you expect, apply the context in practice, and approach its implications correctly. For example, as demonstrated in our study, when a history of the conversation was provided within the scope of a question group, there was still a considerable amount of repetition.</p>

<p>The most straightforward way to test the contextual responsiveness of a specific AI model is simply by conversing with it in a way that relies on context. Fortunately, most natural human conversation already depends on context heavily (saying everything would take too long otherwise), so that should not be too difficult. What is key is focusing on the varied types of context to identify what the AI model can and cannot do.</p>

<p>The seemingly overwhelming number of potential combinations of varied types of context could pose the greatest challenge for AI follow-up questions.</p>

<p>For example, human moderators may decide to go against the general rules by asking less open-ended questions to obtain information that is essential for the goals of their research while also understanding the tradeoffs.</p>

<p>In our study, we have observed that if the AI asked questions that were too generically open-ended as a follow-up to seed questions that were open-ended themselves, without a significant enough shift in perspective, this resulted in repetition, irrelevancy, and &mdash; therefore &mdash; frustration.</p>

<blockquote>The fine-tuning of the AI models to achieve an ability to resolve various types of contextual conflict appropriately could be seen as a reliable metric by which the quality of the AI generator of follow-up questions could be measured.</blockquote>

<p><strong>Researcher control</strong> is also key since tougher decisions that are reliant on the researcher’s vision and understanding should remain firmly in the researcher’s hands. Because of this, <strong>a combination of static and AI-driven questions</strong> with complementary strengths and weaknesses could be the way to unlock richer insights.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/6-usability-testing-context.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="560"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/6-usability-testing-context.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/6-usability-testing-context.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/6-usability-testing-context.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/6-usability-testing-context.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/6-usability-testing-context.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/6-usability-testing-context.png"
			
			sizes="100vw"
			alt="Various types of context on which follow-up question generation is dependent on."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Follow-up question generation is dependent on varied types of context. (<a href='https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/6-usability-testing-context.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>A focus on <strong>contextual sensitivity validation</strong> can be seen as even more important while considering the broader social aspects. Among certain people, the trend-chasing and the general overhype of AI by the industry have led to a backlash against AI. AI skeptics have a number of valid concerns, including usefulness, ethics, data privacy, and the environment. Some usability testing participants may be unaccepting or even outwardly hostile toward encounters with AI.</p>

<p>Therefore, for the successful incorporation of AI into research, it will be essential to demonstrate it to the users as something that is both <strong>reasonable</strong> and <strong>helpful</strong>. <strong>Principles of ethical research</strong> remain as relevant as ever. Data needs to be collected and processed with the participant’s consent and not breach the participant’s privacy (e.g. so that sensitive data is not used for training AI models without permission).</p>

<div class="partners__lead-place"></div>

<h2 id="conclusion-what-s-next-for-ai-in-ux">Conclusion: What’s Next For AI In UX?</h2>

<p>So, is AI a game-changer that could break down the barrier between moderated and unmoderated usability research? Maybe one day. The potential is certainly there. When AI follow-up questions work as intended, the results are exciting. Participants can become more talkative and clarify potentially essential details.</p>

<p>To any UX researcher who’s familiar with the feeling of analyzing vaguely phrased feedback and wishing that they could have been there to ask one more question to drive the point home, an automated solution that could do this for them may seem like a dream. However, we should also exercise caution since the blind addition of AI without testing and oversight can introduce a slew of biases. This is because <strong>the relevance of follow-up questions is dependent on all sorts of contexts</strong>.</p>

<p>Humans need to keep holding the reins in order to ensure that the research is based on actual solid conclusions and intents. The opportunity lies in the synergy that can arise from usability researchers and designers whose ability to conduct unmoderated usability testing could be significantly augmented.</p>

<blockquote>Humans + AI = Better Insights</blockquote>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/7-humans-ai-better-insights.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="438"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/7-humans-ai-better-insights.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/7-humans-ai-better-insights.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/7-humans-ai-better-insights.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/7-humans-ai-better-insights.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/7-humans-ai-better-insights.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/7-humans-ai-better-insights.png"
			
			sizes="100vw"
			alt="Illustration says Humans &#43; AI = Better Insights."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Illustration by <a href='https://dribbble.com/m_opalek'>Michal Opalek</a>. (<a href='https://files.smashing.media/articles/human-centered-design-ai-assisted-usability-testing/7-humans-ai-better-insights.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The best approach to advocate for is likely a balanced one. As UX researchers and designers, humans should continue to learn <em>how</em> to use AI as a partner in uncovering insights. This article can serve as a jumping-off point, providing a list of the AI-driven technique’s potential weak points to be aware of, to monitor, and to improve on.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Eric Bailey</author><title>Getting To The Bottom Of Minimum WCAG-Conformant Interactive Element Size</title><link>https://www.smashingmagazine.com/2024/07/getting-bottom-minimum-wcag-conformant-interactive-element-size/</link><pubDate>Fri, 19 Jul 2024 13:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2024/07/getting-bottom-minimum-wcag-conformant-interactive-element-size/</guid><description>WCAG provides guidance for making interactive elements more accessible by specifying minimum size requirements. In fact, the requirements are documented in two Success Criteria: 2.5.5 and 2.5.8. Despite this, WCAG can be difficult to achieve due to a number of misconceptions about the requirements. In this article, Eric Bailey discusses the nuances of interactive element sizes and clarifies what it looks like to provide accessible interactive experiences using WCAG-compliant target sizes.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2024/07/getting-bottom-minimum-wcag-conformant-interactive-element-size/" />
              <title>Getting To The Bottom Of Minimum WCAG-Conformant Interactive Element Size</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Getting To The Bottom Of Minimum WCAG-Conformant Interactive Element Size</h1>
                  
                    
                    <address>Eric Bailey</address>
                  
                  <time datetime="2024-07-19T13:00:00&#43;00:00" class="op-published">2024-07-19T13:00:00+00:00</time>
                  <time datetime="2024-07-19T13:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>There are many rumors and misconceptions about conforming to WCAG criteria for the minimum sizing of interactive elements. I’d like to use this post to demystify <strong>what is needed for baseline compliance</strong> and to point out an approach for making successful and inclusive interactive experiences using ample target sizes.</p>

<h2 id="minimum-conformant-pixel-size">Minimum Conformant Pixel Size</h2>

<p>Getting right to it: When it comes to pure Web Content Accessibility Guidelines (WCAG) conformance, <strong>the bare minimum</strong> <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#dfn-css-pixel"><strong>pixel size</strong></a> <strong>for an interactive, non-inline element is 24×24 pixels</strong>. This is outlined in <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html">Success Criterion 2.5.8: Target Size (Minimum)</a>.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/1-aa-compliant.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="316"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/1-aa-compliant.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/1-aa-compliant.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/1-aa-compliant.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/1-aa-compliant.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/1-aa-compliant.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/1-aa-compliant.png"
			
			sizes="100vw"
			alt="Two panels, each featuring a bright pink square. The first panel’s square measures 16 pixels×16 pixels, and its title reads, ‘Not WCAG 2.2 AA Conformant’. The second panel’s square measures 24×24 pixels, and its title reads, ‘WCAG 2.2 AA Conformant.’"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/1-aa-compliant.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Success Criterion 2.5.8 is <strong>level AA</strong>, which is the most commonly used level for public, mass-consumed websites. This Success Criterion (or SC for short) is sometimes confused for <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-enhancedhttps://www.w3.org/WAI/WCAG22/Understanding/target-size-enhanced">SC 2.5.5 Target Size (Enhanced)</a>, which is level AAA. The two are distinct and provide separate guidance for properly sizing interactive elements, even if they appear similar at first glance.</p>

<p>SC 2.5.8 is relatively new to WCAG, having been released as <a href="https://www.w3.org/WAI/standards-guidelines/wcag/new-in-22/#258-target-size-minimum-aa">part of WCAG version 2.2</a>, which was published on October 5th, 2023. WCAG 2.2 is <strong>the most current version of the standard</strong>, but this newer release date means that knowledge of its existence isn’t as widespread as the older SC, especially outside of web accessibility circles. That said, <strong>WCAG 2.2 will remain the standard</strong> until WCAG 3.0 is released, something that is likely going to take 10–15 years or more to happen.</p>

<p>SC 2.5.5 calls for larger interactive elements sizes that are at least <strong>44×44 pixels</strong> (compared to the SC 2.5.8 requirement of 24×24 pixels). At the same time, notice that SC 2.5.5 is <a href="https://tetralogical.com/blog/2021/11/26/understanding-wcag-level-aaa/"><strong>level AAA</strong></a> (compared to SC 2.5.8, level AA) which is a level reserved for specialized support beyond level AA.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/2-aaa-compliant.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="316"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/2-aaa-compliant.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/2-aaa-compliant.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/2-aaa-compliant.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/2-aaa-compliant.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/2-aaa-compliant.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/2-aaa-compliant.png"
			
			sizes="100vw"
			alt="Two panels, each featuring a bright pink square. The first panel’s square measures 24 pixels×24 pixels, and its title reads, ‘Not WCAG 2.2 AAA Conformant’. The second panel’s square measures 44×44 pixels, and its title reads, ‘WCAG 2.2 AAA Conformant.’"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/2-aaa-compliant.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p><strong>Sites that need to be fully <a href="https://www.w3.org/TR/WCAG22/#conformance-reqs">WCAG Level AAA conformant</a> are rare</strong>. Chances are that if you are making a website or web app, you’ll only need to support level AA. Level AAA is often reserved for large or highly specialized institutions.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p><p>Meet <a data-instant href="/the-smashing-newsletter/"><strong>Smashing Email Newsletter</strong></a> with useful tips on front-end, design &amp; UX. Subscribe and <strong>get “Smart Interface Design Checklists”</strong> &mdash; a <strong>free PDF deck</strong> with 150+ questions to ask yourself when designing and building almost <em>anything</em>.</p><div><section class="nlbf"><form action="//smashingmagazine.us1.list-manage.com/subscribe/post?u=16b832d9ad4b28edf261f34df&amp;id=a1666656e0" method="post"><div class="nlbwrapper"><label for="mce-EMAIL-hp" class="sr-only">Your (smashing) email</label><div class="nlbgroup"><input type="email" name="EMAIL" class="nlbf-email" id="mce-EMAIL-hp" placeholder="Your email">
<input type="submit" value="Meow!" name="subscribe" class="nlbf-button"></div></div></form><style>.c-garfield-the-cat .nlbwrapper{margin-bottom: 0;}.nlbf{display:flex;padding-bottom:.25em;padding-top:.5em;text-align:center;letter-spacing:-.5px;color:#fff;font-size:1.15em}.nlbgroup:hover{box-shadow:0 1px 7px -5px rgba(50,50,93,.25),0 3px 16px -8px rgba(0,0,0,.3),0 -6px 16px -6px rgba(0,0,0,.025)}.nlbf .nlbf-button,.nlbf .nlbf-email{flex-grow:1;flex-shrink:0;width:auto;margin:0;padding:.75em 1em;border:0;border-radius:11px;background:#fff;font-size:1em;box-shadow:none}.promo-box .nlbf-button:focus,.promo-box input.nlbf-email:active,.promo-box input.nlbf-email:focus{box-shadow:none}.nlbf-button:-ms-input-placeholder,.nlbf-email:-ms-input-placeholder{color:#777;font-style:italic}.nlbf-button::-webkit-input-placeholder,.nlbf-email::-webkit-input-placeholder{color:#777;font-style:italic}.nlbf-button:-ms-input-placeholder,.nlbf-button::-moz-placeholder,.nlbf-button::placeholder,.nlbf-email:-ms-input-placeholder,.nlbf-email::-moz-placeholder,.nlbf-email::placeholder{color:#777;font-style:italic}.nlbf .nlbf-button{transition:all .2s ease-in-out;color:#fff;background-color:#0168b8;font-weight:700;box-shadow:0 1px 1px rgba(0,0,0,.3);width:100%;border:0;border-left:1px solid #ddd;flex:2;border-top-left-radius:0;border-bottom-left-radius:0}.nlbf .nlbf-email{border-top-right-radius:0;border-bottom-right-radius:0;width:100%;flex:4;min-width:150px}@media all and (max-width:650px){.nlbf .nlbgroup{flex-wrap:wrap;box-shadow:none}.nlbf .nlbf-button,.nlbf .nlbf-email{border-radius:11px;border-left:none}.nlbf .nlbf-email{box-shadow:0 13px 27px -5px rgba(50,50,93,.25),0 8px 16px -8px rgba(0,0,0,.3),0 -6px 16px -6px rgba(0,0,0,.025);min-width:100%}.nlbf .nlbf-button{margin-top:1em;box-shadow:0 1px 1px rgba(0,0,0,.5)}}.nlbf .nlbf-button:active,.nlbf .nlbf-button:focus,.nlbf .nlbf-button:hover{cursor:pointer;color:#fff;background-color:#0168b8;border-color:#dadada;box-shadow:0 1px 1px rgba(0,0,0,.3)}.nlbf .nlbf-button:active,.nlbf .nlbf-button:focus{outline:0!important;text-shadow:1px 1px 1px rgba(0,0,0,.3);box-shadow:inset 0 3px 3px rgba(0,0,0,.3)}.nlbgroup{display:flex;box-shadow:0 13px 27px -5px rgba(50,50,93,.25),0 8px 16px -8px rgba(0,0,0,.3),0 -6px 16px -6px rgba(0,0,0,.025);border-radius:11px;transition:box-shadow .2s ease-in-out}.nlbwrapper{display:flex;flex-direction:column;justify-content:center}.nlbf form{width:100%}.nlbf .nlbgroup{margin:0}.nlbcaption{font-size:.9em;line-height:1.5em;color:#fff;border-radius:11px;padding:.5em 1em;display:inline-block;background-color:#0067b859;text-shadow:1px 1px 1px rgba(0,0,0,.3)}.wf-loaded-stage2 .nlbf .nlbf-button{font-family:Mija}.mts{margin-top: 5px !important;}.mbn{margin-bottom: 0 !important;}</style></section><p class="mts mbn"><small class="promo-box__footer mtm block grey"><em>Once a week. Useful tips on <a href="https://www.smashingmagazine.com/the-smashing-newsletter/">front-end &amp; UX</a>. Trusted by 207.000 friendly folks.</em></small></p></div></p>
</div>
</div>
<div class="feature-panel-right-col">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-firechat.svg"
    alt="Feature Panel"
    width="310"
    height="400"
/>

</div>

<p></div>
</aside>
</div></p>

<h3 id="making-interactive-elements-larger-with-css-padding">Making Interactive Elements Larger With CSS Padding</h3>

<p>The family of <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/padding"><code>padding</code>-related properties</a> in CSS can be used to extend the interactive area of an element to make it conformant. For example, declaring <code>padding: 4px;</code> on an element that measures 16×16 pixels invisibly increases its bounding box to a total of 24×24 pixels. This, in turn, means the interactive element satisfies SC 2.5.8.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/3-padding.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="316"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/3-padding.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/3-padding.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/3-padding.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/3-padding.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/3-padding.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/3-padding.png"
			
			sizes="100vw"
			alt="Two panels, each featuring a bright pink square with a thick, lighter pink outer border. The first panel’s square measures 16 pixels×16 pixels, and its outer border measures 4 pixels wide. Its title reads, ‘WCAG 2.2 AA Conformant’. The second panel’s square measures 24×24 pixels, and its outer border measures 10 pixels wide, and its title reads, ‘WCAG 2.2 AAA Conformant.’"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      16 + 4  + 4 = 24. 24 + 10 + 10 = 44. (<a href='https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/3-padding.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>This is a good trick for making smaller interactive elements easier to click and tap. If you want more information about this sort of thing, I enthusiastically recommend <a href="https://ishadeed.com/">Ahmad Shadeed</a>’s post, “<a href="https://ishadeed.com/article/target-size/">Designing better target sizes</a>”.</p>

<p>I think it’s also worth noting that <strong>CSS <code>margin</code> could also hypothetically be used to achieve level AA conformance</strong> since the SC includes a spacing exception:</p>

<blockquote>The size of the <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#dfn-target">target</a> for <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#dfn-pointer-input">pointer inputs</a> is at least 24×24 <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#dfn-css-pixel">CSS pixels</a>, except where:<br /><br /><strong>Spacing:</strong> Undersized targets (those less than 24×24 CSS pixels) are positioned so that if a 24 CSS pixel diameter circle is centered on the <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#dfn-minimum-bounding-box">bounding box</a> of each, the circles do not intersect another target or the circle for another undersized target;<br /><br />[…]</blockquote>

<p>The difference here is that <strong>padding extends the interactive area, while margin does not</strong>. Through this lens, you’ll want to honor the spirit of the success criterion because <a href="https://adrianroselli.com/2023/12/2-5-8-adversarial-conformance.html#Adversarial">partial conformance is adversarial conformance</a>. At the end of the day, we want to help people successfully click or tap interactive elements, such as buttons.</p>

<h3 id="what-about-inline-interactive-elements">What About Inline Interactive Elements?</h3>

<p>We tend to think of targets in terms of block elements &mdash; elements that are displayed on their own line, such as a button at the end of a call-to-action. However, interactive elements can be inline elements as well. Think of links in a paragraph of text.</p>

<p>Inline interactive elements, such as text links in paragraphs, <strong>do not</strong> need to meet the 24×24 pixel minimum requirement. Just as <code>margin</code> is an exception in <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#exceptions">SC 2.5.8: Target Size (Minimum)</a>, so are inline elements with an interactive target:</p>

<blockquote>The size of the <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#dfn-target">target</a> for <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#dfn-pointer-input">pointer inputs</a> is at least 24×24 <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#dfn-css-pixel">CSS pixels</a>, except where:<br /><br />[…]<br /><br /><strong>Inline:</strong> The target is in a sentence or its size is otherwise constrained×the line-height of non-target text;<br /><br />[…]</blockquote>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/4-inline.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="316"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/4-inline.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/4-inline.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/4-inline.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/4-inline.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/4-inline.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/4-inline.png"
			
			sizes="100vw"
			alt="Two panels, each titled ‘WCAG 2.2 Conformant’. The first panel shows a wireframe illustration of an underlined link placed in a paragraph of text. The second panel shows a wireframe illustration of a form with two inputs and a submit button. The submit button and link are colored blue to suggest they both are related in terms of compliance."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/4-inline.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="apple-and-android-the-source-of-more-confusion">Apple And Android: The Source Of More Confusion</h2>

<p>If the differences between interactive elements that are inline and block are still confusing, that’s probably because the whole situation is even further muddied by third-party human interface guidelines requiring interactive sizes closer to what the level AAA Success Criterion 2.5.5 Target Size (Enhanced) demands.</p>

<p>For example, Apple’s “<a href="https://developer.apple.com/design/human-interface-guidelines/">Human Interface Guidelines</a>” and Google’s “<a href="https://m3.material.io">Material Design</a>” are guidelines for how to design interfaces for their respective platforms. Apple’s guidelines recommend that <a href="https://developer.apple.com/design/human-interface-guidelines/accessibility#Buttons-and-controls">interactive elements are 44×44 points</a>, whereas Google’s guides stipulate target sizes that are <a href="https://m3.material.io/foundations/designing/structure#b421e522-35a6-47cd-bfc6-bf94cbacf7bb">at least 48×48 using density-independent pixels</a>.</p>

<p>These may satisfy Apple and Google requirements for designing interfaces, but <em>are they WCAG-conformant</em> Apple and Google &mdash; not to mention any other organization with UI guidelines &mdash; can specify whatever interface requirements they want, but <em>are they copasetic with WCAG SC 2.5.5 and SC 2.5.8?</em></p>

<p>It’s important to ask this question because there is a hierarchy when it comes to accessibility compliance, and it contains legal levels:</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/5-the-law.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="658"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/5-the-law.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/5-the-law.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/5-the-law.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/5-the-law.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/5-the-law.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/5-the-law.png"
			
			sizes="100vw"
			alt="A vertically-oriented flowchart. There are six layers. The topmost layer has one node labeled ‘WCAG’. The second layer down has one node labeled ‘International law’. The third layer down has two nodes. The first node is labeled, ‘Governments: United States, EU, etc.’ The second node is labeled, ‘Companies: Apple, Google, etc.’ The fourth layer down is labeled ‘Human interface guidelines’. The fifth layer down is labeled ‘Design systems’. The sixth and final layer has four nodes. The nodes are labeled, ‘Websites’, ‘Webapps’, ‘Apps’, and ‘Kiosks’. Arrows flow downward from each node to show the parent/child hierarchy."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/5-the-law.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Human interface guidelines often inform design systems, which, in turn, influence the sites and apps that are built by authors like us. But they’re not the “authority” on accessibility compliance. Notice how everything is (and ought to be) influenced by WCAG at the very top of the chain.</p>

<p>Even if these third-party interface guidelines conform to SC 2.5.5 and 2.5.8, it’s still tough to tell when they are expressed in “<a href="https://developer.apple.com/design/human-interface-guidelines/images#Resolution">points</a>” and “<a href="https://developer.android.com/design/ui/mobile/guides/layout-and-content/grids-and-units">density independent pixels</a>” which aren’t pixels, but often get conflated as such. I’d advise not getting too deep into researching <a href="https://www.oddbird.net/2024/07/09/zoomies/#what%E2%80%99s-a-(css)-pixel%3F">what a pixel truly is</a>. Trust me when I say it’s a road you don’t want to go down. But whatever the case, the inconsistent use of unit sizes exacerbates the issue.</p>

<h2 id="can-t-we-just-use-a-media-query">Can’t We Just Use A Media Query?</h2>

<p>I’ve also observed some developers attempting to use <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/pointer">the <code>pointer</code> media feature</a> as a clever “trick” to <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/pointer#coarse">detect when a touchscreen is present</a>, then conditionally adjust an interactive element’s size as a way to get around the WCAG requirement.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/6-media-query.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="406"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/6-media-query.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/6-media-query.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/6-media-query.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/6-media-query.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/6-media-query.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/6-media-query.png"
			
			sizes="100vw"
			alt="Two panels, with an overall title of, ‘Don’t do this’. Each panel has a visual, followed×CSS code. The first panel’s visual is a small pink square. The second panel’s visual is a larger pink square. The CSS code shows how using an any-pointer: coarse media query can turn an 18-pixel wide×18 pixel tall button into a 44-pixel wide×44 pixel tall button."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/6-media-query.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>After all, mouse cursors are for fine movements, and touchscreens are for more broad gestures, right? Not always. The thing is, <strong>devices are multimodal</strong>. They can support <a href="https://hacks.mozilla.org/2013/04/detecting-touch-its-the-why-not-the-how/">many different kinds of input</a> and don’t require a special switch to flip or button to press to do so. A straightforward example of this is switching between a trackpad and a keyboard while you browse the web. A less considered example is a device with a touchscreen that also supports a trackpad, keyboard, mouse, and voice input.</p>

<p>You might think that the combination of trackpad, keyboard, mouse, and voice inputs sounds like some sort of absurd, obscure Frankencomputer, but what I just described is a <a href="https://www.microsoft.com/en-us/surface/devices/surface-laptop-7th-edition">Microsoft Surface laptop</a>, and guess what? They’re <a href="https://www.windowscentral.com/surface-windows-fy22-q2-revenue-report">pretty popular</a>.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/7-microsoft-surface-laptop.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="477"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/7-microsoft-surface-laptop.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/7-microsoft-surface-laptop.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/7-microsoft-surface-laptop.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/7-microsoft-surface-laptop.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/7-microsoft-surface-laptop.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/7-microsoft-surface-laptop.png"
			
			sizes="100vw"
			alt="A silver Microsoft Surface laptop. It is opened, posed towards the viewer to show its keyboard and trackpad, as well as a full-color display featuring an abstract, prismatic whorl of paper-thin organic shapes. The Windows 11 taskbar is also shown."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/7-microsoft-surface-laptop.png'>Large preview</a>)
    </figcaption>
  
</figure>

<div class="partners__lead-place"></div>

<h2 id="responsive-design-vs-inclusive-design">Responsive Design Vs. Inclusive Design</h2>

<p>There is a difference between the two, even though they are often used interchangeably. Let’s delineate the two as clearly as possible:</p>

<ul>
<li>Responsive Design is about designing for an <strong>unknown device</strong>.</li>
<li>Inclusive Design is about designing for an <strong>unknown user</strong>.</li>
</ul>

<p>The other end of this consideration is that people with <a href="https://www.w3.org/WAI/people-use-web/abilities-barriers/#physical">motor control conditions</a> &mdash; like hand tremors or arthritis &mdash; can and do use mice inputs. This means that fine input actions may be painful and difficult, yet ultimately still possible to perform.</p>

<p>People also use more precise input mechanisms for touchscreens all the time, including both <a href="https://www.apple.com/apple-pencil/">official accessories</a> and <a href="https://www.amazon.com/s?k=stylus+pen+for+touchscreen">aftermarket devices</a>. In other words, some devices designed to accommodate coarse input can also be used for <a href="https://procreate.com/">fine detail work</a>.</p>

<p>I’d be remiss if I didn’t also point out that people plug mice and keyboards into smartphones. We cannot automatically say that they only support coarse pointers:</p>


<figure class="video-embed-container">
  <div
  
  class="video-embed-container--wrapper">
		<lite-youtube
			videoid="6vi10v4WZS0"
      
			
		></lite-youtube>
	</div>
	
</figure>

<p>My point is that a <strong>mode-based approach to inclusive design is a trap</strong>. This isn’t even about <a href="https://www.linkedin.com/pulse/what-world-view-tap-asymmetry-nora-nishia-burtschi">view–tap asymmetry</a>. Creating entire alternate experiences based on assumed input mode reinforces an ugly “us versus them” mindset. It’s also far more work to set up, maintain, and educate others.</p>

<p>It’s better to proactively accommodate an unknown number of unknown people using an unknown suite of devices in unknown ways by <a href="https://ericwbailey.website/published/contrast-color-is-a-good-thing-but-also-solving-the-problem-at-the-wrong-layer/#further-issues"><strong>providing an inclusive experience by default</strong></a>. Doing so has a list of benefits:</p>

<ul>
<li>More proactively accommodating,</li>
<li>Less effort to create,</li>
<li>Less effort to maintain,</li>
<li>Less data to download, and</li>
<li>Less compliance risk.</li>
</ul>

<p>After all, <a href="https://news.mit.edu/2024/mouth-based-touchpad-augmental-0605">that tap input might be coming from a tongue</a>, and that click event might be someone <a href="https://thoughtbot.com/blog/an-introduction-to-macos-head-pointer">raising their eyebrows</a>.</p>

<h2 id="wcag-is-the-floor-not-the-ceiling">WCAG Is The Floor, Not The Ceiling</h2>

<p>A WCAG-conformant 24×24 minimum pixel size requirement for interactive elements is <strong>our industry’s best understanding</strong> of what can accommodate most access needs distributed across a global population accessing an unknown amount of content dealing with unknown topics in unknown ways under unknown circumstances.</p>

<p>The load-bearing word in that previous sentence is <em>minimum</em>. The guidance &mdash; and the pixel size it mandates &mdash; is likely a balancing act between:</p>

<ol>
<li>Setting something up that is functional enough while also</li>
<li>Avoiding a standard that would be impossible to broadly achieve (hence the SC 2.5.5 level AAA rating).</li>
</ol>

<p>Even the SC itself <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#intent">acknowledges this potential limitation</a>:</p>

<blockquote>“This Success Criterion defines a minimum size and, if this can't be met, a minimum spacing. It is still possible to have very small and difficult-to-activate targets and meet the requirements of this Success Criterion.”</blockquote>

<p>Larger interactive areas can be a good thing to strive for. This is to say <strong>a minimum of approximately 40 pixels may be beneficial for individuals who struggle with the smaller yet still WCAG-conformant size</strong>.</p>

<h2 id="interactive-area-sizing-is-as-much-an-art-as-it-is-a-science">Interactive Area Sizing Is As Much An Art As It Is A Science</h2>

<p>We should also <strong>be careful not to overcorrect</strong> by dropping in gigantic interactive elements in all of our work. If an interactive area is <em>too</em> large, it risks being activated by accident. This is important to note when an interactive element is placed in close proximity to other interactive elements and even more important to consider when activating those elements can result in irrevocable consequences.</p>

<p>There is also a phenomenon where elements, if large enough, are not interpreted or recognized as being interactive. Consequently, users may inadvertently miss them, despite large sizing.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/8-too-large-touch-target.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="550"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/8-too-large-touch-target.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/8-too-large-touch-target.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/8-too-large-touch-target.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/8-too-large-touch-target.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/8-too-large-touch-target.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/8-too-large-touch-target.png"
			
			sizes="100vw"
			alt="A simplified wireframe illustration of a wide viewport website. There are four large colored blocks that take up the bulk of the main content area, and it is unclear if they are content placeholders or intended to be interactive items."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      What on this page is clickable? (<a href='https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/8-too-large-touch-target.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="context-is-king">Context Is King</h3>

<p>Conformant and successful interactive areas &mdash; both large and small &mdash; require <strong>knowing the ultimate goals of your website or web app</strong>. When you arm yourself with this context, you are empowered to make informed decisions about the kinds of people <em>who</em> use your service, <em>why</em> they use the service, and <em>how</em> you can accommodate them.</p>

<p>For example, the <a href="https://www.nngroup.com/articles/touch-target-size/#toc-when-bigger-is-better-4">Glow Baby app uses larger interactive elements</a> because it knows the user is likely holding an adorable, albeit squirmy and fussy, baby while using the application. This allows Glow Baby to emphasize the interactive targets in the interface to accommodate parents who have their hands full.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/9-glowbaby-mobileapp-nursingtimer.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="808"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/9-glowbaby-mobileapp-nursingtimer.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/9-glowbaby-mobileapp-nursingtimer.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/9-glowbaby-mobileapp-nursingtimer.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/9-glowbaby-mobileapp-nursingtimer.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/9-glowbaby-mobileapp-nursingtimer.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/9-glowbaby-mobileapp-nursingtimer.png"
			
			sizes="100vw"
			alt="Two screenshots placed side×side. It shows two timers, one for the left breast and one for the right, demonstrating how the timers can be activated independently of each other. The UI is minimal, and all interactive items, including the timers, are large and easy to distinguish from each other."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Source: “Touch Targets on Touchscreens” by Neilsen Norman Group. (<a href='https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/9-glowbaby-mobileapp-nursingtimer.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>In the same vein, <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#exceptions">SC SC 2.5.8 acknowledges that smaller touch targets</a> &mdash; such as those used in map apps &mdash; <a href="https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html#exceptions">may contextually be exempt</a>:</p>

<blockquote>For example, in digital maps, the position of pins is analogous to the position of places shown on the map. If there are many pins close together, the spacing between pins and neighboring pins will often be below 24 CSS pixels. It is essential to show the pins at the correct map location; therefore, the Essential exception applies.<br /><br />[…]<br /><br />When the "Essential" exception is applicable, authors are strongly encouraged to provide equivalent functionality through alternative means to the extent practical.</blockquote>

<p>Note that <strong>this exemption language is not carte blanche to make your own work an exception to the rule</strong>. It is more of a mechanism, and an acknowledgment that broadly applied rules may have exceptions that are worth thinking through and documenting for future reference.</p>

<div class="partners__lead-place"></div>

<h2 id="further-considerations">Further Considerations</h2>

<p>We also want to consider the larger context of the device itself as well as the environment the device will be used in.</p>

<p><a href="https://www.nngroup.com/articles/very-large-touchscreen-ux-design/">Larger, more fixed position touchscreens compel larger interactive areas</a>. Smaller devices that are moved around in space a lot (e.g., smartwatches) may benefit from alternate input mechanisms such as voice commands.</p>

<p>What about people who are driving in a car? People in this context probably ought to be provided straightforward, simple interactions that are facilitated via large interactive areas to prevent them from taking their eyes off the road. The same could also be said for high-stress environments like hospitals and <a href="https://www.24a11y.com/2017/convince-company-tames-dinosaurs-design-inclusively/">oil rigs</a>.</p>

<p>Similarly, <a href="https://www.smashingmagazine.com/2024/02/practical-guide-design-children/">devices and apps that are designed for children</a> may require interactive areas that are larger than WCAG requirements for interactive areas. So would experiences aimed at older demographics, where age-derived vision and motor control disability factors tend to be more present.</p>

<p>Minimum conformant interactive area experiences may also make sense in their own contexts. Data-rich, information-dense experiences like <a href="https://www.bloomberg.com/professional/products/bloomberg-terminal/">the Bloomberg terminal</a> come to mind here.</p>

<h2 id="design-systems-are-also-worth-noting">Design Systems Are Also Worth Noting</h2>

<p>While you can control what components you include in a <a href="https://www.figma.com/blog/design-systems-101-what-is-a-design-system/">design system</a>, you cannot control where and how they’ll be used by those who adopt and use that design system. Because of this, I suggest <strong>defensively baking accessible defaults into your design systems</strong> because they can go a long way toward incorporating accessible practices when they’re integrated right out of the box.</p>

<p>One option worth consideration is <strong>providing an accessible range of choices</strong>. Components, like buttons, can have size variants (e.g., small, medium, and large), and you can provide a minimally conformant interactive target on the smallest variant and then offer larger, equally conformant versions.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/10-design-system-variants.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="300"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/10-design-system-variants.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/10-design-system-variants.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/10-design-system-variants.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/10-design-system-variants.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/10-design-system-variants.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/10-design-system-variants.png"
			
			sizes="100vw"
			alt="A panel showing three button component variants. The panel’s title reads, ‘WCAG 2.2 AA Conformant’. The first button component variant measures 24 pixels tall and is labeled ‘Variant: Small’. The second button component variant measures 36 pixels tall and is labeled ‘Variant: Medium’. The third button component variant measures 58 pixels tall and is labeled, ‘Variant: Large’."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/getting-bottom-minimum-wcag-conformant-interactive-element-size/10-design-system-variants.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="so-how-do-we-know-when-we-re-good">So, How Do We Know When We’re Good?</h2>

<p>There is no magic number or formula to get you that perfect Goldilocks “not too small, not too large, but just right” interactive area size. It requires knowledge of what the people who want to use your service want, and how they go about getting it.</p>

<p>The best way to learn that? <strong>Ask people</strong>.</p>

<p>Accessibility research includes more than just asking people who use screen readers what they think. It’s also a lot easier to conduct than you might think! For example, prototypes are a great way to quickly and inexpensively evaluate and de-risk your ideas before committing to writing production code. “<a href="https://www.smashingmagazine.com/2024/04/conducting-accessibility-research-inaccessible-ecosystem/">Conducting Accessibility Research In An Inaccessible Ecosystem</a>” by <a href="https://mawconsultingllc.com/">Dr. Michele A. Williams</a> is chock full of tips, strategies, and resources you can use to help you get started with accessibility research.</p>

<h2 id="wrapping-up">Wrapping Up</h2>

<p>The bottom line is that</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0a%e2%80%9cCompliant%e2%80%9d%20does%20not%20always%20equate%20to%20%e2%80%9cusable.%e2%80%9d%20But%20compliance%20does%20help%20set%20baseline%20requirements%20that%20benefit%20everyone.%0a&url=https://smashingmagazine.com%2f2024%2f07%2fgetting-bottom-minimum-wcag-conformant-interactive-element-size%2f">
      
“Compliant” does not always equate to “usable.” But compliance does help set baseline requirements that benefit everyone.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>To sum things up:</p>

<ul>
<li>24×24 pixels is the bare minimum in terms of WCAG conformance.</li>
<li>Inline interactive elements, such as links placed in paragraphs, are exempt.</li>
<li>44×44 pixels is for WCAG level AAA support, and level AAA is reserved for specialized experiences.</li>
<li>Human interface guidelines by the likes of Apple, Android, and other companies must ultimately confirm to WCAG.</li>
<li>Devices are multimodal and can use different kinds of input concurrently.</li>
<li>Baking sensible accessible defaults into design systems can go a long way to ensuring widespread compliance.</li>
<li>Larger interactive element sizes may be helpful in many situations, but might not be recognized as an interactive element if they are too large.</li>
<li>User research can help you learn about your audience.</li>
</ul>

<p>And, perhaps most importantly, all of this is about people and enabling them to get what they need.</p>

<h3 id="further-reading">Further Reading</h3>

<ul>
<li><a href="https://tetralogical.com/blog/2022/12/20/foundations-target-size/">Foundations: target sizes</a> (TetraLogical)</li>
<li><a href="https://www.w3.org/WAI/perspective-videos/controls/">Large Links, Buttons, and Controls</a> (Web Accessibility Initiative)</li>
<li><a href="https://css-tricks.com/interaction-media-features-and-their-potential-for-incorrect-assumptions/">Interaction Media Features and Their Potential (for Incorrect Assumptions)</a> (CSS-Tricks)</li>
<li><a href="https://tetralogical.com/blog/2023/04/21/meeting-wcag-level-aaa/#increased-text-color-contrast">Meeting WCAG Level AAA</a> (TetraLogical)</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(gg, yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Eduard Kuric</author><title>How To Harness Mouse Interaction Data For Practical Machine Learning Solutions</title><link>https://www.smashingmagazine.com/2024/05/harness-mouse-interaction-data-machine-learning/</link><pubDate>Mon, 06 May 2024 10:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2024/05/harness-mouse-interaction-data-machine-learning/</guid><description>Every single action online, even a tiny one such as a click or a mouse movement, produces a data footprint. In the case of interactions with the computer mouse, these are called mouse interaction data (or mouse data for short). Small pieces of simple mouse data aggregate into a greater and more complex mosaic. Its patterns paint the essence of who we are and what we do. Machine learning can even use patterns in mouse data to predict our future actions, such as buying a product. Large companies leverage mouse data to make informed decisions based on knowledge of their user base and personalize user experiences to match their current needs, and that’s just scratching the surface. In this article, Eduard Kuric discusses mouse interaction data, what kind of magic can be done with it, and some of the hidden pitfalls to watch out for so you get a head start incorporating them in your solutions.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2024/05/harness-mouse-interaction-data-machine-learning/" />
              <title>How To Harness Mouse Interaction Data For Practical Machine Learning Solutions</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>How To Harness Mouse Interaction Data For Practical Machine Learning Solutions</h1>
                  
                    
                    <address>Eduard Kuric</address>
                  
                  <time datetime="2024-05-06T10:00:00&#43;00:00" class="op-published">2024-05-06T10:00:00+00:00</time>
                  <time datetime="2024-05-06T10:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>Mouse data is a subcategory of interaction data, a broad family of data about users generated as the immediate result of human interaction with computers. Its siblings from the same data family include logs of key presses or page visits. Businesses commonly rely on interaction data, including the mouse, to gather insights about their target audience. Unlike data that you could obtain more explicitly, let’s say via a survey, the advantage of interaction data is that it describes <strong>the actual behavior of actual people</strong>.</p>

<p>Collecting interaction data is completely unobtrusive since it can be obtained even as users go about their daily lives as usual, meaning it is a <strong>quantitative data source</strong> that scales very well. Once you start collecting it continuously as part of regular operation, you do not even need to do anything, and you’ll still have fresh, up-to-date data about users at your fingertips &mdash; potentially from your entire user base, without them even needing to know about it. Having data on specific users means that you can cater to their needs more accurately.</p>

<p>Of course, mouse data has its limitations. It simply cannot be obtained from people using touchscreens or those who rely on assistive tech. But if anything, that should not discourage us from using mouse data. It just illustrates that we should look for alternative methods that cater to the different ways that people interact with software. Among these, the mouse just happens to be very common.</p>

<p>When using the mouse, the mouse pointer is the de facto conduit for the user’s intent in a visual user interface. The mouse pointer is basically an extension of your arm that lets you interact with things in a virtual space that you cannot directly touch. Because of this, mouse interactions tend to be <strong>data-intensive</strong>. Even the simple mouse action of moving the pointer to an area and clicking it can yield a significant amount of data.</p>

<p>Mouse data is granular, even when compared with other sources of interaction data, such as the history of visited pages. However, with machine learning, it is possible to investigate jumbles of complicated data and uncover a variety of complex behavioral patterns. It can reveal more about the user holding the mouse without needing to provide any more information explicitly than normal.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/1-mouse-data.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="542"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/1-mouse-data.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/1-mouse-data.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/1-mouse-data.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/1-mouse-data.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/1-mouse-data.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/1-mouse-data.png"
			
			sizes="100vw"
			alt="Mouse movements shown on y- and x-axis with various coordinates"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Mouse movements are a rich and highly expressive source of data on user behavior. (Illustration by <a href='https://dribbble.com/m_opalek'>Michal Opalek</a>) (<a href='https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/1-mouse-data.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>For starters, let us venture into what kind of information can be obtained by processing mouse interaction data.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="/printed-books/typescript-in-50-lessons/">“TypeScript in 50 Lessons”</a></strong>, our shiny new guide to TypeScript. With detailed <strong>code walkthroughs</strong>, hands-on examples and common gotchas. For developers who know enough <strong>JavaScript</strong> to be dangerous.</p>
<a data-instant href="/printed-books/typescript-in-50-lessons/" class="btn btn--green btn--large" style="">Jump to table of contents&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="/printed-books/typescript-in-50-lessons/" class="feature-panel-image-link">
<div class="feature-panel-image"><picture><source type="image/avif" srcSet="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/2732dfe9-e1ee-41c3-871a-6252aeda741c/typescript-panel.avif" />
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c2f2c6d6-4e85-449a-99f5-58bd053bc846/typescript-shop-cover-opt.png"
    alt="Feature Panel"
    width="481"
    height="698"
/>
</picture>
</div>
</a>
</div>
</aside>
</div>

<h2 id="what-are-mouse-dynamics">What Are Mouse Dynamics?</h2>

<p>Mouse dynamics refer to the features that can be extracted from raw mouse data to describe the user’s operation of a mouse. Mouse data by itself corresponds with the simple mechanics of mouse controls. It consists of <strong>mouse events</strong>: the X and Y coordinates of the cursor on the screen, mouse button presses, and scrolling, each dated with a timestamp. Despite the innate simplicity of the mouse events themselves, the mouse dynamics using them as building blocks can capture user’s behavior from a diverse and emergently complex variety of perspectives.</p>

<p>If you are concerned about user privacy, as well you should be, mouse dynamics are also your friend. For the calculation of mouse dynamics to work, raw mouse data does not need to inherently contain any details about the actual meaning of the interaction. Without the context of what the user saw as they moved their pointer around and clicked, the data is quite safe and harmless.</p>

<p>Some examples of mouse dynamics include measuring the velocity and the acceleration at which the mouse cursor is moving or describing how direct or jittery the mouse trajectories are. Another example is whether the user presses and lets go of the primary mouse button quickly or whether there is a longer pause before they release their press. Four categories of over twenty base measures can be identified: temporal, spatial, spatial-temporal, and performance. Features do not need to be just metrics either, with other approaches using a time series of mouse events.</p>

<p><strong>Temporal mouse dynamics:</strong></p>

<ul>
<li><strong>Movement duration</strong>: The time between two clicks;</li>
<li><strong>Response time</strong>: The time it takes to click something in response to a stimulus (e.g., from the moment when a page is displayed);</li>
<li><strong>Initiation time</strong>: The time it takes from an initial stimulus for the cursor to start moving;</li>
<li><strong>Pause time</strong>: The time measuring the cursor’s period of idleness.</li>
</ul>

<p><strong>Spatial mouse dynamics:</strong></p>

<ul>
<li><strong>Distance</strong>: Length of the path traversed on the screen;</li>
<li><strong>Straightness</strong>: The ratio between the traversed path and the optimal direct path;</li>
<li><strong>Path deviation</strong>: Perpendicular distance of the traversed path from the optimal path;</li>
<li><strong>Path crossing</strong>: Counted instances of the traversed and optimal path intersecting;</li>
<li><strong>Jitter</strong>: The ratio of the traversed path length to its smoothed version;</li>
<li><strong>Angle</strong>: The direction of movement;</li>
<li><strong>Flips</strong>: Counted instances of change in direction;</li>
<li><strong>Curvature</strong>: Change in angle over distance;</li>
<li><strong>Inflection points</strong>: Counted instances of change in curvature.</li>
</ul>

<p><strong>Spatial-temporal mouse dynamics:</strong></p>

<ul>
<li><strong>Velocity</strong>: Change of distance over time;</li>
<li><strong>Acceleration</strong>: Change of velocity over time;</li>
<li><strong>Jerk</strong>: Change of acceleration over time;</li>
<li><strong>Snap</strong>: Change in jerk over time;</li>
<li><strong>Angular velocity</strong>: Change in angle over time.</li>
</ul>

<p><strong>Performance mouse dynamics:</strong></p>

<ul>
<li><strong>Clicks</strong>: The number of mouse button events pressing down or up;</li>
<li><strong>Hold time</strong>: Time between mouse down and up events;</li>
<li><strong>Click error</strong>: Length of the distance between the clicked point and the correct user task solution;</li>
<li><strong>Time to click</strong>: Time between the hover event on the clicked point and the click event;</li>
<li><strong>Scroll</strong>: Distance scrolled on the screen.</li>
</ul>

<p><strong>Note</strong>: <em>For detailed coverage of varied mouse dynamics and their extraction, see the paper “<a href="https://www.sciencedirect.com/science/article/pii/S0920548924000187#b9">Is mouse dynamics information credible for user behavior research? An empirical investigation</a>.”</em></p>

<p>The spatial angular measures cited above are a good example of how the calculation of specific mouse dynamics can work. The direction angle of the movements between points A and B is the angle between the vector AB and the horizontal X axis. Then, the curvature angle in a sequence of points ABC is the angle between vectors AB and BC. Curvature distance can be defined as the ratio of the distance between points A and C and the perpendicular distance between point B and line AC. (Definitions sourced from the paper “<a href="https://dl.acm.org/doi/abs/10.1145/2046707.2046725?casa_token=YPaxeVaA25oAAAAA:AGHKS8xupW2QuETXgxmocpgpFL0YmHoelsTwl1FSOH4Qqu1E3WUjHG6hixZUwhW2M0Ntq_uo_lCCNSk">An efficient user verification system via mouse movements</a>.”)</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/2-mouse-dynamics.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="447"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/2-mouse-dynamics.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/2-mouse-dynamics.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/2-mouse-dynamics.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/2-mouse-dynamics.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/2-mouse-dynamics.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/2-mouse-dynamics.png"
			
			sizes="100vw"
			alt="Illustration of a mouse trajectory in y- x-axis with measures, such as angles of direction (x), curvature (y), and curvature distance"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Spatial mouse dynamics characterize trajectories traversed by users in terms of measures, such as angles of direction (x), curvature (y), and curvature distance. (Illustration by <a href='https://dribbble.com/m_opalek'>Michal Opalek</a>) (<a href='https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/2-mouse-dynamics.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Even individual features (e.g., mouse velocity by itself) can be delved into deeper. For example, on pages with a lot of scrolling, horizontal mouse velocity along the X-axis may be more indicative of something capturing the user’s attention than velocity calculated from direct point-to-point (Euclidean) distance in the screen&rsquo;s 2D space. The maximum velocity may be a good indicator of anomalies, such as user frustration, while the mean or median may tell you more about the user as a person.</p>

<h2 id="from-data-to-tangible-value">From Data To Tangible Value</h2>

<p>The introduction of mouse dynamics above, of course, is an oversimplification for illustrative purposes. Just by looking at the physical and geometrical measurements of users’ mouse trajectories, you cannot yet tell much about the user. That is the job of the machine learning algorithm. Even features that may seem intuitively useful to you as a human (see examples cited at the end of the previous section) can prove to be of low or zero value for a machine-learning algorithm.</p>

<p>Meanwhile, a deceptively generic or simplistic feature may turn out unexpectedly quite useful. This is why it is important to couple broad feature generation with a good <a href="https://machinelearningmastery.com/an-introduction-to-feature-selection/">feature selection</a> method, narrowing the dimensionality of the model down to the mouse dynamics that help you achieve good accuracy without <a href="https://machinelearningmastery.com/introduction-to-regularization-to-reduce-overfitting-and-improve-generalization-error/">overfitting</a>. Some feature selection techniques are embedded directly into machine learning methods (e.g., LASSO, decision trees) while others can be used as a preliminary filter (e.g., ranking features by significance assessed via a statistical test).</p>

<p>As we can see, there is a sequential process to transforming mouse data into mouse dynamics, into a well-tuned machine learning model to field its predictions, and into an applicable solution that generates value for you and your organization. This can be visualized as the pipeline below.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/3-process-mouse-dynamics.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="252"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/3-process-mouse-dynamics.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/3-process-mouse-dynamics.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/3-process-mouse-dynamics.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/3-process-mouse-dynamics.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/3-process-mouse-dynamics.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/3-process-mouse-dynamics.png"
			
			sizes="100vw"
			alt="The mouse dynamics machine learning prediction pipeline"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The mouse dynamics machine learning prediction pipeline. From recorded mouse data, extracted mouse dynamics serve as the basis of machine learning prediction, applicable for a variety of purposes. (Illustration by <a href='https://dribbble.com/m_opalek'>Michal Opalek</a>) (<a href='https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/3-process-mouse-dynamics.png'>Large preview</a>)
    </figcaption>
  
</figure>

<div class="partners__lead-place"></div>

<h2 id="machine-learning-applications-of-mouse-dynamics">Machine Learning Applications Of Mouse Dynamics</h2>

<p>To set the stage, we must realize that companies aren’t really known for letting go of their competitive advantage by divulging the ins and outs of what they do with the data available to them. This is especially true when it comes to tech giants with access to potentially some of the most interesting datasets on the planet (including mouse interaction data), such as Google, Amazon, Apple, Meta, or Microsoft. Still, <a href="https://www.businessinsider.com/websites-apps-track-mouse-movements-screen-swipes-security-behavioral-biometrics-2019-7">recording mouse data is known to be a common practice</a>.</p>

<p>With a bit of grit, you can find some striking examples of the use of mouse dynamics, not to mention a surprising versatility in techniques. For instance, have you ever visited an e-commerce site just to see it recommend something specific to you, such as a gendered line of cosmetics &mdash; all the while, you never submitted any information about your sex or gender anywhere explicitly?</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aMouse%20data%20transcends%20its%20obvious%20applications,%20as%20is%20replaying%20the%20user%e2%80%99s%20session%20and%20highlighting%20which%20visual%20elements%20people%20interact%20with.%20A%20surprising%20amount%20of%20internal%20and%20external%20factors%20that%20shape%20our%20behavior%20are%20reflected%20in%20data%20as%20subtle%20indicators%20and%20can%20thus%20be%20predicted.%0a&url=https://smashingmagazine.com%2f2024%2f05%2fharness-mouse-interaction-data-machine-learning%2f">
      
Mouse data transcends its obvious applications, as is replaying the user’s session and highlighting which visual elements people interact with. A surprising amount of internal and external factors that shape our behavior are reflected in data as subtle indicators and can thus be predicted.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>Let’s take a look at some further applications. Starting some simple categorization of users.</p>

<h3 id="example-1-biological-sex-prediction">Example 1: Biological Sex Prediction</h3>

<p>For businesses, knowing users well allows them to provide <strong>accurate recommendations</strong> and <strong>personalization</strong> in all sorts of ways, opening the gates for higher customer satisfaction, retention, and average order value. By itself, the prediction of user characteristics, such as gender, isn’t anything new. The reason for basing it on mouse dynamics, however, is that <strong>mouse data is generated virtually by the truckload</strong>. With that, you will have enough data to start making accurate predictions very early.</p>

<p>If you waited for higher-level interactions, such as which products the user visited or what they typed into the search bar, by the time you’d have enough data, the user may have already placed an order or, even worse, left unsatisfied.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/4-prediction-sex.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="417"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/4-prediction-sex.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/4-prediction-sex.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/4-prediction-sex.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/4-prediction-sex.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/4-prediction-sex.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/4-prediction-sex.png"
			
			sizes="100vw"
			alt="Illustration of a male and female bee"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Biological sex is among human attributes that can be predicted with mouse dynamics. (Illustration by <a href='https://dribbble.com/m_opalek'>Michal Opalek</a>) (<a href='https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/4-prediction-sex.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The selection of the <strong>machine learning algorithm matters</strong> for a problem. In one <a href="https://www.sciencedirect.com/science/article/pii/S0920548924000187#b9">published scientific paper</a>, six various models have been compared for the prediction of biological gender using mouse dynamics. The dataset for the development and evaluation of the models provides mouse dynamics from participants moving the cursor in a broad range of trajectory lengths and directions. Among the evaluated models &mdash; Logistic regression, Support vector machine, Random forest, XGBoost, CatBoost, and LightGBM &mdash; CatBoost achieved the best F1 score.</p>

<p>Putting people into boxes is far from everything that can be done with mouse dynamics, though. Let’s take a look at a potentially more exciting use case &mdash; trying to predict the future.</p>

<h3 id="example-2-purchase-prediction">Example 2: Purchase Prediction</h3>

<p>Another e-commerce application predicts whether the user has the intent to make a purchase or even whether they are likely to become a <a href="https://www.tandfonline.com/doi/full/10.1080/10447318.2023.2175973">repeat customer</a>. Utilizing such predictions, businesses can adapt personalized sales and marketing tactics to be more effective and efficient, for example, by catering more to likely purchasers to increase their value &mdash; or the opposite, which is investigating unlikely purchasers to find ways to turn them into likely ones.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/5-prediction-purchase.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="417"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/5-prediction-purchase.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/5-prediction-purchase.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/5-prediction-purchase.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/5-prediction-purchase.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/5-prediction-purchase.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/5-prediction-purchase.png"
			
			sizes="100vw"
			alt="Illustration of a purchase prediction based on mouse dynamics represented with a bee making some movements and in the end making a purchase"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Whether the user will convert in the future can be indicated in their mouse dynamics. (Illustration by <a href='https://dribbble.com/m_opalek'>Michal Opalek</a>) (<a href='https://files.smashing.media/articles/harness-mouse-interaction-data-machine-learning/5-prediction-purchase.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Interestingly, a <a href="https://www.tandfonline.com/doi/full/10.1080/10447318.2023.2175973">paper dedicated to the prediction of repeat customership</a> reports that when a gradient boosting model is validated on data obtained from a completely different online store than where it was trained and tuned, it still achieves respectable performance in the prediction of repeat purchases with a combination of mouse dynamics and other interaction and non-interaction features.</p>

<p>It is plausible that though machine-learning applications tend to be highly domain-specific, some models could be used as a starting seed, carried over between domains, especially while still waiting for user data to materialize.</p>

<h3 id="additional-examples">Additional Examples</h3>

<p>Applications of mouse dynamics are a lot more far-reaching than just the domain of e-commerce. To give you some ideas, here are a couple of other variables that have been predicted with mouse dynamics:</p>

<ul>
<li>The truthfulness of answers given in a questionnaire.<br />
Source: <a href="https://link.springer.com/article/10.1007/s00426-020-01473-3">Detecting faking-good response style in personality questionnaires with four choice alternatives</a></li>
<li>Whether the user is experiencing confusion with the interface of a web application.<br />
Source: <a href="https://dl.acm.org/doi/10.1145/3314183.3324978">YesElf: Personalized Onboarding for Web Applications</a></li>
<li>The arm dexterity of cerebral palsy patients.<br />
Source: <a href="https://www.sciencedirect.com/science/article/abs/pii/S1071581913001985?via%3Dihub">Using cursor measures to investigate the effects of impairment severity on cursor control for youths with cerebral palsy</a></li>
<li>Personal identities for biometric authentication.<br />
Source: <a href="https://ieeexplore.ieee.org/document/8768407">User Authentication Based on Mouse Dynamics Using Deep Neural Networks: A Comprehensive Study</a></li>
<li>Distinguishing bots from real users.<br />
Source: <a href="https://link.springer.com/chapter/10.1007/978-3-030-04834-1_21">Bot or Human? A Behavior-Based Online Bot Detection System</a></li>
<li>Personality traits to psychologically profile users.<br />
Source: <a href="https://dl.acm.org/doi/10.1145/1473018.1473066">Measuring personality from keyboard and mouse use</a></li>
</ul>

<h2 id="the-mouse-shaped-caveat">The Mouse-Shaped Caveat</h2>

<p>When you think about mouse dynamics in-depth, some questions will invariably start to emerge. The user isn’t the only variable that could determine what mouse data looks like. What about the mouse itself?</p>

<p>Many brands and models are available for purchase to people worldwide. Their technical specifications deviate in attributes such as resolution (measured in DPI or, <a href="https://www.prosettings.com/cpi-and-ecpi/">more accurately</a>, CPI), weight, polling rate, and tracking speed. Some mouse devices have multiple profile settings that can be swapped between at will. For instance, the common CPI of an office mouse is around 800-1,600, while a gaming mouse can go to extremes, from 100 to 42,000. To complicate things further, the operating system has its own mouse settings, such as sensitivity and acceleration. Even the surface beneath the mouse can differ in its friction and optical properties.</p>

<p>Can we be sure that mouse data is reliable, given that basically everyone potentially works under different mouse conditions?</p>

<p>For the sake of argument, let’s say that as a part of a web app you’re developing, you implement biometric authentication with mouse dynamics as a security feature. You sell it by telling customers that this form of auth is capable of catching attackers who try to meddle in a tab that somebody in the customer’s organization left open on an unlocked computer. Recognizing the intruder, the app can sign the user out of the account and trigger a warning sent to the company. Kicking out the real authorized user and sounding the alarm just because somebody bought a new mouse would not be a good look. Recalibration to the new mouse would also produce friction. Some people like to change their mouse sensitivity or use different computers quite often, so frequent calibration could potentially present a critical flaw.</p>

<p>We found that up until now, there was barely anything written about whether or how mouse configuration affects mouse dynamics. By mouse configuration, we refer to all properties of the environment that could impact mouse behavior, including both hardware and software.</p>

<p>From the authors of papers and articles about mouse dynamics, there is barely a mention of mouse devices and settings involved in development and testing. This could be seen as concerning. Though hypothetically, there might not be an actual reason for concern, that is exactly the problem. There was just not even enough information to make a judgment on whether mouse configuration matters or not. This question is what drove the study conducted by <a href="https://www.uxtweak.com/">UXtweak Research</a> (as covered in the peer-reviewed <a href="https://www.sciencedirect.com/science/article/pii/S0920548924000187?via%3Dihub#b23">paper in Computer Standards &amp; Interfaces</a>).</p>

<p>The quick answer? <strong>Mouse configuration does detrimentally affect mouse dynamics.</strong> How?</p>

<ol>
<li>It may cause the majority of mouse dynamics values to change in a statistically significant way between different mouse configurations.</li>
<li>It may lower the prediction performance of a machine learning model if it was trained on a different set of mouse configurations than it was tested on.</li>
</ol>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aIt%20is%20not%20automatically%20guaranteed%20that%20prediction%20based%20on%20mouse%20dynamics%20will%20work%20equally%20well%20for%20people%20on%20different%20devices.%20Even%20the%20same%20person%20making%20the%20exact%20same%20mouse%20movements%20does%20not%20necessarily%20produce%20the%20same%20mouse%20dynamics%20if%20you%20give%20them%20a%20different%20mouse%20or%20change%20their%20settings.%0a&url=https://smashingmagazine.com%2f2024%2f05%2fharness-mouse-interaction-data-machine-learning%2f">
      
It is not automatically guaranteed that prediction based on mouse dynamics will work equally well for people on different devices. Even the same person making the exact same mouse movements does not necessarily produce the same mouse dynamics if you give them a different mouse or change their settings.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>We cannot say for certain how big an impact mouse configuration can have in a specific instance. For the problem that you are trying to solve (specific domain, machine learning model, audience), the impact could be big, or it could be negligible. But to be sure, it should definitely receive attention. After all, even a deceptively small percentage of improvement in prediction performance can translate to thousands of satisfied users.</p>

<div class="partners__lead-place"></div>

<h2 id="tackling-mouse-device-variability">Tackling Mouse Device Variability</h2>

<p>Knowledge is half the battle, and so it is also with the realization that mouse configuration is not something that can be just ignored when working with mouse dynamics. You can <strong>perform tests</strong> to evaluate the size of the effect that mouse configuration has on your model’s performance. If, in some configurations, the number of false positives and false negatives rises above levels that you are willing to tolerate, you can start looking for potential solutions by tweaking your prediction model.</p>

<p>Because of the potential variability in real-world conditions, differences between mouse configurations can be seen as a concern. Of course, if you can rely on controlled conditions (such as in apps only accessible via standardized kiosks or company-issued computers and mouse devices where all system mouse settings are locked), you can avoid the concern altogether. Given that the training dataset uses the same mouse configuration as the configuration used in production, that is. Otherwise, that may be something new for you to optimize.</p>

<p>Some predicted variables can be observed repeatedly from the same user (e.g., emotional state or intent to make a purchase). In the case of these variables, to mitigate the problem of different users utilizing different mouse configurations, it would be possible to build personalized models trained and tuned on the data from the individual user and the mouse configurations they normally use. You also could try to normalize mouse dynamics by adjusting them to the specific user’s “normal” mouse behavior. The challenge is how to accurately establish normality. Note that this still doesn’t address situations when the user changes their mouse or settings.</p>

<h2 id="where-to-take-it-from-here">Where To Take It From Here</h2>

<p>So, we arrive at the point where we discuss the next steps for anyone who can’t wait to apply mouse dynamics to machine learning purposes of their own. For web-based solutions, you can start by looking at <a href="https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent">MouseEvents</a> in JavaScript, which is how you’ll obtain the elementary mouse data necessary.</p>

<p>Mouse events will serve as the base for calculating mouse dynamics and the features in your model. Pick any that you think could be relevant to the problem you are trying to solve (see our list above, but don’t be afraid to design your own features). Don’t forget that you can also <strong>combine mouse dynamics with domain and application-specific features</strong>.</p>

<p>Problem awareness is key to designing the right solutions. Is your prediction problem within-subject or between-subject? A classification or a regression? Should you use the same model for your whole audience, or could it be more effective to tailor separate models to the specifics of different user segments?</p>

<p>For example, the mouse behavior of freshly registered users may differ from that of regular users, so you may want to divide them up. From there, you can consider the suitable machine/deep learning algorithm. For binary classification, a Support vector machine, Logistic regression, or a Random Forest could do the job. To delve into more complex patterns, you may wish to reach for a Neural network.</p>

<p>Of course, the best way to uncover which machine/deep learning algorithm works best for your problem is to experiment. Most importantly, don’t give up if you don’t succeed at first. You may need to go back to the drawing board a few times to reconsider your feature engineering, expand your dataset, validate your data, or tune the hyperparameters.</p>

<h2 id="conclusion">Conclusion</h2>

<p>With the ongoing trend of more and more online traffic coming from mobile devices, some futurist voices in tech might have you believe that <a href="https://www.cnet.com/culture/r-i-p-the-computer-mouse-1972-2010/">“the computer mouse is dead”</a>. Nevertheless, those voices have been greatly exaggerated. One look at statistics reveals that while mobile devices are excessively popular, the desktop computer and the computer mouse are <a href="https://gs.statcounter.com/platform-market-share/desktop-mobile-tablet">not going anywhere anytime soon</a>.</p>

<p>Classifying users as either mobile or desktop is a false dichotomy. Some people prefer the desktop computer for tasks that call for exact controls while interacting with complex information. Working, trading, shopping, or managing finances &mdash; all, coincidentally, are tasks with a good amount of importance in people’s lives.</p>

<p>To wrap things up, <strong>mouse data can be a powerful information source</strong> for improving digital products and services and getting yourself a headway against the competition. Advantageously, <strong>data for mouse dynamics does not need to involve anything sensitive or in breach of the user’s privacy</strong>. Even without identifying the person, machine learning with mouse dynamics can shine a light on the user, letting you serve them more proper personalization and recommendations, even when other data is sparse. Other uses include biometrics and analytics.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aDo%20not%20underestimate%20the%20impact%20of%20differences%20in%20mouse%20devices%20and%20settings,%20and%20you%20may%20arrive%20at%20useful%20and%20innovative%20mouse-dynamics-driven%20solutions%20to%20help%20you%20stand%20out.%0a&url=https://smashingmagazine.com%2f2024%2f05%2fharness-mouse-interaction-data-machine-learning%2f">
      
Do not underestimate the impact of differences in mouse devices and settings, and you may arrive at useful and innovative mouse-dynamics-driven solutions to help you stand out.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Kate Kalcevich</author><title>Mobile Accessibility Barriers For Assistive Technology Users</title><link>https://www.smashingmagazine.com/2024/02/mobile-accessibility-barriers-assistive-technology-users/</link><pubDate>Mon, 19 Feb 2024 10:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2024/02/mobile-accessibility-barriers-assistive-technology-users/</guid><description>Accessibility goes beyond making products user-friendly. It can significantly impact the quality of life for people with disabilities. Kate Kalcevich shares lessons she learned from assistive technology users &amp;mdash; challenges and barriers they encounter on mobile devices.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2024/02/mobile-accessibility-barriers-assistive-technology-users/" />
              <title>Mobile Accessibility Barriers For Assistive Technology Users</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Mobile Accessibility Barriers For Assistive Technology Users</h1>
                  
                    
                    <address>Kate Kalcevich</address>
                  
                  <time datetime="2024-02-19T10:00:00&#43;00:00" class="op-published">2024-02-19T10:00:00+00:00</time>
                  <time datetime="2024-02-19T10:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>I often hear that native mobile app accessibility is more challenging than web accessibility. Teams don’t know where to start, where to find guidance on mobile accessibility, or how to prevent mobile-specific accessibility barriers.</p>

<p>As someone who works for a company with an active community of mobile assistive technology users, I get to learn about the challenges from the user’s perspective. In fact, I recently ran a survey with our community about their experiences with mobile accessibility, and I’d like to share what I learned with you.</p>

<p>If you only remember one thing from this article, make it this:</p>

<blockquote>Half of assistive technology users said that accessibility barriers have a <strong>significant</strong> impact on their day-to-day well-being.</blockquote>

<p>Accessibility goes beyond making products user-friendly. It can impact the quality of life for people with disabilities.</p>

<h2 id="types-of-mobile-assistive-technology">Types Of Mobile Assistive Technology</h2>

<p>I typically group assistive technologies into three categories:</p>

<ol>
<li><strong>Screen readers</strong>: software that converts information on a screen to speech or braille.</li>
<li><strong>Screen magnifiers</strong>: software or system settings to magnify the screen, increase contrast, and otherwise modify the content to make it easier to see.</li>
<li><strong>Alternative navigation</strong>: software and/or hardware that replaces an input device such as a keyboard, mouse, or touchscreen.</li>
</ol>

<p>Across all categories of assistive technology, 81% of the people I surveyed change the accessibility settings on their smartphone and/or tablet. Examples of accessibility settings include the following:</p>

<ul>
<li>Increasing the font size;</li>
<li>Turning on captions;</li>
<li>Extending the tap duration;</li>
<li>Inverting colours.</li>
</ul>

<p>There are smartphone settings such as dark mode that benefit people with disabilities even though they aren’t considered accessibility settings.</p>

<p>Now, let’s dive into the specifics of each assistive technology category and learn more about the user preferences that shape their digital experiences.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p><strong>Web forms</strong> are at the center of every meaningful interaction. Meet Adam Silver&rsquo;s <strong><a href="https://www.smashingmagazine.com/printed-books/form-design-patterns/">Form Design Patterns</a></strong>, a practical guide to <strong>designing and building forms</strong> for the web.</p>
<a data-instant href="https://www.smashingmagazine.com/printed-books/form-design-patterns/" class="btn btn--green btn--large" style="">Jump to table of contents&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="https://www.smashingmagazine.com/printed-books/form-design-patterns/" class="feature-panel-image-link">
<div class="feature-panel-image"><picture><source type="image/avif" srcSet="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/64e57b41-b7f1-4ae3-886a-806cce580ef9/form-design-patterns-shop-image-1-1.avif" />
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/51e0f837-d85d-4b28-bfab-1c9a47f0ce33/form-design-patterns-shop-image.png"
    alt="Feature Panel"
    width="481"
    height="698"
/>
</picture>
</div>
</a>
</div>
</aside>
</div>

<h2 id="screen-reader-users">Screen Reader Users</h2>

<p>Both iPhone and Android smartphones come with a screen reader installed. On iPhone, the screen reader is VoiceOver, and on Android, it is TalkBack. Both screen readers allow users to explore by touching and dragging their fingers to hear content under their fingers read out loud or to swipe forwards and backward through all elements on the screen in a linear fashion. Both screen readers also let users navigate by headings or other types of elements.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/1-voiceover-settings-iphone.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="710"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/1-voiceover-settings-iphone.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/1-voiceover-settings-iphone.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/1-voiceover-settings-iphone.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/1-voiceover-settings-iphone.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/1-voiceover-settings-iphone.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/1-voiceover-settings-iphone.png"
			
			sizes="100vw"
			alt="VoiceOver settings on iPhone"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      VoiceOver settings on iPhone. (<a href='https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/1-voiceover-settings-iphone.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>The mobile screen reader users I surveyed tend to have several devices that work together to cover all their accessibility needs, and they support businesses that prioritize mobile accessibility.</p>

<ul>
<li>Nearly half of screen reader users also own a smartwatch.</li>
<li>Half use an external keyboard with their smartphone, and a third use a braille display.</li>
<li>Almost all factor the accessibility of apps and mobile sites into deciding which businesses to support.</li>
</ul>

<p>That last point is really important! Accessibility truly inspires purchasing decisions and brand loyalty.</p>

<h2 id="screen-magnification-users">Screen Magnification Users</h2>

<p>In addition to magnification, Android smartphones also have a variety of vision-related accessibility features that allow users to change screen colours and text sizes. The iPhone Magnifier app lets users apply colour filters, adjust brightness or contrast, and detect people or doors nearby.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/2-magnification-settings-android.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="724"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/2-magnification-settings-android.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/2-magnification-settings-android.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/2-magnification-settings-android.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/2-magnification-settings-android.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/2-magnification-settings-android.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/2-magnification-settings-android.png"
			
			sizes="100vw"
			alt="Magnification settings on Android"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Magnification settings on Android. (<a href='https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/2-magnification-settings-android.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>My survey showed that screen magnification users had the highest percentage of tablet ownership, with 77% owning both a smartphone and a tablet. Alternative navigation users followed closely, with 62% owning a tablet, but only 42% of the screen reader users I surveyed own a tablet.</p>

<p>Screen magnification users are less likely to investigate the accessibility of paid apps before purchasing (63%) compared to screen reader and alternative navigation users (89% and 91%, respectively). I suspect this is because device magnification, contrast, and colour inversion settings may allow users to work around some design choices that make an app inaccessible.</p>

<div class="partners__lead-place"></div>

<h2 id="alternative-navigation-users">Alternative Navigation Users</h2>

<p>Switch Access (Android) and Switch Control (iOS) let users interact with their devices using one or more switches instead of the touchscreen. There are a variety of things you can use as a switch: an external device, keyboard, sounds, or the smartphone camera or buttons.</p>

<p>Item scan allows users to highlight items one by one and select an item in focus by activating the switch. Point and scan moves a horizontal line down from the top of the screen. When this line is over the desired element, the user selects their switch to stop it. A vertical line then moves from the left of the screen. When this line is also over the element, the user stops it with their switch. The user can then select the element in the cross hairs of the two lines. In addition to these two methods, users can also customize buttons to perform gestures such as swipe down or swipe left.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/3-point-scanning-iphone-select-app-store.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="677"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/3-point-scanning-iphone-select-app-store.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/3-point-scanning-iphone-select-app-store.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/3-point-scanning-iphone-select-app-store.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/3-point-scanning-iphone-select-app-store.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/3-point-scanning-iphone-select-app-store.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/3-point-scanning-iphone-select-app-store.png"
			
			sizes="100vw"
			alt="Point scanning on iPhone to select the App Store"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Point scanning on iPhone to select the App Store. (Image source: <a href='https://support.apple.com/en-us/HT201370'>apple.com</a>) (<a href='https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/3-point-scanning-iphone-select-app-store.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Android and iPhone devices can be controlled through Voice Access and Voice Control. Both allow users to speak commands to interact with their smartphone instead of using the touchscreen. The command “Say names” can expose labels that aren’t obvious. The command “Show numbers” allows users to say “tap two” to select the element labeled with the number 2.  “Show grid” is a command often used as a last resort to select an element. This approach overlays a grid across their screen area and allows users to select the grid square where the element is in focus.</p>

<p>Alternative navigation users were least likely to own a smartwatch (26%) out of all three assistive technology categories, according to my survey. All the alternative navigation users that own a smartwatch, except for one, use it for health tracking. 24% use an external switch device with their smartphone.</p>

<h2 id="most-common-mobile-accessibility-barriers">Most Common Mobile Accessibility Barriers</h2>

<p>Now that you know about some of the assistive technologies available on Android and iPhone devices, we can explore some specific challenges commonly encountered by users when navigating websites and native apps on their smartphones.</p>

<p>I’ll outline an inclusive development process that can help you discover barriers that are specific to your own app. If you need general tips on what to avoid <em>right now</em>, here are common mobile accessibility issues that assistive technology users encounter. To get this list, I asked the community to select up to three of their most challenging accessibility barriers on mobile.</p>

<h3 id="unlabelled-buttons-or-links">Unlabelled Buttons Or Links</h3>

<p>Unlabelled buttons and links are the number one challenge reported by assistive technology users. Screen reader users are impacted the most by unlabelled elements, but also people who use voice commands to interact with their smartphone.</p>

<h3 id="small-buttons-or-links">Small Buttons Or Links</h3>

<p>Buttons and links that are too small to tap with a finger or require great precision to select using switch functions are a challenge for anyone with mobility issues. Tiny buttons and links are also hard to see for anyone with low vision.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/4-buttons.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="304"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/4-buttons.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/4-buttons.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/4-buttons.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/4-buttons.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/4-buttons.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/4-buttons.png"
			
			sizes="100vw"
			alt="Examples of tiny and normal buttons"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://www.smashingmagazine.com/2023/04/accessible-tap-target-sizes-rage-taps-clicks/'>Smashing Magazine</a>. (<a href='https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/4-buttons.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="gesture-interactions">Gesture Interactions</h3>

<p>Gestures like swipe to delete, tap and drag, and anything more complex than a simple tap or double tap can cause problems for many users. Gestures can be difficult to discover, and if you’re not a power mobile user, you may never figure them out. Your best bet is to include a button to perform the same action that a gesture can perform. Custom actions can expose more options, but only to assistive technology users and not to people with disabilities that may not use assistive technology, for example, cognitive disabilities.</p>

<h3 id="elements-blocking-parts-of-the-screen">Elements Blocking Parts Of The Screen</h3>

<p>A chat button that is always hovering and may cover parts of the content. A sticky header or footer that takes up a big portion of the screen when the user zooms in or magnifies their screen. These screen blockers can make it very difficult or impossible for some users to view content.</p>

<h3 id="missing-error-messages">Missing Error Messages</h3>

<p>Keeping a submit button inactive until a form is correctly filled out is often used as an alternative to providing error messages. That approach can be a challenge for assistive technology users in particular, but also anyone with a cognitive disability or who isn’t tech-savvy. Sometimes, error messages exist, but they aren’t announced to screen reader users.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/8-error-messages.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="312"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/8-error-messages.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/8-error-messages.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/8-error-messages.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/8-error-messages.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/8-error-messages.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/8-error-messages.jpg"
			
			sizes="100vw"
			alt="An example with and without an error message"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/8-error-messages.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="resizing-text-and-pinch-and-zoom">Resizing Text And Pinch And Zoom</h3>

<p>When an app doesn’t respect the font size increases set by a user through accessibility settings, people who need larger text must find alternative ways to read content. Some websites disable pinch and zoom &mdash; a feature that is not just useful for enlarging text but is often used to see images better.</p>

<div class="partners__lead-place"></div>

<h2 id="other-mobile-accessibility-barriers">Other Mobile Accessibility Barriers</h2>

<p>The accessibility barriers that weren’t mentioned as often but still represent significant challenges for assistive technology users include:</p>

<ul>
<li><strong>Low contrast</strong><br />
If the contrast between text and background is low, it makes it harder for folks with low vision to read. Customizing contrast settings can make content more legible for a broader range of people.</li>
<li><strong>No dark mode</strong><br />
For some people, black text on a white background can be painful to the eyes or trigger migraines.</li>
<li><strong>Fixed orientation</strong><br />
Not being able to rotate from portrait to landscape can impact people who have their device in a fixed position on a wheelchair or people with low vision who use landscape mode to make text and images appear larger.</li>
<li><strong>Missing captions</strong><br />
No captions on videos were also cited as a barrier. This is one that I relate to personally, as I rely on captions myself because of my hearing disability.</li>
</ul>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/6-website-dark-light-mode.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="593"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/6-website-dark-light-mode.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/6-website-dark-light-mode.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/6-website-dark-light-mode.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/6-website-dark-light-mode.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/6-website-dark-light-mode.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/6-website-dark-light-mode.png"
			
			sizes="100vw"
			alt="A website with dark and light modes"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      A website with dark and light modes. (<a href='https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/6-website-dark-light-mode.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>I knew I couldn’t capture all of the mobile accessibility barriers in my list of choices, so I gave the survey respondents a free text field to enter their own. Here’s what they said:</p>

<ul>
<li>Screen reader users encounter unlabelled images or labels that don’t make sense. AI-based image recognition technology can help but often can’t provide the same context that a designer would. Screen reader users also run into apps that unexpectedly move their screen reader’s focus, changing their location on the screen and causing confusion.</li>
<li>Voice Control users find apps and sites that aren’t responsive to their voice commands. They have to try alternate commands to activate interactive elements, sometimes slowing them down significantly.</li>
<li>Complex navigation, such as large, dynamic lists or menus that expand and collapse automatically, can be challenging to use with assistive technologies. There aren’t often workarounds to interacting with navigation, so this can influence whether a user will abandon an app or website.</li>
</ul>

<h2 id="inclusive-design-approaches-for-mobile">Inclusive Design Approaches For Mobile</h2>

<p>It’s important to avoid getting overwhelmed and not doing anything at all because mobile accessibility seems hard. Instead, focus on fixing the most critical issues first, then release, celebrate, and repeat the process.</p>

<p>Ideally, you’ll want to change your processes to avoid creating more accessibility issues in the future. Here’s a high-level process for inclusive app development:</p>

<ul>
<li>Do <strong>research with users</strong> to understand how their assistive technology works and what challenges they have with your existing app.</li>
<li>Create <strong>designs for accessibility features</strong> such as font scaling and state and focus indicators.</li>
<li>Revise designs and get <strong>feedback from users</strong> that can be applied in development.</li>
<li><strong>Annotate design files</strong> for accessibility based on user feedback and best practices.</li>
<li>Create a new build and use <strong>automated testing tools</strong> to find barriers.</li>
<li>Do <strong>manual QA testing</strong> on the new build using your phone’s accessibility settings.</li>
<li>Release a private build and <strong>test with users</strong> again before the production release.</li>
</ul>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/7-visual-studio-app-center.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="378"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/7-visual-studio-app-center.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/7-visual-studio-app-center.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/7-visual-studio-app-center.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/7-visual-studio-app-center.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/7-visual-studio-app-center.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/7-visual-studio-app-center.png"
			
			sizes="100vw"
			alt="A screenshot of the Visual Studio App Center"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Services like Visual Studio App Center support continuous build, testing, release, and monitoring of apps, including supporting releases to individual testers or groups of testers. (<a href='https://files.smashing.media/articles/mobile-accessibility-barriers-assistive-technology-users/7-visual-studio-app-center.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="conclusion">Conclusion</h2>

<p>Fixing and, more importantly, avoiding mobile accessibility barriers can be easier if you understand how assistive technologies work and the common challenges users encounter on mobile devices. Remember the key takeaway from the beginning of this article: half of the people surveyed felt <strong>accessibility barriers had a significant impact on their well-being</strong>. With that in mind, I encourage you not to let a lack of understanding of technical accessibility compliance hold you back from building inclusive apps and mobile-friendly websites.</p>

<p>When you look at accessibility from the lens of usability for everyone and learn from assistive technology users, you take a step towards empowering everyone to independently interact with your products and services, playing your part in building a more equitable Internet.</p>

<h3 id="further-reading-on-smashingmag">Further Reading On SmashingMag</h3>

<ul>
<li>“<a href="https://www.smashingmagazine.com/2022/09/wai-aria-guide/">Making Sense Of WAI-ARIA: A Comprehensive Guide</a>,” Kate Kalcevich</li>
<li>“<a href="https://www.smashingmagazine.com/2023/02/guide-accessible-form-validation/">A Guide To Accessible Form Validation</a>,” Sandrina Pereira</li>
<li>“<a href="https://www.smashingmagazine.com/2022/03/windows-high-contrast-colors-mode-css-custom-properties/">Windows High Contrast Mode, Forced Colors Mode And CSS Custom Properties</a>,” Eric Bailey</li>
<li>“<a href="https://www.smashingmagazine.com/2023/06/testing-sites-apps-blind-users-cheat-sheet/">Testing Sites And Apps With Blind Users: A Cheat Sheet</a>,” Slava Shestopalov &amp; Eugene Shykiriavyi</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Eduard Kuric</author><title>Five-Second Testing: Taking A Closer Look At First Impressions (Case Study)</title><link>https://www.smashingmagazine.com/2023/12/five-second-testing-case-study/</link><pubDate>Wed, 06 Dec 2023 10:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2023/12/five-second-testing-case-study/</guid><description>Five-second testing is a popular method of usability research used in the industry. It is a quick and effective way to test concepts of visual designs, yet in essence, its core belief boils down to virtually a superstition. A notion barely backed up by concrete evidence, yet often taken at face value, that somehow five seconds are just the right time to gauge first impressions. In this article, Eduard Kuric looks under the hood of how first impressions are affected by time, the test participant’s cognitive abilities and the visual complexity of the tested picture, and how UX researchers and product owners can ensure that the user’s first steps can get off on the right foot.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2023/12/five-second-testing-case-study/" />
              <title>Five-Second Testing: Taking A Closer Look At First Impressions (Case Study)</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Five-Second Testing: Taking A Closer Look At First Impressions (Case Study)</h1>
                  
                    
                    <address>Eduard Kuric</address>
                  
                  <time datetime="2023-12-06T10:00:00&#43;00:00" class="op-published">2023-12-06T10:00:00+00:00</time>
                  <time datetime="2023-12-06T10:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>In today’s world of shortening attention spans and omnipresent hustle, wasting even a second could mean losing the chance to earn more time from a person you want to impress. If your interests lie in creating good user experiences, there is a <a href="https://www.smashingmagazine.com/2020/06/test-design-concept-effectiveness/">fair chance</a> you have heard of <strong>five-second testing</strong>.</p>

<blockquote>Five-second testing is an established technique of usability research used by UX researchers, designers, product managers, and in a variety of other professions, such as marketing or business analysis.</blockquote>

<p>In short, you show a picture of whatever you are designing (site, app, pair of socks) to a member of your intended audience for exactly five seconds. Then, you hide the picture and ask the participant a couple of questions. The goal is to learn whether the reaction &mdash; the participants’s first impression &mdash; is what you wanted to see. <em>Did you get the main message across? Do people remember the company’s name?</em> Sounds like an efficient way to test your product without needing to turn to full-on usability testing, right?</p>

<p><strong>Note</strong>: <em>The word “participant” in this article is used to refer to users involved in five-second testing or related usability research methods. The word “user” is used in more general contexts since users form first impressions all the time, not just when you are testing it.</em></p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/five-second-testing-case-study/1-illustration-product-testing.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="488"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/five-second-testing-case-study/1-illustration-product-testing.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/five-second-testing-case-study/1-illustration-product-testing.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/five-second-testing-case-study/1-illustration-product-testing.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/five-second-testing-case-study/1-illustration-product-testing.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/five-second-testing-case-study/1-illustration-product-testing.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/five-second-testing-case-study/1-illustration-product-testing.png"
			
			sizes="100vw"
			alt="Illustration with a timer set for 5 seconds and a question, ‘What product do you think this company sells?’"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Image source: <a href='https://dribbble.com/m_opalek'>Michal Opalek</a>. (<a href='https://files.smashing.media/articles/five-second-testing-case-study/1-illustration-product-testing.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Why is it <strong>five</strong> seconds exactly, though? Are five seconds some magical moment when everything we see should become clear? And if it does not, does it automatically mean that a user experience is bad? Or are five seconds just the right amount of time for first impressions to brew in the user’s mind so that they’re neither undercooked nor overcooked?</p>

<p>These are some of the questions that we asked ourselves. Not satisfied with the answers written by others who covered the topic before us, we kept drilling and conducted an <a href="https://www.tandfonline.com/doi/full/10.1080/0144929X.2023.2272747?src=">actual peer-reviewed scientific case study</a>, exploring the hidden truths behind the testing of first impressions. The research paper examines the five-second test and discusses the results.</p>

<p>So strap in and read <strong>what science has to say about five-second testing</strong>. And then, <strong>what the implications are for you</strong> so that you can take practical advantage of this new knowledge to develop better first impressions of your services or products. But first, let us delve into what we know about five-second testing and its caveats so that you see the greater picture of the focal points of our investigation.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="https://www.smashingconf.com/online-workshops/">Smashing Workshops</a></strong> on <strong>front-end, design &amp; UX</strong>, with practical takeaways, live sessions, <strong>video recordings</strong> and a friendly Q&amp;A. With Brad Frost, Stéph Walter and <a href="https://smashingconf.com/online-workshops/workshops">so many others</a>.</p>
<a data-instant href="smashing-workshops" class="btn btn--green btn--large" style="">Jump to the workshops&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="smashing-workshops" class="feature-panel-image-link">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-scubadiving-panel.svg"
    alt="Feature Panel"
    width="257"
    height="355"
/>

</div>
</a>
</div>
</aside>
</div>

<h2 id="the-mythos-of-five-seconds-and-its-gaps">The Mythos Of Five Seconds And Its Gaps</h2>

<p>You may be familiar with the well-known statistic that <a href="https://www.nngroup.com/articles/how-long-do-users-stay-on-web-pages/">a website has about ten seconds to communicate its key message to the user</a>. Knowing that waiting only five seconds to ask testing participants about their first impressions may suddenly seem like an odd choice. If indeed visitors of a website have about ten seconds to grasp a message, are five seconds really enough time for users? There is an alleged justification, as we explain below.</p>

<p>Cutting a bit forward, though, the factual basis for it is admittedly a bit of a Wild West if you look for hard data to support it. There is an almost uncanny resemblance to another not wholly scientific five-second rule that says it’s okay to eat food off the ground if it’s within five seconds from when it dropped there.</p>

<p>The five-second testing method has its <a href="https://books.google.sk/books?hl=en&amp;lr=&amp;id=b7XrAgAAQBAJ&amp;oi=fnd&amp;pg=PP1&amp;ots=5WmLD6RjuI&amp;sig=SSPVM6ZNKTiib3nVEWWF4W9X8dM&amp;redir_esc=y#v=onepage&amp;q&amp;f=false">origins as a simplification of usability testing</a>. The first references to five-second testing point to <a href="https://articles.centercentre.com/five_second_test/">Christine Perfetti, who coined the term for the method in the mid-2000s</a>. The answer to “Why five seconds exactly?” comes largely from anecdotal evidence in the form of the experience of usability researchers.</p>

<p>The common story is that if something is shown to participants for more than five seconds, their first impressions will start to deviate from the actual user’s genuine initial impressions. The participant’s perspective becomes more analytical and less task-driven. The five-second test lets you avoid overtly speculative feedback that nobody would give you under normal circumstances.</p>

<p>Fair enough, that could potentially be true. But five seconds is still quite a short period of time. Consider how different people can be when it comes to their <strong>cognitive abilities</strong> (and there is nothing wrong with that). For example, one user’s sharp perception may let them realistically form first impressions in five seconds or faster, but another user may barely have the time to blink, much less absorb any meaningful information–they need a moment to take it in at their own tempo.</p>

<p>The reasoning starts to fall apart a bit more at its seams once you also consider the <strong>visual complexity of the stimulus</strong> (a.k.a., the picture you show to the participants). The nature of the things you may want to test can range from very simple to very complex. If the stimulus is simple, it is possible to take even less than five seconds for participants to form their initial impressions. Would this mean that there would be the risk of them using the remaining time to get over-exceedingly analytical?</p>

<p>Conversely, there is the question of whether five seconds is enough time to let participants realistically visually scan a more complex stimulus. I can already hear staunch proponents of five-second testing saying that this last discrepancy is actually rightfully intentional. It’s a feature, not a bug, if you will.</p>

<p>After all, if a stimulus is too complex, that is exactly why you conduct five-second testing. It allows us to find out about things like complexity. It can help you find out if participants cannot extract the key information you want to communicate so that you can fix it.</p>

<p>However, we need to consider that not all user interfaces are the landing pages of websites. They serve to support different user tasks, some of which cannot avoid having a certain degree of complexity.</p>

<p>Five-second testing guides <a href="https://articles.centercentre.com/five_second_test/">typically avoid directly addressing testing of these types of user interfaces by saying</a> that the method has the following limitation: it should not be used to test user interfaces with multiple purposes. If the same stimulus serves for more than one task, it is alleged that you should probably conduct full-fledged usability testing, which is technically correct (the best kind of correct).</p>

<p>Giving up on the five-second testing in the inherently more complex user interfaces, however, also gives up on its advantages for measuring and optimizing first impressions. For instance, the idea that a screenshot or a mockup is all you need to quickly find usability problems and iterate your designs. This is where five-second testing really shines.</p>

<p>Usability testing does not tell you accurately what the actual first impressions are without considerably interrupting the participant. And even then, you would encounter the same problem: <em>At what moment from when the participant is exposed to a design should their first impressions be gauged so that they are genuine?</em></p>

<p>As we have discussed so far, there are certainly a fair number of question marks surrounding five-second testing. The method still undeniably has a number of merits, as proven by our experience at UXtweak, where we also provide our own <a href="https://www.uxtweak.com/five-second-test-tool">Five Second Test tool</a>. A lack of proper research on the topic is what drove us at UXtweak Research to conduct our very own case study.</p>

<div class="partners__lead-place"></div>

<h2 id="the-science-abridged">The Science, Abridged</h2>

<p>Essentially, what we sought to investigate in our case study are the relations of a number of key factors that are absolutely crucial for five-second testing:</p>

<ul>
<li>What are the <strong>cognitive abilities</strong> of the participant engaging in the five-second test?</li>
<li>How <strong>visually complex</strong> is the stimulus shown to the participant?</li>
<li>For <strong>how long</strong> is the stimulus shown to the participant?</li>
<li>What kinds of <strong>questions</strong> do we ask the participants afterward?</li>
<li>What is the <strong>feedback</strong> that participants give you?</li>
</ul>

<p>As you may have noticed, time &mdash; that iconic yet controversial five-second threshold &mdash; is considered a variable factor. In our experiment, we investigate the differences in feedback between three separate groups of participants who are shown pictures for either five (5) or alternatively two (2) or (10) seconds (so a bit less and a bit more time, respectively). This means that it would not be correct to refer to it as just a five-second test anymore, but rather an N-second test (or a first impression test, if you do not wish to be too pedantic about the number of seconds).</p>

<p>Each participant first passes not just one but two cognitive ability tests. Human minds are multifaceted, and there is not just a single “cognitive ability” metric that would encompass everything that the mind can do. Among standard tests used by psychologists, we picked two that are linked to abilities that can be found as the most relevant to the formation and testing of first impressions:</p>

<ul>
<li><strong>Perceptual speed</strong>: How quickly you pick up visual information.</li>
<li><strong>Working memory</strong>: How much information you can mentally process at the same time.</li>
</ul>

<p>Working memory is the appropriate memory ability to focus on since it operates with information that receives the user’s attention. This distinguishes it from sensory memory (the memory processing information that our senses pick up) and long-term memory, where information is stored persistently for later use.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/five-second-testing-case-study/2-working-memory.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="410"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/five-second-testing-case-study/2-working-memory.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/five-second-testing-case-study/2-working-memory.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/five-second-testing-case-study/2-working-memory.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/five-second-testing-case-study/2-working-memory.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/five-second-testing-case-study/2-working-memory.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/five-second-testing-case-study/2-working-memory.png"
			
			sizes="100vw"
			alt="Illustration of how working memory governs the capacity of information that receives attention"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Working memory governs the capacity of information that receives attention. (<a href='https://files.smashing.media/articles/five-second-testing-case-study/2-working-memory.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>For the first impression test itself, six website screenshots were used as the stimuli. These screenshots were selected for possessing a <strong>broad range of visual complexity</strong>, from the simplest with just a few visual elements to the most complex with a number of distinct sections that serve different purposes.</p>

<p>Screenshots of real websites local to Czechia and Slovakia were translated into English, and their logos were replaced with fictional brand names so that, for all intents and purposes, the website screenshots would be authentic yet also unfamiliar to the participants who were recruited in the UK.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/five-second-testing-case-study/3-website-screenshots.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="381"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/five-second-testing-case-study/3-website-screenshots.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/five-second-testing-case-study/3-website-screenshots.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/five-second-testing-case-study/3-website-screenshots.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/five-second-testing-case-study/3-website-screenshots.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/five-second-testing-case-study/3-website-screenshots.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/five-second-testing-case-study/3-website-screenshots.png"
			
			sizes="100vw"
			alt="Website screenshots of varied visual complexity employed during the experiment"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Website screenshots of varied visual complexity which employed during the experiment. (<a href='https://files.smashing.media/articles/five-second-testing-case-study/3-website-screenshots.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Finally, participants were asked to provide feedback by answering practically a complete portfolio of the various <a href="https://books.google.sk/books?hl=en&amp;lr=&amp;id=b7XrAgAAQBAJ&amp;oi=fnd&amp;pg=PP1&amp;ots=5WmLD6RjuI&amp;sig=SSPVM6ZNKTiib3nVEWWF4W9X8dM&amp;redir_esc=y#v=onepage&amp;q&amp;f=false">types of questions that can be typically asked during a first impression test</a>. Each type of question tests a different aspect of the first impressions that the participants have formed inside their heads:</p>

<ul>
<li><strong>Attitudinal questions</strong>: Rating a perceived quality of the website (e.g., ugly vs. attractive) on a scale from 1 to 7.</li>
<li><strong>Target identification questions</strong>: Questions directed at specific elements or aspects of the stimulus.</li>
<li><strong>Memory dump questions</strong>: Asking participants to describe everything that they remember about what they saw.</li>
</ul>

<p>The resulting answers were analyzed both quantitatively (with statistics) and qualitatively (by inspecting the contents of the received answers on an individual level). With it, a number of conclusions can be reached, some expected and some rather surprising.</p>

<p>Now that you have a picture of what our case study was about let’s dive into the actual, interesting implications for developing the first impressions of your product.</p>

<p><strong>Note</strong>: <em>If you would like to immerse yourself in further details of how our case study was conducted, you can learn more in our <a href="https://www.tandfonline.com/doi/full/10.1080/0144929X.2023.2272747?src=">scientific paper</a>.</em></p>

<div class="partners__lead-place"></div>

<h2 id="takeaways">Takeaways</h2>

<p>Statistically, all the variables we experimented with &mdash; the time duration of showing pictures to participants, the participants’ innate cognitive abilities, and the visual complexity of pictures &mdash; had a significant effect on the first impression answers.</p>

<p>For instance, between the groups that were shown screenshots of websites for two, five, and ten seconds, the number of answers that incorrectly identified what the websites were for dropped as time progressed. Notable is the difference between five and ten seconds. If the participants were really focusing on inconsequential details after five seconds, there should not be differences in recognition of such a key aspect as the website’s entire purpose.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/five-second-testing-case-study/4-purpose-identification.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="485"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/five-second-testing-case-study/4-purpose-identification.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/five-second-testing-case-study/4-purpose-identification.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/five-second-testing-case-study/4-purpose-identification.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/five-second-testing-case-study/4-purpose-identification.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/five-second-testing-case-study/4-purpose-identification.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/five-second-testing-case-study/4-purpose-identification.png"
			
			sizes="100vw"
			alt="A graph showing  how the ability to correctly identify the purpose of a webpage gradually rises within the first ten seconds, starting from two seconds"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Ability to correctly identify the purpose of a webpage gradually rises within the first ten seconds. (<a href='https://files.smashing.media/articles/five-second-testing-case-study/4-purpose-identification.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Statistical differences lay the grounds for further observations on how changing the conditions of a test can (or cannot) affect its results:</p>

<ul>
<li><strong>Attitudes crystallize faster than in five seconds.</strong><br />
In attitudinal questions where participants are asked to rate how they view the picture’s various qualities (e.g., from clear to confusing, from captivating to dull), answers stay relatively consistent, regardless of how much time the participant has or how good their cognitive abilities are. If you are laser-focused on assessing participants’ attitudes about your product and nothing else, you could present pictures for two seconds, <a href="https://www.tandfonline.com/doi/abs/10.1080/01449290500330448">or possibly even less, as research done by others on a related topic also implies</a>.</li>
<li><strong>Logos are recognized earlier than in five seconds (with one exception).</strong><br />
The target identification questions where participants are asked to recall the company name from the logo are, on the whole, impacted by time very little. This is to be expected: when viewing a website, our eyes are usually drawn to the top left corner to find out where we have found ourselves. There is an exception to this rule, however.<br />
Among participants with slower perceptual speed, significantly fewer identified the company name correctly at two seconds when compared to five seconds. This establishes five seconds as a more inclusive choice for timing your first impression test if you expect your target audience to have, on average, lower perceptual speed than the general populace and if the primary aim is to test contents of the header, such as logo design or company name identification. Otherwise, two seconds is a safe bet.</li>
<li><strong>Irrelevant nitpicking? Yes, if visual complexity is low.</strong><br />
In some cases, the popular narrative about five seconds being a good viewing time for testing first impressions is indeed true. Particularly for the simplest website screenshots, once five seconds have elapsed, participants start paying attention to minute details (e.g., the girl’s shirt color in the hero image).<br />
Curiously, though, having more time does not mean that participants would write longer or more complex answers. Instead, when participants have ten seconds to view the screenshots, the higher visual complexity of the screenshots is reflected in better-quality answers. Participants stay more on-topic–describing how the site is visually structured or justifying their criticisms of the page’s design. Different viewing times may be optimal in different situations. Especially since…</li>
<li><strong>Low working memory warrants longer viewing time.</strong><br />
When asked to reiterate what they saw in their own words, participants with low and high working memory provided significantly different answers. With low working memory, answers become shorter, less complex, and recall fewer concepts overall. However, when the viewing time is extended to ten seconds, these differences disappear. This implies that the same information is being processed &mdash; memory capacity just dictates how fast it can happen.<br />
Without knowing where each participant’s memory ability stands, it is difficult to tell what they would actually recall if we left them to work at their own pace. Consequently, assessment of working memory before testing first impressions (and adjusting viewing time accordingly) should be considered a good practice.</li>
<li><strong>For cognitive powerhouses, five seconds are enough.</strong><br />
A less practical point maybe, but if you are developing an app for people with reasonably high perceptual speed and working memory &mdash; be it the mentally gifted, hyperproductive hustle enthusiasts, or caffeine addicts &mdash; you could likely show them your screenshots for just two seconds and get similar results as in a five-second test.</li>
<li><strong>Give participants the proper amount of time to form a first impression.</strong><br />
When the visual stimulus is more visually complex in a first impression test, the task of mentally processing it becomes more difficult and time-consuming (just like in any normal scenario). This manifests in test results. Fewer people correctly identify the purpose of a more visually complex website, and they recall fewer elements and aspects of the website.<br />
This could be seen as a bit of a paradox since more complex stimuli mean there is actually more content that participants could potentially remember and comment on, but only if they had the time to absorb the information properly. Data shows that when participants are given ten seconds, the answers do actually normalize, becoming more similar to stimuli of lower visual complexity.</li>
</ul>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aIf%20the%20purpose%20of%20the%20particular%20first%20impression%20test%20is%20not%20to%20remove%20all%20visual%20complexity%20at%20any%20cost%20outright,%20we%20would%20suggest%20adjusting%20the%20viewing%20time%20to%20reflect%20the%20visual%20complexity%20of%20the%20stimulus.%0a&url=https://smashingmagazine.com%2f2023%2f12%2ffive-second-testing-case-study%2f">
      
If the purpose of the particular first impression test is not to remove all visual complexity at any cost outright, we would suggest adjusting the viewing time to reflect the visual complexity of the stimulus.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>Keep in mind there are still aspects of first impression testing that remain unknown. A reasonable question that you can ask now would be: “Okay, so how exactly do I time my first impression test?” While we can sum up our observations into a conceptual framework of how time can be treated in first-impression test planning, it is not an exact guideline; there may be other interpretations or exceptions.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/five-second-testing-case-study/5-testing-different-kinds-questions.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="603"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/five-second-testing-case-study/5-testing-different-kinds-questions.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/five-second-testing-case-study/5-testing-different-kinds-questions.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/five-second-testing-case-study/5-testing-different-kinds-questions.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/five-second-testing-case-study/5-testing-different-kinds-questions.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/five-second-testing-case-study/5-testing-different-kinds-questions.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/five-second-testing-case-study/5-testing-different-kinds-questions.png"
			
			sizes="100vw"
			alt="Illustration showing how much time is needed for different kinds of questions. For example, attitudinal questions require less than five seconds, and target identification or memory dump requires an adjusted number of seconds"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      How to decide how many seconds to show pictures to participants in first impression testing? (<a href='https://files.smashing.media/articles/five-second-testing-case-study/5-testing-different-kinds-questions.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Take this more as an eye-opener and a call to action. Indeed, in our study, ten seconds yielded more appropriate results for more complex websites than five seconds did. But there is nothing to say that for other websites, the best timing could not be fifteen or even twenty seconds. Even more so, once you also factor in the influence of the cognitive ability of each individual participant.</p>

<p>The key takeaway? <strong>When you gauge your audience’s first impressions about something, take a more holistic approach.</strong></p>

<p>Consider your goals for your test. What kind of questions do you want to ask? Use some of the <a href="https://interfacemetrics.aalto.fi/">tools that are available to measure the visual complexity</a> of the pictures that you want to present. Give your participants a <a href="https://humanbenchmark.com/tests/memory">short working memory test</a> before you start bombarding them with pictures and questions.</p>

<p>Try to adjust the timing in your first impression test to match the situation. To give an analogy, by blindly following a different five-second rule and eating off the floor, you could end up getting sick. Be just as cautious about relying on myths in your usability research methods. This is not to discount five seconds. As we show, it is still good timing for first impression tests in plenty of cases, but it is not the be-all and end-all as far as first impression testing goes. By broadening your perspective, you can do even better.</p>

<h3 id="resources">Resources</h3>

<ul>
<li>“<a href="https://www.tandfonline.com/doi/full/10.1080/0144929X.2023.2272747?src=">Cognitive abilities and visual complexity impact first impressions in five-second testing</a>”<br />
The paper by UXtweak Research investigates the impact of timing, cognitive abilities, and visual complexity on first impression testing. Read for further details about the experiment, its outcomes, and a discussion of findings.</li>
<li>“<a href="https://www.nngroup.com/articles/how-long-do-users-stay-on-web-pages/">How Long Do Users Stay on Web Pages?</a>”<br />
Jakob Nielsen’s article on how long it takes people to leave a website (a fact to consider when testing first impressions).</li>
<li>“<a href="https://www.tandfonline.com/doi/abs/10.1080/01449290500330448">Attention web designers: You have 50 milliseconds to make a good first impression!</a>”<br />
The paper by Lindgaard et al. shows that when it comes to attitudes, some first impressions are genuinely formed in a flash.</li>
<li>“<a href="https://books.google.sk/books?hl=en&amp;lr=&amp;id=b7XrAgAAQBAJ&amp;oi=fnd&amp;pg=PP1&amp;ots=5WmLD6RjuI&amp;sig=SSPVM6ZNKTiib3nVEWWF4W9X8dM&amp;redir_esc=y#v=onepage&amp;q&amp;f=false">The UX Five-Second Rules: Guidelines for User Experience Design’s Simplest Testing Technique</a>”<br />
Paul Doncaster’s book on five-second testing provides a thorough summary of existing knowledge about the method and its applications.</li>
<li>“<a href="https://www.smashingmagazine.com/2020/06/test-design-concept-effectiveness/">How to Test a Design Concept for Effectiveness</a>”<br />
Paul Boag’s walkthrough of key concept testing methods, including five-second testing.</li>
<li>“<a href="https://articles.centercentre.com/five_second_test/">5-Second Tests: Measuring Your Site’s Content Pages</a>”<br />
This article by Christine Perfetti, dating back to 2007, can be seen as the first reference to modern five-second testing.</li>
<li><a href="https://interfacemetrics.aalto.fi/">Aalto Interface Metrics tool</a> for measuring visual complexity of user interfaces</li>
<li><a href="https://humanbenchmark.com/tests/memory">Human Benchmark test of visual working memory</a></li>
<li><a href="https://www.uxtweak.com/five-second-test-tool">UXtweak’s Five Second Test tool</a></li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Maximilian Speicher &amp; Johanna Jagow</author><title>An Actionable And Reliable Usability Questionnaire With Only 7 Items: &lt;span style="font-variant: small-caps">Inuit&lt;/span></title><link>https://www.smashingmagazine.com/2023/10/actionable-reliable-usability-questionnaire-inuit/</link><pubDate>Thu, 26 Oct 2023 10:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2023/10/actionable-reliable-usability-questionnaire-inuit/</guid><description>&lt;span style="font-variant: small-caps">Inuit&lt;/span> (short for “&lt;strong>In&lt;/strong>terface &lt;strong>U&lt;/strong>sability &lt;strong>I&lt;/strong>nstrumen&lt;strong>t&lt;/strong>”) is a new questionnaire you can use to assess the usability of your user interface. It has been designed to be more diagnostic than existing usability instruments like, e.g., SUS and for use with machine learning, all the while asking fewer questions than other questionnaires. This article explores how and why &lt;span style="font-variant: small-caps">Inuit&lt;/span> has been developed and why we can be sure that it actually measures usability, and reliably so.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2023/10/actionable-reliable-usability-questionnaire-inuit/" />
              <title>An Actionable And Reliable Usability Questionnaire With Only 7 Items: &lt;span style=&#34;font-variant: small-caps&#34;&gt;Inuit&lt;/span&gt;</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>An Actionable And Reliable Usability Questionnaire With Only 7 Items: &lt;span style=&#34;font-variant: small-caps&#34;&gt;Inuit&lt;/span&gt;</h1>
                  
                    
                    <address>Maximilian Speicher &amp; Johanna Jagow</address>
                  
                  <time datetime="2023-10-26T10:00:00&#43;00:00" class="op-published">2023-10-26T10:00:00+00:00</time>
                  <time datetime="2023-10-26T10:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>A lot of contemporary usability evaluation relies on easily measurable and readily available metrics like conversion rates, task success rates, and time on task, even though it’s questionable how well these are suited for reliably capturing a concept as complex as usability in its entirety.</p>

<p>The same <a href="https://uxdesign.cc/conversion-rate-average-order-value-are-not-ux-metrics-9d6e7e40e286">holds for user experience</a>. When an instrument is used to measure usability, e.g., in controlled user studies or via live intercepts, it’s often the simple single ease question, which is generally not a bad choice, but <a href="https://measuringu.com/seq10/">has its limits</a><a target="_blank" rel="noopener" href="https://2008.maxspeicher.com/2022/09/26/steal-this-blog-post/">.</a></p>

<p><strong>Note</strong>: <em>For more information on usability evaluation, you can check the article “<a href="https://www.sciencedirect.com/science/article/abs/pii/S1071581905001138">Current Practice in Measuring Usability: Challenges to Usability Studies and Research</a>” by Kasper Hornbæk and “<a href="https://www.researchgate.net/publication/351065914_Growth_Marketing_Considered_Harmful">Growth Marketing Considered Harmful</a>” by Maximilian Speicher.</em></p>

<p>Ultimately, when you intend to precisely and reliably measure the usability of a digital product, there’s no way around a scientifically well-founded instrument or, in everyday terms, a “questionnaire.” The most famous one is probably SUS, the <a href="https://www.taylorfrancis.com/chapters/edit/10.1201/9781498710411-35/sus-quick-dirty-usability-scale-john-brooke"><em>System Usability Scale</em></a>, but there are also some others around. Two examples are UMUX, the <a href="https://measuringu.com/umux-lite/"><em>Usability Measure for User Experience</em></a>, and SUMI, the <a href="https://sumi.uxp.ie/"><em>Software Usability Measurement Inventory</em></a>.</p>

<p>To join this party, in this article, we introduce <span style="font-variant: small-caps">Inuit</span> (the <strong>In</strong>terface <strong>U</strong>sability <strong>I</strong>nstrumen<strong>t</strong>), a new usability questionnaire. We will share how and why it was developed and how it’s different from the questionnaires mentioned above.</p>

<p>To immediately cut to the chase: With a scale from 1 (“completely disagree”) to 5 (“completely agree”), <span style="font-variant: small-caps">Inuit</span> looks as follows. The parts in square brackets can be adapted to your specific interface, e.g., <em>products</em> in an <em>online shop</em>, <em>articles</em> on a <em>news website</em>, or <em>results</em> in a <em>search engine</em>.</p>

<table class="tablesaw break-out">
  <tbody>
    <tr>
      <td>Q1</td>
      <td>I found [the information] I was looking for.</td>
    </tr>
    <tr>
      <td>Q2</td>
      <td>I could easily understand [the provided information].</td>
    </tr>
    <tr>
      <td>Q3</td>
      <td>I was confused using [the interface].</td>
    </tr>
    <tr>
      <td>Q4</td>
      <td>I was distracted by elements of [the interface].</td>
    </tr>
    <tr>
      <td>Q5</td>
      <td>Typography and layout added to readability.</td>
    </tr>
    <tr>
      <td>Q6</td>
      <td>There was too much information presented in too little space.</td>
    </tr>
    <tr>
      <td>Q7</td>
      <td>[My desired information] was easily reachable.</td>
    </tr>
  </tbody>
</table>

<p>The <span style="font-variant: small-caps">Inuit</span> metric (a score between 0 to 100, analogous to SUS) can then be calculated as follows:</p>

<p>(Q1 + Q2 + Q5 + Q7 - Q3 - Q4 - Q6 + 11) * <sup>100</sup>&frasl;<sub>28</sub></p>

<blockquote>Why 11 and 28?<br /><br />We have seven items rated on a scale from 1 to 5, but for some (Q1, Q2, Q5, Q7), 5 is the best rating, and for some (Q3, Q4, Q6), 1 is the best rating. Hence, we need to subtract the latter from 6 when we add up everything: Q1 + Q2 + Q5 + Q7 + (6-Q3) + (6-Q4) + (6-Q6) = Q1 + Q2 + Q5 + Q7 - Q3 - Q4 - Q6 + 18. This gives us an overall score between 7 and 35.<br />Now, we want to normalize this to a score between 0 and 100. For this, we first subtract 7 for a score between 0 and 28: Q1 + Q2 + Q5 + Q7 - Q3 - Q4 - Q6 + 18 - 7 = Q1 + Q2 + Q5 + Q7 - Q3 - Q4 - Q6 + 11. Finally, for a score between 0 and 100, we need to divide everything by 28 and multiply by 100: (Q1 + Q2 + Q5 + Q7 - Q3 - Q4 - Q6 + 11) * 100/28.</blockquote>

<p>You might have noticed that compared to, e.g., SUS with 10, <span style="font-variant: small-caps">Inuit</span> consists of only 7 questions. Apart from that, it has two more advantages:</p>

<ul>
<li><span style="font-variant: small-caps">Inuit</span> has been designed to provide <strong>training data for machine-learning models</strong> that can then <a href="https://uxdesign.cc/so-how-can-we-measure-ux-93fad8a8ddc9">automatically predict usability from user interactions or web analytics data</a>.</li>
<li>Its <strong>items (i.e., the questions) are diagnostic</strong>, at least to a certain degree. This means you see what’s wrong with your interface simply by looking at the results from the questionnaire. Have a bad rating for readability (Q5)? You should make the text in your interface more readable.</li>
</ul>

<p>Now, at this point, you can either accept all this and simply get going with <span style="font-variant: small-caps">Inuit</span> to measure the usability of your digital product (we’d be delighted). Or, if you’re interested in the details, you’re very welcome to keep reading (we’d be even more delighted).</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="https://www.smashingconf.com/online-workshops/">Smashing Workshops</a></strong> on <strong>front-end, design &amp; UX</strong>, with practical takeaways, live sessions, <strong>video recordings</strong> and a friendly Q&amp;A. With Brad Frost, Stéph Walter and <a href="https://smashingconf.com/online-workshops/workshops">so many others</a>.</p>
<a data-instant href="smashing-workshops" class="btn btn--green btn--large" style="">Jump to the workshops&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="smashing-workshops" class="feature-panel-image-link">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-scubadiving-panel.svg"
    alt="Feature Panel"
    width="257"
    height="355"
/>

</div>
</a>
</div>
</aside>
</div>

<h2 id="so-why-did-you-develop-yet-another-usability-questionnaire">“So, Why Did You Develop Yet Another Usability Questionnaire?”</h2>

<p>You probably already guessed that <span style="font-variant: small-caps">Inuit</span> wasn’t developed just for fun or because there aren’t enough questionnaires around. But to answer this, we have to reach back a bit.</p>

<p>In 2014, Max was a Ph.D. student busy working on <a href="https://www.researchgate.net/publication/308652443_Search_Interaction_Optimization_A_Human-Centered_Design_Approach">his dissertation</a>. The goal of it all was to find a way to determine the usability of an interface automatically from users’ interactions, such as what they do with the mouse cursor and how they scroll, rather than making participants in a user study fill out pages and pages of questions. Additionally, the cherry on top should be to also automatically propose optimizations for the interface (e.g., if user interactions suggest the interface is not readable, make the text larger).</p>

<p>To be able to achieve this, however, it was first necessary to determine <em>if</em> and <em>how well</em> certain interactions (mouse cursor movements, mouse cursor speed, scrolling behavior, and so on) predict the usability &mdash; or rather its individual <em>aspects</em> &mdash; of an interface. This meant collecting training data through users’ interactions with an interface and their usability assessments of that interface. Then, one could investigate how well (combinations of) tracked interactions predict (aspects of) usability using regression and/or machine-learning models. So far, so good, as far as the theory is concerned.</p>

<p>In practice, one important decision that would have huge implications for the project was <em>how</em> to collect the usability assessments mentioned above when gathering the training data. Since usability is a <a href="https://en.wikipedia.org/w/index.php?title=Latent_variable&amp;oldid=1104713635">latent variable</a>, meaning it can’t be observed directly, a proper instrument (i.e., a questionnaire) is necessary to assess it. And the most famous one is undeniably the <a href="https://www.taylorfrancis.com/chapters/edit/10.1201/9781498710411-35/sus-quick-dirty-usability-scale-john-brooke">System Usability Scale</a> (SUS). It should’ve been an obvious choice, shouldn’t it?</p>

<p>A closer look showed that, while SUS would be perfectly well suited to train statistical models to infer usability from interactions, it simply wasn’t the perfect fit. This was the case mainly for two reasons:</p>

<ol>
<li>First, many questions contained in SUS (“I think that I would like to use this system frequently,” “I found the various functions in this system were well integrated,” and “I felt very confident using the system,” among others) describe the <em>effects</em> of good or bad usability &mdash; users feel confident because the system is well usable and so on. But they don’t describe the aspects of usability that cause them, e.g., bad understandability. This makes it difficult to know what should be done to make it better. What exactly should we change to make users feel more confident? The questions are not diagnostic or “actionable” and require further qualitative research to uncover the causes of bad ratings. It’s the same for UMUX and SUMI.</li>
<li>Second, with just 10 items, SUS is already a very small questionnaire. However, the fewer items, the less friction and the more motivated users are to actually answer. So, is ten really the minimum, or would a proper questionnaire with fewer items be possible?</li>
</ol>

<p>With these considerations in mind, Max went on and ultimately developed <span style="font-variant: small-caps">Inuit</span>, the instrument presented in the introduction. He ended up with seven items that were better suited for the needs of his Ph.D. project and more actionable than those of SUS.</p>

<h2 id="how-do-you-know-this-actually-measures-usability">“How do you know this actually measures usability?”</h2>

<p><span style="font-variant: small-caps">Inuit</span> was developed in a <a href="https://www.researchgate.net/publication/282441105_Inuit_The_Interface_Usability_Instrument">two-step process</a>. The first step was a review of established guidelines and checklists with more than 250 rules for good usability, which were filtered based on the requirements above and resulted in a first draft for the new usability instrument. This draft was then discussed and refined in expert interviews with nine usability professionals.</p>

<p>The final draft of <span style="font-variant: small-caps">Inuit</span>, with the seven factors <em>informativeness</em> (Q1), <em>understandability</em> (Q2), <em>confusion</em> (Q3), <em>distraction</em> (Q4), <em>readability</em> (Q5), <em>information density</em> (Q6), and <em>reachability</em> (Q7), was evaluated using a <strong>confirmatory factor analysis (CFA)</strong>.</p>

<blockquote>CFA is a method for assessing construct validity, which means it “is used to test whether measures of a construct are consistent with a researcher’s understanding of the nature of that construct” or “to test whether the data fit a hypothesized measurement model.”<br />&mdash; <a href="https://en.wikipedia.org/w/index.php?title=Confirmatory_factor_analysis&oldid=1121390997">Wikipedia</a></blockquote>

<p>Put very simply, by using a CFA, we can check how well a theory matches the practice. In our case, the “construct” or “hypothesized measurement model” (theory) was <span style="font-variant: small-caps">Inuit</span>, and the data (practice) came from a user study with 81 participants in which four news websites were <a href="https://www.researchgate.net/publication/282441105_Inuit_The_Interface_Usability_Instrument">evaluated using an <span style="font-variant: small-caps">Inuit</span> questionnaire</a>.</p>

<p>In a CFA, there are various metrics that show <a href="https://en.wikipedia.org/w/index.php?title=Confirmatory_factor_analysis&amp;oldid=1121390997">how well a construct fits the data</a>. Two well-established ones are CFI, the <em>comparative fit index</em>, and RMSEA, the <em>root mean square error of approximation</em> &mdash; both range from 0 to 1.</p>

<p>For CFI, 0.95 or higher is “accepted as an indicator of good fit” (<a href="https://en.wikipedia.org/w/index.php?title=Confirmatory_factor_analysis&amp;oldid=1121390997">Wikipedia</a>). <span style="font-variant: small-caps">Inuit</span>’s value was <strong>0.971</strong>. For RMSEA, “values less than 0.05 are good, values between 0.05 and 0.08 are acceptable” (<a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4804052/">Kim et al.</a>). <span style="font-variant: small-caps">Inuit</span>’s value was <strong>0.063</strong>. This means our theory matches the practice, or <span style="font-variant: small-caps">Inuit</span>’s questions do indeed measure usability.</p>

<h3 id="case-study-1">Case Study #1</h3>

<p><span style="font-variant: small-caps">Inuit</span> was first put into practice in 2014 at Unister GmbH, which at that time ran travel search engines like <em>fluege.de</em> and <em>reisen.de</em>, and was developing an entirely new semantic search engine<a href="https://2008.maxspeicher.com/2022/09/26/steal-this-blog-post/">.</a> The results page of this search engine, named BlueKiwi, was evaluated in a user study with 81 participants using <span style="font-variant: small-caps">Inuit</span>.</p>

<p>In this first study, the overall score averaged across all participants was 59.9. Ratings were especially bad for informativeness (Q1), information density (Q6), and reachability (Q7). Based on these results, BlueKiwi’s search results page was redesigned.</p>

<p>Among other things, the number of advertisements was reduced (better reachability), search results were displayed more concisely (better informativeness), and everything was more clearly aligned and separated (better information density). See the figure below for the full list of changes.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/actionable-reliable-usability-questionnaire-inuit/1-inuit-results.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="503"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/actionable-reliable-usability-questionnaire-inuit/1-inuit-results.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/actionable-reliable-usability-questionnaire-inuit/1-inuit-results.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/actionable-reliable-usability-questionnaire-inuit/1-inuit-results.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/actionable-reliable-usability-questionnaire-inuit/1-inuit-results.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/actionable-reliable-usability-questionnaire-inuit/1-inuit-results.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/actionable-reliable-usability-questionnaire-inuit/1-inuit-results.png"
			
			sizes="100vw"
			alt="Two variants of the search results page, before and after adjustments were made based on the Inuit results"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Adjustments made to the search results page based on the Inuit results. (Image source: <a href='https://www.researchgate.net/publication/282441131_SOS_Does_Your_Search_Engine_Results_Page_SERP_Need_Help'>www.researchgate.net</a>) (<a href='https://files.smashing.media/articles/actionable-reliable-usability-questionnaire-inuit/1-inuit-results.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>After the redesign, we ran another study, in which the overall <span style="font-variant: small-caps">Inuit</span> score increased to 67.5 (+11%), with improvements in every single one of the seven items.</p>

<div class="partners__lead-place"></div>

<h2 id="why-wait-9-years-to-write-this-article">“Why Wait 9 Years To Write This Article?”</h2>

<p>There were various factors at play. One was what’s called the research–practice gap. It’s often difficult for academic work to gain traction outside the academic community. One reason for this is that work that is part of a Ph.D. project is often a little neglected after it has served its purpose &mdash; being published in a research paper, included in a thesis, and presented at a Ph.D. defense &mdash; which is pretty much exactly what happened to <span style="font-variant: small-caps">Inuit</span>.</p>

<h3 id="case-study-2">Case Study #2</h3>

<p>Another factor, however, was that we wanted to put the instrument into practice in a real-world industry setting over a longer period of time first, and we got the chance to do that only relatively recently.</p>

<p>We ran a longitudinal study over a period of almost two years in which we ran quarterly benchmarks of multiple e-commerce websites using both SUS and <span style="font-variant: small-caps">Inuit</span>, with a total of 6,368 users. The results of these benchmarks were included in the dashboard of product KPIs and regularly shared with the team of 6 product managers. After roughly two years of conducting and sharing benchmarks, we interviewed the product managers about their use of the data, challenges, wishes, and potential for improvement.</p>

<p>What a high-level analysis showed was that all of the product managers, in one way or another, described <span style="font-variant: small-caps">Inuit</span> as <strong>more intuitive to understand</strong>, <strong>less abstract</strong>, and <strong>more actionable compared to SUS</strong> when looking at both instruments as a whole.</p>

<p>They found most of <span style="font-variant: small-caps">Inuit</span>’s items more specific and easier to interpret and, therefore, more relevant from a product manager’s perspective. SUS, in contrast, was described as, e.g., “good for [the] overall score” and the bird’s eye view. Virtually all product managers, however, wished for even more specific insights into <em>where</em> exactly on the website usability problems occur. One suggested building an optimal instrument by combining certain items from both SUS and <span style="font-variant: small-caps">Inuit</span>.</p>

<p>As part of the analysis, we computed Cronbach’s α for <span style="font-variant: small-caps">Inuit</span> (based on 3190 answers) as well as SUS (based on 3178 answers).</p>

<blockquote>Cronbach’s α is a statistical measure for the internal consistency of an instrument, which can be interpreted as “the extent to which all of the items of a test measure the same latent variable [i.e., usability].”<br />&mdash; <a href="https://en.wikipedia.org/w/index.php?title=Internal_consistency&oldid=1060912833">Wikipedia</a></blockquote>

<p>Values of 0.7 or above are generally <a href="https://en.wikipedia.org/w/index.php?title=Internal_consistency&amp;oldid=1060912833">deemed acceptable</a>. <span style="font-variant: small-caps">Inuit</span> reached a value of <strong>0.7</strong>; SUS a value of <strong>0.8</strong>.</p>

<p>To top things off, <span style="font-variant: small-caps">Inuit</span> and SUS showed a considerable (Pearson’s r = 0.53) and highly significant (p &lt; 0.001) correlation when looking at overall scores aggregated over the different e-commerce websites and tasks the study participants had to complete.</p>

<p>In layman’s terms, When the SUS score goes up, the <span style="font-variant: small-caps">Inuit</span> score goes up; when the SUS score goes down, the <span style="font-variant: small-caps">Inuit</span> score goes down. Both questionnaires measure the same thing (with a very, very rough approximation of INUIT = 0.6 &times; SUS + 17).</p>

<p>Since these first results were so encouraging, we decided to write this general, more practice-oriented overview article about <span style="font-variant: small-caps">Inuit</span> now. A deeper analysis of our big dataset, however, is yet to be conducted, and our current plan is to report findings in much more detail separately.</p>

<h2 id="why-do-you-think-span-style-font-variant-small-caps-inuit-span-is-better-than-sus">“Why Do You Think <span style="font-variant: small-caps">Inuit</span> Is Better Than SUS?”</h2>

<p>We don’t think so (or that it’s better than <em>any</em> scientifically founded usability instrument, for that matter). There are many ways to measure the same latent variable, in this case, usability. Both questionnaires, SUS and <span style="font-variant: small-caps">Inuit</span>, have proven that they can measure the usability of an interface. Still, they were developed in different contexts and with different goals and requirements in mind.</p>

<p>So, to address the question of when it’s better to use which, as true researchers, we have to say “it depends” (annoying, isn’t it?).</p>

<p>SUS, which has been around since the 1990s, is probably <em>the</em> most popular and well-established usability instrument. It’s been studied and validated over and over, which <span style="font-variant: small-caps">Inuit</span>, of course, can’t compete with yet and still has a long way to go. If the goal is to compare scores at a high level and even tap into public benchmark numbers for orientation, SUS would be preferable.</p>

<p>However, by design, <span style="font-variant: small-caps">Inuit</span> has two advantages over SUS:</p>

<ol>
<li><span style="font-variant: small-caps">Inuit</span> has only seven items and is still a “complete” usability instrument.<br />
30% fewer questions can be a major factor when it comes to motivating users to fill out a questionnaire. Assuming that a big part of remote online studies is done quickly in passing and with short attention spans, designing efficient studies that generate reliable output and minimize effects like participant fatigue can be a major challenge for researchers.</li>
<li><span style="font-variant: small-caps">Inuit</span>’s items have been specifically designed to be <strong>more actionable for practitioners</strong> and lend themselves better to manual analysis and inferring potential interface optimizations.<br />
As we’ve learned in our second case study, talking to actual product managers revealed that for them, the results of a usability assessment should always be as specific as possible. Comparing the items of both, <span style="font-variant: small-caps">Inuit</span> points to more concrete areas to improve than SUS, which was perceived as rather vague.</li>
</ol>

<div class="partners__lead-place"></div>

<h2 id="where-can-i-use-span-style-font-variant-small-caps-inuit-span">“Where Can I Use <span style="font-variant: small-caps">Inuit</span>?”</h2>

<p>Generally, in <strong>any scenario that involves an interface and a task</strong> &mdash; either defined by you or the user themselves. In the studies mentioned and described above, we could demonstrate that <span style="font-variant: small-caps">Inuit</span> works well in controlled as well as natural-use settings and with news websites, search engines, and e-commerce shops.</p>

<p>Now, of course, we can’t evaluate <span style="font-variant: small-caps">Inuit</span> with any possible kind of interface, and that is part of the reason for this article. <span style="font-variant: small-caps">Inuit</span> has been around and publicly available since 2014, and we have no idea if and how it has been used by other researchers, but if you do, please let us know about it. We’d be thrilled to hear about your experience and results.</p>

<p>The questions presented at the beginning of the article are relatively focused on finding information because that’s where <span style="font-variant: small-caps">Inuit</span> is historically coming from and because most of the things users do involve the finding of information of some kind. (Please keep in mind that information doesn’t have to be text. On the contrary, <a href="https://en.wikipedia.org/wiki/Information">most information is non-textual</a>.) But those questions can be adapted as long as they still reflect the underlying aspects of usability, which are <em>informativeness</em>, <em>understandability</em>, <em>confusion</em>, <em>distraction</em>, <em>readability</em>, <em>information density</em>, and <em>reachability</em>.</p>

<p>Say, for instance, you want to evaluate a module from an e-learning course, e.g., in the form of an annotated video with a subsequent quiz. To accommodate the task at hand, Q1 could be rephrased to “I had all the information necessary to complete the module” and Q7 to “All the information necessary to complete the module was easily reachable.”</p>

<h2 id="conclusion">Conclusion</h2>

<p>There are plenty of usability questionnaires out there, and we have added a new one to the pool &mdash; <span style="font-variant: small-caps">Inuit</span>. Why? Because sometimes, you find yourself in a situation where none of the existing questionnaires is the perfect fit. <span style="font-variant: small-caps">Inuit</span> has been designed to be more diagnostic than existing usability instruments like, e.g., SUS and for use with machine learning, all the while asking fewer questions than other questionnaires. So, if any of this seems relevant to your use cases or context of work, why not give it a try?</p>

<p>From a scientific and statistical point of view, in a confirmatory factor analysis (CFA), <span style="font-variant: small-caps">Inuit</span> has demonstrated that its questions do indeed measure usability. On top of that, it’s consistent and correlates well with SUS, based on data from a large-scale, longitudinal user study.</p>

<p><strong>Note</strong>: <em>If you want to dive deeper into the science behind <span style="font-variant: small-caps">Inuit</span>, e.g., how exactly the items/questions were chosen, you can read the corresponding research paper “<a href="https://www.researchgate.net/publication/282441105_Inuit_The_Interface_Usability_Instrument"><span style="font-variant: small-caps">Inuit</span>: The Interface Usability Instrument</a>,” which was presented at the 2015 HCI International Conference. If you want to learn more about how <span style="font-variant: small-caps">Inuit</span> can be used to train machine-learning models, read “<a href="https://www.researchgate.net/publication/271269916_Ensuring_Web_Interface_Quality_through_Usability-Based_Split_Testing">Ensuring Web Interface Quality through Usability-Based Split Testing</a>.” And finally if you want to see how <span style="font-variant: small-caps">Inuit</span> can be used as the basis for a tool that automatically proposes optimizations for an interface, you can refer to “<a href="https://www.researchgate.net/publication/282441131_SOS_Does_Your_Search_Engine_Results_Page_SERP_Need_Help">S.O.S.: Does Your Search Engine Results Page (SERP) Need Help?</a>” which was presented at the 2015 ACM Conference on Human Factors in Computing Systems.</em></p>

<h3 id="references">References</h3>

<ul>
<li>“<a href="https://www.taylorfrancis.com/chapters/edit/10.1201/9781498710411-35/sus-quick-dirty-usability-scale-john-brooke">SUS: A ‘Quick and Dirty’ Usability Scale</a>,” John Brooke (<em>Usability evaluation in industry</em>)</li>
<li>“<a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4804052/">Confirmatory and exploratory factor analysis for validating the phlegm pattern questionnaire for healthy subjects</a>,” Kim, Hyunho, Boncho Ku, Jong Yeol Kim, Young-Jae Park, and Young-Bae Park (<em>Evidence-Based Complementary and Alternative Medicine</em>)</li>
<li><a href="https://sumi.uxp.ie/">SUMI Questionnaire Homepage</a>, Jurek Kirakowski</li>
<li>“<a href="https://measuringu.com/seq10/">10 Things to Know about the Single Ease Question (SEQ)</a>,” Jeff Sauro (MeasuringU)</li>
<li>“<a href="https://measuringu.com/umux-lite/">Measuring Usability: From the SUS to the UMUX-Lite</a>,” Jeff Sauro (MeasuringU)</li>
<li>“<a href="https://www.researchgate.net/publication/271269916_Ensuring_Web_Interface_Quality_through_Usability-Based_Split_Testing">Ensuring web interface quality through usability-based split testing</a>,” Speicher, Maximilian, Andreas Both, and Martin Gaedke (International Conference on Web Engineering)</li>
<li>“<a href="https://www.researchgate.net/publication/282441105_Inuit_The_Interface_Usability_Instrument"><span style="font-variant: small-caps">Inuit</span>: the interface usability instrument</a>,” Speicher, Maximilian, Andreas Both, and Martin Gaedke (Design, User Experience, and Usability: Design Discourse)</li>
<li>“<a href="https://www.researchgate.net/publication/282441131_SOS_Does_Your_Search_Engine_Results_Page_SERP_Need_Help">S.O.S.: Does Your Search Engine Results Page (SERP) Need Help?</a>,” Speicher, Maximilian, Andreas Both, and Martin Gaedke (Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems)</li>
<li>“<a href="https://uxdesign.cc/conversion-rate-average-order-value-are-not-ux-metrics-9d6e7e40e286">Conversion rate &amp; average order value are not UX metrics</a>,” Maximilian Speicher (UX Collective)</li>
<li>“<a href="https://interactions.acm.org/blog/view/so-how-can-we-measure-ux">So, How Can We Measure UX?</a>,” Maximilian Speicher (ACM Interactions)</li>
<li>“<a href="https://www.researchgate.net/publication/351065914_Growth_Marketing_Considered_Harmful">Growth Marketing Considered Harmful</a>,” Maximilian Speicher</li>
<li>“<a href="https://www.sciencedirect.com/science/article/abs/pii/S1071581905001138">Current Practice In Measuring Usability: Challenges to Usability Studies and Research</a>,” Kasper Hornbæk</li>
<li><a href="https://en.wikipedia.org/w/index.php?title=Latent_variable&amp;oldid=1104713635">Latent variable</a>, Wikipedia</li>
<li><a href="https://en.wikipedia.org/w/index.php?title=Confirmatory_factor_analysis&amp;oldid=1121390997">Confirmatory factor analysis</a>, Wikipedia</li>
<li><a href="https://en.wikipedia.org/w/index.php?title=Internal_consistency&amp;oldid=1060912833">Internal consistency</a>, Wikipedia</li>
</ul>

<div class="copyright meta-box meta-box--article small">
  <span>Copyright © 2023 by <a href="https://2008.maxspeicher.com/2022/09/26/steal-this-blog-post/">Maximilian Speicher</a>  &amp; Johanna Jagow. <br/> Originally published by <a href="https://www.smashingmagazine.com/">Smashing Magazine</a></span>
</div>


<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Michal Halperin Ben Zvi</author><title>Designing Age-Inclusive Products: Guidelines And Best Practices</title><link>https://www.smashingmagazine.com/2023/07/designing-age-inclusive-products-guidelines-best-practices/</link><pubDate>Tue, 18 Jul 2023 12:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2023/07/designing-age-inclusive-products-guidelines-best-practices/</guid><description>With an estimated one in every eight individuals worldwide surpassing the age of 60, who are actively adopting online shopping, the need for user-friendly interfaces tailored to their needs becomes apparent. Explore the guidelines to help you design inclusive products for all, particularly for an older audience and your future self.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2023/07/designing-age-inclusive-products-guidelines-best-practices/" />
              <title>Designing Age-Inclusive Products: Guidelines And Best Practices</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Designing Age-Inclusive Products: Guidelines And Best Practices</h1>
                  
                    
                    <address>Michal Halperin Ben Zvi</address>
                  
                  <time datetime="2023-07-18T12:00:00&#43;00:00" class="op-published">2023-07-18T12:00:00+00:00</time>
                  <time datetime="2023-07-18T12:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>Why is it so important to take into account older adults? One person in eight on the planet is over 60, and they are more online than ever. Approximately <a href="https://www.statista.com/statistics/265759/world-population-by-age-and-region/">one billion people aged 60+</a> are alive today. Most of them are healthy and active and have discretionary income. Moreover, it is growing faster than any other age group and is projected to be 20% of the world’s population (~2 billion people) by 2050. They are also the <a href="https://www.researchgate.net/publication/351664620_Older_Adults_Shopping_Online_A_Fad_or_a_Trend">fastest-growing category of e-commerce shoppers</a>.</p>

<p>Older people today are <a href="https://www.pewresearch.org/internet/2021/09/01/navigating-technological-challenges/">adopting technology more than ever before</a>. From the use of the Internet, smartphones, tablets, and wearables to smart TVs and speakers, a growing number of older people are users. Ownership of smartphones, for example, increased from 70% to 77% among the 50+ population in the United States between 2017 and 2021. Moreover, during the Covid-19 pandemic, there was a significant rise in older adults’ motivation to use digital technology.</p>

<p>However, many older people still lack sufficient Internet connectivity or technological skill to use devices and consume digital services. It is estimated that <a href="https://www.aarp.org/content/dam/aarp/research/surveys_statistics/technology/2021/2022-technology-trends-older-americans.doi.10.26419-2Fres.00493.001.pdf">two in five feel technology is not designed for them</a> (PDF).</p>

<h3 id="opportunity-to-integrate-older-people-into-the-digital-world">Opportunity To Integrate Older people Into The Digital World</h3>

<p>More and more aspects of life are conducted on digital platforms: interpersonal communication, banking, healthcare, personal consumption, and exercising one’s rights are just some of them. Therefore, digital platforms that are challenging to use for older people have a <strong>negative impact on their quality of life</strong>. It prevents them from accessing essential services and integrating equally into society.</p>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aAccording%20to%20the%20inclusive%20design%20approach,%20one%20should%20take%20into%20account%20the%20needs%20of%20as%20many%20users%20as%20possible%20without%20stigmatizing%20or%20excluding%20a%20specific%20group%20by%20designing%20niche%20products.%0a&url=https://smashingmagazine.com%2f2023%2f07%2fdesigning-age-inclusive-products-guidelines-best-practices%2f">
      
According to the inclusive design approach, one should take into account the needs of as many users as possible without stigmatizing or excluding a specific group by designing niche products.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>If you adopt this principle, you can design a digital platform that serves a wide range of people, not just those aged 65+. Usually, a service that meets the needs of people aged 65+ will serve other audiences as well.</p>

<h3 id="adopting-age-appropriate-navigation-and-orientation-practices">Adopting Age-appropriate Navigation And Orientation Practices</h3>

<p>Advancing age can also bring with it a decrease in the rate of information processing, whether in understanding, thinking, or remembering. Plus, the ability to ignore distractions, focus on one stimulus, and perform several complex actions simultaneously also decreases.</p>

<p>Additionally, due to their age, some suffer from a decrease in executive functions that enable planning, executing, and delaying reactions. Therefore, there is a higher chance they will perform random actions such as clicking on unintended places, closing pages, or making errors when using apps. Some may have difficulty understanding that icons carry the same meaning across different apps or in dealing with situations that do not correspond with their expectations of the digital world. Despite such difficulties, it is essential to stress that the <strong>ability to learn from feedback</strong> &mdash; for example, via affirmations &mdash; <strong>does not diminish with age</strong>.</p>

<h2 id="what-should-we-do-if-we-want-to-increase-their-engagement">What Should We Do If We Want To Increase Their Engagement?</h2>

<p>Here are a few guidelines to help you design a more inclusive product. Those guidelines can increase the usage of younger users but are highly crucial for older users:</p>

<h3 id="minimize-the-number-of-required-actions-and-create-shortcuts">Minimize The Number Of Required Actions And Create Shortcuts</h3>

<p>Some people over 65 find it challenging to cope with information overload and multiple options.</p>

<p>Proper information architecture and hierarchy will indicate what is important to the user and require less effort. We should ensure that the required actions appear immediately and easily so that the user does not have to search for them. Some important ones to mention are white space, content placement, space, language, number of actions, and others. Below are these and some others listed with explanations:</p>

<ul>
<li><strong>White space</strong><br />
Reducing the number of elements on a screen, increasing the spacing between them, and retaining whitespace will make the screen feel less crowded and, therefore, clearer and more inviting. The added value is in the feeling of simplicity it creates. This improves the user’s sense of competence and ability to focus. Clear typography following one of the established typographic scales is relevant for websites, apps, and complex data systems.</li>
</ul>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/1-bank-america-website.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/1-bank-america-website.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/1-bank-america-website.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/1-bank-america-website.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/1-bank-america-website.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/1-bank-america-website.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/1-bank-america-website.png"
			
			sizes="100vw"
			alt="A screenshot of the Bank of America website with many visual elements"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The Bank of America website has a lot of visual elements that can be overwhelming and may make it difficult for users to feel competent and focused. (<a href='https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/1-bank-america-website.png'>Large preview</a>)
    </figcaption>
  
</figure>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/2-homepage-silicon-valley-bank-website.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/2-homepage-silicon-valley-bank-website.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/2-homepage-silicon-valley-bank-website.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/2-homepage-silicon-valley-bank-website.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/2-homepage-silicon-valley-bank-website.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/2-homepage-silicon-valley-bank-website.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/2-homepage-silicon-valley-bank-website.png"
			
			sizes="100vw"
			alt="The homepage of the Silicon Valley bank website"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The homepage of the Silicon Valley bank website has been streamlined to make it easier for users to access their accounts by reducing the number of elements on the page. (<a href='https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/2-homepage-silicon-valley-bank-website.png'>Large preview</a>)
    </figcaption>
  
</figure>

<ul>
<li><strong>Dialog box</strong><br />
A limited number of options prevents cognitive overload. Therefore, conduct a careful mapping of the digital platform, distilling out the most important actions and contents.</li>
<li><strong>Central placement</strong><br />
The most important themes should be positioned at the center of the screen.</li>
<li><strong>Large &amp; spacious</strong><br />
The most important buttons should be enlarged and positioned prominently to allow immediate recognition.</li>
<li><strong>Clear language</strong><br />
Topics should be clearly labeled, and the labels should be verified in usability testing. Complicated terms should be avoided since they might not be familiar to the target audience.</li>
<li><strong>Limited number of actions</strong><br />
The number of steps (clicks and scrolls) necessary to achieve a goal should be minimized.</li>
<li><strong>Shortcuts and multiple/redundant paths</strong><br />
Make it easy for users to reach their goals by providing multiple options, such as Quick Links, as seen in the example below.</li>
</ul>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/3-google-search-result-quick-links.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="386"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/3-google-search-result-quick-links.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/3-google-search-result-quick-links.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/3-google-search-result-quick-links.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/3-google-search-result-quick-links.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/3-google-search-result-quick-links.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/3-google-search-result-quick-links.png"
			
			sizes="100vw"
			alt="A screenshot of the Google search result with Mediamarkt.de on top with available quick links"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/3-google-search-result-quick-links.png'>Large preview</a>)
    </figcaption>
  
</figure>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="/printed-books/touch-design-for-mobile-interfaces/">Touch Design for Mobile Interfaces</a></strong>, Steven Hoober’s brand-new guide on <strong>designing for mobile</strong> with proven, universal, human-centric guidelines. <strong>400 pages</strong>, jam-packed with in-depth user research and <strong>best practices</strong>.</p>
<a data-instant href="https://www.smashingmagazine.com/printed-books/touch-design-for-mobile-interfaces/" class="btn btn--green btn--large" style="">Jump to table of contents&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="https://www.smashingmagazine.com/printed-books/touch-design-for-mobile-interfaces/" class="feature-panel-image-link">
<div class="feature-panel-image"><picture><source type="image/avif" srcSet="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/14bcab88-b622-47f6-a51d-76b0aa003597/touch-design-book-shop-opt.avif" />
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b14658fc-bb2d-41a6-8d1a-70eaaf1b8ec8/touch-design-book-shop-opt.png"
    alt="Feature Panel"
    width="480"
    height="697"
/>
</picture>
</div>
</a>
</div>
</aside>
</div>

<h2 id="what-to-know-about-navigation-orientation">What To Know About Navigation &amp; Orientation?</h2>

<p>Some people aged 65+ can experience <a href="https://journals.sagepub.com/doi/pdf/10.1177/070674370805300603">a decline in memory recall</a>. Some are also unfamiliar with the principles of the digital world. Therefore, to enhance their sense of control, the following principles should be adopted: rely on recognition, not memory; allow going back; design clear navigation keys; be consistent in design and operation; and provide indicators. Below we will discuss several principles to facilitate navigation.</p>

<ul>
<li><strong>Recognition, not memory</strong><br />
This principle means creating an interface where users do not have to use their memory to recall information. Instead, they will be asked to identify familiar and prominent components, such as quick access to previously visited pages or actions. The illustration below is an example of how Korea’s post office presents the main tasks on the main screen in a way that doesn’t require memory but recognition. Additional support is the use of color to help the users recognize how to navigate the site once they return to it.<br /></li>
</ul>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/4-koreas-post-office-website.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/4-koreas-post-office-website.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/4-koreas-post-office-website.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/4-koreas-post-office-website.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/4-koreas-post-office-website.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/4-koreas-post-office-website.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/4-koreas-post-office-website.png"
			
			sizes="100vw"
			alt="Korea’s post office website"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Source: <a href='https://www.koreapost.go.kr/'>koreapost.go.kr</a>. (<a href='https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/4-koreas-post-office-website.png'>Large preview</a>)
    </figcaption>
  
</figure>

<ul>
<li><strong>Indicators and feedback</strong>:

<ul>
<li>Emphasize the performed actions: Use breadcrumbs to indicate which links or buttons the user has clicked on and their location.</li>
<li>Create a conspicuous and permanent back icon that takes the user to a previous page/stage. This is in addition to the browser’s back and homepage icons.</li>
<li>Clear and prominent navigation buttons: Emphasize navigation buttons and add text to explain their function.</li>
</ul></li>
<li><strong>Consistency</strong><br />
Create an ongoing, consistent user experience using recurring items. Allow the users to learn the interface, generating a sense of success and building anticipation for the next stage. Pay attention to the location and design of fixed buttons that have the same function.</li>
<li><strong>Progress</strong><br />
Create obvious hints, such as a progress bar, that help users to understand where they are in the process.</li>
<li><strong>Success &amp; mistakes</strong><br />
Highlight progress and successful actions. Additionally, indicate errors clearly and provide ways for easy recovery.</li>
<li><strong>Contact Us</strong><br />
Choose a prominent location for the help options. Provide contact information using various channels, e.g., telephone number and email address.</li>
</ul>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aChoosing%20components%20with%20an%20age-inclusive%20mindset%20can%20change%20our%20day-to-day%20decisions%20and%20allow%20us%20to%20create%20an%20easy-to-operate%20interface.%0a&url=https://smashingmagazine.com%2f2023%2f07%2fdesigning-age-inclusive-products-guidelines-best-practices%2f">
      
Choosing components with an age-inclusive mindset can change our day-to-day decisions and allow us to create an easy-to-operate interface.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<p>The following guidelines relate to changes in motor functions.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/5-example-hmo-website.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="509"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/5-example-hmo-website.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/5-example-hmo-website.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/5-example-hmo-website.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/5-example-hmo-website.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/5-example-hmo-website.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/5-example-hmo-website.png"
			
			sizes="100vw"
			alt="Example of HMO website"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Example of HMO website taken from the <a href='https://www.thejoint.org.il/en/log-in-guidebook/'>LOG IN guide</a> &mdash; toolkit on increasing the usage of digital platforms, services and products by older people. (<a href='https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/5-example-hmo-website.png'>Large preview</a>)
    </figcaption>
  
</figure>

<div class="partners__lead-place"></div>

<h2 id="creating-an-interface-that-is-easy-to-operate">Creating An Interface That Is Easy To Operate</h2>

<p>As age increases, it may be accompanied by difficulty in touching a specific spot accurately, regulating a click’s intensity, or performing quick actions, such as double-clicking. Therefore, the following principles should be ensured: space out the keys, avoid the need for a high degree of precision, avoid gestures requiring sensory regulation, and enable users to progress at their own pace.</p>

<ul>
<li><strong>Large &amp; spacious</strong><br />
Design large and well-spaced elements.</li>
<li><strong>Individual pace</strong>:

<ul>
<li>When creating pop-up/toast messages, allow users to initiate closing or at least leave the messages visible for longer for slower readers.</li>
<li>Avoid menus that open on hover. Always use click-tap menus instead.</li>
</ul></li>
<li><strong>Indication</strong><br />
Provide clear scroll indicators (e.g., side arrows). Reduce the need for precision: Avoid small clicking areas, mouse hovering, and double-clicking.</li>
<li><strong>Ensure that the interface is responsive on all screens.</strong><br />
For touch screens:

<ul>
<li>Click actions should not rely on touch intensity or precision.</li>
<li>Avoid, as much as possible, long strokes and drag gestures, and reduce scroll options. At the very least, provide clear indication and instruction, and offer alternatives, such as an arrow or button directing to specific places.</li>
<li>Avoid the need for very precise actions, such as in small clicking areas, and try to keep to the minimum size for comfortable tapping/clicking of at least 44x44 px.</li>
<li>Avoid actions requiring fine motor regulation such as spread, pinch, and rotate.</li>
</ul></li>
</ul>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/6-example-login-forms-login-guide.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="458"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/6-example-login-forms-login-guide.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/6-example-login-forms-login-guide.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/6-example-login-forms-login-guide.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/6-example-login-forms-login-guide.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/6-example-login-forms-login-guide.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/6-example-login-forms-login-guide.png"
			
			sizes="100vw"
			alt="Example of login forms"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Example of login forms taken from the <a href='https://www.thejoint.org.il/en/log-in-guidebook/'>LOG IN guide</a> &mdash; toolkit on increasing the usage of digital platforms, services and products by older people. (<a href='https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/6-example-login-forms-login-guide.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Let’s examine the homepage of three famous e-commerce websites in the eyes of an older user without going into details.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/7-aliexpress-website.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/7-aliexpress-website.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/7-aliexpress-website.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/7-aliexpress-website.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/7-aliexpress-website.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/7-aliexpress-website.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/7-aliexpress-website.png"
			
			sizes="100vw"
			alt="Aliexpress website with visual overload"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/7-aliexpress-website.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Aliexpress website, as seen in the image above, is a good example of an “unfriendly” website &mdash; it suffers from visual overload. Too many buttons and tags are emphasized, which makes it hard to focus older user attention. Moreover, given the visual overload, the side menu is easy to ignore, and many users will be required to use the search bar, which needs to be more dominant and rely on their recall of items, not recognition.</p>

<p>On the Amazon website (see the image below), the size of each category image may be distracting, requiring the user to scroll a lot and challenging his ability to navigate.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/8-amazon-website.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="369"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/8-amazon-website.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/8-amazon-website.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/8-amazon-website.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/8-amazon-website.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/8-amazon-website.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/8-amazon-website.png"
			
			sizes="100vw"
			alt="Amazon website with different in sizes category images"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/8-amazon-website.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>In contrast with these previous sites, eBay does better regarding visual overload; the dominance of the search bar and even the menu placement make it easier for older users to navigate.</p>














<figure class="
  
    break-out article__image
  
  
  ">
  
    <a href="https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/9-ebay-website.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/9-ebay-website.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/9-ebay-website.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/9-ebay-website.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/9-ebay-website.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/9-ebay-website.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/9-ebay-website.png"
			
			sizes="100vw"
			alt="eBay website with good navigation"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://files.smashing.media/articles/designing-age-inclusive-products-guidelines-best-practices/9-ebay-website.png'>Large preview</a>)
    </figcaption>
  
</figure>

<div class="partners__lead-place"></div>

<h2 id="wrapping-up">Wrapping Up</h2>

<p>Every designer would probably state that they want their website and app to be inclusive, easy to navigate, and user-friendly. Yet, as we have seen in our examples above, we need to create awareness to integrate details that would make it easier for older users to navigate the Internet. As we age, all of us will experience longer reaction times, changes in selective attention, attention-splitting, and changes in our motor functions. Therefore, designing for an older audience will achieve the goals of having an inclusive, easy-to-navigate, and user-friendly for our future selves as well.</p>

<p>To sum up, in order to create an easy operation and orientation of an interface, we should pay attention to the following:</p>

<ul>
<li>Large, spaced-out objects;</li>
<li>Operation does not require fine gestures and precision;</li>
<li>A minimum number of actions to achieve goals;</li>
<li>The user should  control the rate of progress;</li>
<li>Reassuring notifications upon successful actions;</li>
<li>Consistency of design and operation;</li>
<li>Minimizing the number of choices the user must make;</li>
<li>Highlighting the actions performed by the user.</li>
</ul>

<p><em>The article is based on one of the chapters of the <a href="https://www.thejoint.org.il/en/log-in-guidebook/">Log In guide</a>. The guide was created within the framework of the National Initiative to Promote Digital Literacy Among Older Adults, which is a partnership between the <a href="https://www.gov.il/en/departments/national-digital-agency/govil-landing-page">Israel National Digital Agency</a> and <a href="https://www.thejoint.org.il/en/">JDC-ESHEL</a>.</em></p>

<h3 id="further-reading-on-smashingmag">Further Reading On SmashingMag</h3>

<ul>
<li>“<a href="https://www.smashingmagazine.com/2019/11/online-environments-older-users/">Creating Online Environments That Work Well For Older Users</a>,” Barry Rueger</li>
<li>“<a href="https://www.smashingmagazine.com/2023/02/keys-accessibility-mindset/">Keys To An Accessibility Mindset</a>,” Daniel Yuschick</li>
<li><a href="https://www.smashingmagazine.com/2022/12/useful-accessibility-usability-examples-help-improve-your-designs/">“Useful Accessibility And Usability Examples To Help Improve Your Designs</a>,” Thomas Bohm</li>
<li>“<a href="https://www.smashingmagazine.com/2022/09/unconscious-biases-inclusive-design/">Unconscious Biases That Get In The Way Of Inclusive Design</a>,” Trina Moore Pervall</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Slava Shestopalov &amp; Eugene Shykiriavyi</author><title>Testing Sites And Apps With Blind Users: A Cheat Sheet</title><link>https://www.smashingmagazine.com/2023/06/testing-sites-apps-blind-users-cheat-sheet/</link><pubDate>Wed, 07 Jun 2023 10:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2023/06/testing-sites-apps-blind-users-cheat-sheet/</guid><description>Yeah, plugins and services for checking accessibility are great, but have you ever observed a real person with a disability walk through your site or app? While compliance with accessibility checklists is essential, it doesn’t necessarily mean a pleasant experience. That’s why live sessions can give you lots of priceless insights.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2023/06/testing-sites-apps-blind-users-cheat-sheet/" />
              <title>Testing Sites And Apps With Blind Users: A Cheat Sheet</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Testing Sites And Apps With Blind Users: A Cheat Sheet</h1>
                  
                    
                    <address>Slava Shestopalov &amp; Eugene Shykiriavyi</address>
                  
                  <time datetime="2023-06-07T10:00:00&#43;00:00" class="op-published">2023-06-07T10:00:00+00:00</time>
                  <time datetime="2023-06-07T10:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>This article focuses on the users of <strong>screen readers</strong> &mdash; special software that converts the source code of a site or app into speech. Usually, these are people with low vision and blindness but not only. They’ll help you discover most accessibility issues. Of course, the topic is too vast for a single article, but this might help to get started.</p>

<h2 id="table-of-contents">Table Of Contents</h2>

<ul>
  <li><a href="#part-1-what-is-accessibility-testing?">What is accessibility testing?</a></li>  
  <li><a href="#part-2-recruiting-users">Recruiting users</a></li>
  <li><a href="#part-3-preparing-for-the-session">Preparation: tools, tasks, wording</a></li>
  <li><a href="#part-4-session-facilitation">Facilitation: screen readers, navigation</a></li>
</ul>

<h2 id="part-1-what-is-accessibility-testing">Part 1. What Is Accessibility Testing?</h2>

<h3 id="1-1-testing-vs-audit">1.1. Testing vs. Audit</h3>

<p>There are many ways of evaluating the accessibility of a digital product, but let’s start with distinguishing two major approaches.</p>

<p><strong>Auditing</strong> is an element-by-element comparison of a site or app against a list of accessibility requirements, be it a universal standard (<a href="https://www.w3.org/WAI/standards-guidelines/wcag/">WCAG</a>) or a country-specific law (like <a href="https://www.ada.gov/">ADA</a> in the U.S. or <a href="https://www.ontario.ca/laws/statute/05a11">AODA</a> in Ontario, Canada). There are two ways to do an audit:</p>

<ol>
<li><strong>Automated audit</strong><br />
Checking accessibility by means of web apps, plugins for design and coding software, or browser extensions (for example, <a href="https://chrome.google.com/webstore/detail/axe-devtools-web-accessib/lhdoppojpmngadmnindnejefpokejbdd">axe DevTools</a>, <a href="https://chrome.google.com/webstore/detail/arc-toolkit/chdkkkccnlfncngelccgbgfmjebmkmce?hl=en">ARC Toolkit</a>, <a href="https://wave.webaim.org/">WAVE</a>, <a href="https://www.figma.com/@stark">Stark</a>, and others). These tools generate a report with issues and recommendations.</li>
<li><strong>Expert audit</strong><br />
Evaluation of web accessibility by a professional who knows the requirements. This person can employ assistive technology and have a disability, but this is anyway an expert with advanced knowledge, not a “common user.” As a result, you get a report too, but it’s more contextual and sensible.</li>
</ol>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/1-accessibility-testing-session.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="587"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/1-accessibility-testing-session.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/1-accessibility-testing-session.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/1-accessibility-testing-session.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/1-accessibility-testing-session.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/1-accessibility-testing-session.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/1-accessibility-testing-session.jpg"
			
			sizes="100vw"
			alt="An open laptop with a high-contrast mode on the weather forecast website"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Lina, a student of the “Inclusive web design” course at Projector Institute, conducts an accessibility testing session of a Ukrainian weather forecast website with Volodymyr, a visually impaired user. Volodymyr has low vision and combines a high-contrast mode on his computer with a screen reader. (<a href='https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/1-accessibility-testing-session.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p><strong>Testing</strong>, unlike auditing, cannot be done by one person. It involves users of assistive technologies and comprises a set of one-on-one sessions facilitated by a designer, UX researcher, or another professional.</p>

<p>Today we’ll focus on testing as an undervalued yet powerful method.</p>

<h3 id="1-2-usability-vs-accessibility-testing">1.2. Usability vs. Accessibility Testing</h3>

<p>You might have already heard about <em>usability</em> testing or even tried it. No wonder it’s the top research method among designers. So how is it different from its <em>accessibility</em> counterpart?</p>

<p><strong>Common features:</strong></p>

<ul>
<li><strong>Script</strong><br />
In both cases, a facilitator prepares a full written script with an introduction, questions, and tasks based on a realistic scenario (for example, buying a ticket or ordering a taxi). By the way, here are handy<a href="https://uxdesign.cc/usability-testing-templates-9b79b40eb481"> testing script templates</a>.</li>
<li><strong>Insights gathering</strong><br />
Despite accessibility testing’s main focus, it also reveals lots of usability issues, simply said, whether a site or app is easy to use. In both cases, a facilitator should ask follow-up questions to get an insight into people’s way of thinking, pain points, and needs.</li>
<li><strong>Format</strong><br />
Both testing types can be organized online or offline. Usually, one session takes from 30 minutes to 1 hour.</li>
</ul>

<p><strong>Key differences:</strong></p>

<ul>
<li><strong>Participants selection</strong><br />
People for usability testing are recruited mainly by demographic characteristics: job title, gender, country, professional experience, etc. When you test accessibility, you take into account the senses and assistive technologies involved in using a product.</li>
<li><strong>What you can test</strong><br />
In usability testing, you can test a live product, an interactive prototype (made in Figma, Protopie, Framer, etc.), or even a static mockup. Accessibility testing, in most cases, requires a live product; prototyping tools cannot deliver a source code compatible with assistive technology. <a href="https://help.figma.com/hc/en-us/articles/7810391964695-Accessible-prototypes-in-Figma">Figma attempted to make prototypes accessible</a>, but it’s still far from perfect.</li>
<li><strong>Giving hints</strong><br />
When participants get stuck in the flow, you help them find the way out. But when you involve people with disabilities, you have to understand how their assistive gear works. Just to give you an example, a phrase like <em>“Click on the red cross icon in the corner”</em> will sound silly to a blind user.</li>
</ul>

<h3 id="1-3-why-opt-for-testing">1.3. Why Opt For Testing?</h3>

<p>Now that you know the difference between an audit and testing and the distinction between usability and accessibility testing, let’s clarify why testing is so powerful. There are two reasons:</p>

<ol>
<li><strong>Get valuable insights.</strong><br />
The idea of testing is to learn how you can improve the product. While you won’t check all interface elements and edge cases, such sessions show if the whole flow works and if people can reach the goal. Unlike even the most comprehensive audits, testing is much closer to reality and based on the usage of real assistive technology by a person with a disability.</li>
<li><strong>Build empathy through storytelling.</strong><br />
A good story is more compelling than bare numbers. Besides, it can serve as a helpful addition to such popular pro-accessibility arguments as legal risks, winning new customers, or brand impact. Even 1–2 thorough sessions can give you enough material for a vivid story to excite the team about accessibility. An audit report alone may not be as thrilling to read.</li>
</ol>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/2-accessibility-workshop.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="587"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/2-accessibility-workshop.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/2-accessibility-workshop.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/2-accessibility-workshop.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/2-accessibility-workshop.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/2-accessibility-workshop.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/2-accessibility-workshop.jpg"
			
			sizes="100vw"
			alt="A classroom during an accessibility workshop with opened laptops and students conducting a mobile testing session"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Accessibility workshop at the Berlin University of Applied Sciences (HTW). Students facilitate a mobile testing session with Lidia, a blind user, while Eugene and I observe how it goes. (<a href='https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/2-accessibility-workshop.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Testing gives you more realistic insights into common scenarios. Laws and standards aren’t perfect, and formal compliance might not cover all the user challenges. Sometimes people take not the “designed” path to the goal but the one that seems safer or more intuitive, and testing reveals it.</p>

<p>Of course, auditing is still a powerful method; however, its combination with testing will show much more accurate results. Now, let’s talk about accessibility testing in detail.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="https://www.smashingconf.com/online-workshops/">Smashing Workshops</a></strong> on <strong>front-end, design &amp; UX</strong>, with practical takeaways, live sessions, <strong>video recordings</strong> and a friendly Q&amp;A. With Brad Frost, Stéph Walter and <a href="https://smashingconf.com/online-workshops/workshops">so many others</a>.</p>
<a data-instant href="smashing-workshops" class="btn btn--green btn--large" style="">Jump to the workshops&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="smashing-workshops" class="feature-panel-image-link">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-scubadiving-panel.svg"
    alt="Feature Panel"
    width="257"
    height="355"
/>

</div>
</a>
</div>
</aside>
</div>

<h2 id="part-2-recruiting-users">Part 2. Recruiting Users</h2>

<p>There are many types of disabilities and, consequently, various assistive technologies that help people browse the web. Without a deep dive into theory, let’s just recap the variety of disabilities:</p>

<ul>
<li>Depending on the senses involved or the affected area of life: <strong>visual</strong> (blindness, color deficiency, low vision), <strong>physical</strong> (cerebral palsy, amputation, arthritis), <strong>cognitive</strong> (dyslexia, Down syndrome, autism), <strong>auditory</strong> (deafness, hearing loss), and so on.</li>
<li>By severity: <strong>permanent</strong> (for example, an amputated leg or some innate condition), <strong>temporary</strong> (a broken arm or, let’s say, blurred vision right after using eye drops), and <strong>situational</strong> (for instance, a noisy room or carrying a child).</li>
</ul>

<p><strong>Note</strong>: <em>You can find more information on various types of disabilities on the <a href="https://inclusive.microsoft.design/">Microsoft Inclusive Design</a> hub.</em></p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/3-accessibility-workshop-students.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="587"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/3-accessibility-workshop-students.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/3-accessibility-workshop-students.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/3-accessibility-workshop-students.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/3-accessibility-workshop-students.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/3-accessibility-workshop-students.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/3-accessibility-workshop-students.jpg"
			
			sizes="100vw"
			alt="A classroom with students sitting in a circle next to each other with opened laptops during an accessibility workshop"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Accessibility workshop with the HTW students. The team has a testing script opened on their laptops to moderate the session in the right direction and not to forget to ask essential questions. They watch the user do testing tasks and make notes on how easy and intuitive it has been. (<a href='https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/3-accessibility-workshop-students.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>For the sake of simplicity, we’ll focus on the case applicable to most digital products: when a site or app mostly relies on vision. In this case, <em>visual</em> assistive technologies offer users an alternative way to work with content online. The most common technologies are:</p>

<ul>
<li><strong>Screen readers</strong>: software that converts text into speech and has numerous handy shortcuts to navigate efficiently. (We’ll talk about it in detail in the next chapters.)</li>
<li><strong>Refreshable Braille displays</strong>: devices able to show a line of tactile Braile-script text. Round-tipped pins are raised through holes in a surface and refresh as a user moves their cursor on the screen. Such displays are vital for blind-deaf people.</li>
<li><strong>Virtual assistants</strong> (Amazon Alexa, Apple Siri, Google Assistant, and others): an excellent example of universal design that serves the needs of both people with disabilities and non-disabled people. Assistants interpret human speech and respond via synthesized voices.</li>
<li><strong>High-contrast displays</strong> or special modes: for people with low vision. Some users combine a high-contrast mode with a screen reader.</li>
</ul>

<h3 id="2-1-who-to-involve">2.1. Who To Involve</h3>

<p>Debates around an optimal number of testing participants are never-ending. But we are talking here about a particular case &mdash; organizing accessibility testing for the first time, hence the recommendation is the following:</p>

<ul>
<li><strong>Invite 3–6 users with blindness and low vision</strong> who either browse the web by means of screen readers or use a special mode (for example, extra zoom or increased contrast).</li>
<li>If your product has rich data visualization (charts, graphs, dashboards, or maps), involve several <strong>people with color blindness.</strong></li>
</ul>

<p>In any case, it’s better to conduct even one or two high-quality sessions than a dozen of poorly prepared ones.</p>

<h3 id="2-2-where-to-find-people">2.2. Where To Find People</h3>

<p>It is not as hard to find people for testing as it seems at first glance. If you are working on a mass product for thousands of users, participants won’t need any special knowledge apart from proficiency with their assistive technology. Here are three sources we recommend checking:</p>

<ul>
<li><strong>Specialized platforms</strong> for recruiting users according to your parameters (for example, <a href="https://access-works.com">Access Works</a> or <a href="https://www.usertesting.com/">UserTesting</a>). This method is the fastest but not the cheapest one because platforms take their commission on top of user compensation.</li>
<li><strong>Social media communities</strong> of people with disabilities. Try searching by the keywords like “people with disabilities,” “PWD,” “support group,” “visually impaired,” “partially sighted,” or “blind people.” Ask the admin’s permission to post your research announcement, and it won’t be rejected.</li>
<li><strong>Social enterprises and non-profits</strong> that work in the area of inclusion, employment, and support for people with disabilities (for example, <a href="https://inclusive-it.com/">Inclusive IT</a> in Ukraine or <a href="https://www.dbsv.org/dbsv-in-english.html">The Federation of the Blind and Partially Sighted</a> in Germany). Drop them an email with your request.</li>
</ul>

<p>We noticed that the last two points might sound like getting participants for free, but not everyone has an opportunity to volunteer.</p>

<p>When we organized accessibility testing sessions last year, three persons agreed to take part pro bono because it was a university course, and we didn’t get any profits. Otherwise, be ready to compensate for the participant’s time (in my experience, around €15–30). It can be an Amazon gift card or coupon for something useful in a particular country (only ensure it’s accessible).</p>

<p>Digital product companies that test accessibility regularly hire people with disabilities so that they have access to in-progress software and can check it iteratively before the official launch.</p>

<div class="partners__lead-place"></div>

<h2 id="part-3-preparing-for-the-session">Part 3. Preparing For The Session</h2>

<p>Now that you’ve recruited participants, it’s time to discuss things to prepare before the sessions. And the first question is:</p>

<h3 id="3-1-online-or-offline">3.1. Online Or offline?</h3>

<p>There are basically two ways to conduct testing sessions: remotely or face-to-face. While we usually prefer the first one, both techniques have pros and cons, so let’s talk about them.</p>

<p><strong>Benefits of online:</strong></p>

<ul>
<li><strong>Native environment.</strong><br />
Participants can use familiar home equipment, like a desktop computer or laptop, with nicely tuned assistive technology (plugins, modes, settings).</li>
<li><strong>Cost and time efficiency.</strong><br />
No need to reimburse expenses for traveling to your office. It might be quite costly if a participant arrives with an accompanying person or needs special accessible transport.</li>
<li><strong>Easier recruitment.</strong><br />
It’s more likely you’ll find a participant that meets your criteria around the world instead of searching in your city (and again, zero travel expenses).</li>
</ul>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/4-online-educational-accessibility-testing-sessions.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="500"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/4-online-educational-accessibility-testing-sessions.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/4-online-educational-accessibility-testing-sessions.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/4-online-educational-accessibility-testing-sessions.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/4-online-educational-accessibility-testing-sessions.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/4-online-educational-accessibility-testing-sessions.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/4-online-educational-accessibility-testing-sessions.png"
			
			sizes="100vw"
			alt="Online educational accessibility testing session on Skype"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Educational accessibility testing sessions with the students of the Faculty of Applied Sciences of Ukrainian Catholic University. Maxym, a visually impaired user, tells about his disability before proceeding with the testing tasks. (<a href='https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/4-online-educational-accessibility-testing-sessions.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p><strong>Benefits of offline:</strong></p>

<ul>
<li><strong>Testing products in development.</strong><br />
If you have a product that isn’t public yet, participants won’t be able to easily install it or open it in a browser. So, you’ll have to invite participants to your office, but they should probably bring the portable version of their assistive technology (for example, on a USB drive).</li>
<li><strong>Testing mobile apps.</strong><br />
If a person brings a personal phone, you’ll see not only the interaction with your product but also how the device is set up and what gestures and shortcuts a person uses.</li>
<li><strong>Helping inexperienced users.</strong><br />
Using assistive technology is a skill, and you may involve someone who is not yet proficient with it. So, the offline setting is more convenient when participants get stuck and you help them find the way out.</li>
</ul>

<p>As you can see, online testing has more universal advantages, whereas the offline format rather suits niche cases.</p>

<h3 id="3-2-communication-tools">3.2. Communication Tools</h3>

<p>Once you decide to test online, a logical question is what tool to choose for the session. Basically, there are two options:</p>

<p><strong>Specialized testing tools</strong> (for instance, UserTesting, Lookback, UserZoom, Hotjar, Useberry):</p>

<ul>
<li>Apart from basic conferencing functionality, they support advanced note-taking, automatic transcription, click heatmaps, dashboards with testing results, and other features.</li>
<li>They are quite costly. Besides, trial versions may be too limited for even a single real session.</li>
<li>Participants may get stuck with an unfamiliar tool that they’ve never used before.</li>
</ul>

<p><strong>Popular video conferencing tools</strong> (for example, Google Meet, Zoom, Microsoft Teams, Skype, Webex):</p>

<ul>
<li>Support all the minimally required functionality, such as video calls, screen-sharing, and call recording.</li>
<li>They are usually free.</li>
<li>There is a high chance that participants know how to use them. (Note: even in this case, people may still experience trouble launching screen-sharing).</li>
</ul>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/5-online-accessibility-testing-session.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="500"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/5-online-accessibility-testing-session.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/5-online-accessibility-testing-session.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/5-online-accessibility-testing-session.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/5-online-accessibility-testing-session.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/5-online-accessibility-testing-session.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/5-online-accessibility-testing-session.png"
			
			sizes="100vw"
			alt="Skype online accessibility session where a visually impaired user browses an online store"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Another testing session at Ukrainian Catholic University. Viktoriia, a visually impaired user, browses an online store and shares her impressions about its accessibility. (<a href='https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/5-online-accessibility-testing-session.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Since we are talking about your first accessibility testing, it’s much safer and easier to utilize an old good video conferencing tool, namely the one that your participants have experience with. For example, when we organized educational testing sessions for the Ukrainian Catholic University, we used Skype, and at the HTW University in Berlin, we chose Zoom.</p>

<p>Regardless of the tool choice, learn in advance how <strong>screen-sharing</strong> works in it. You’ll likely need to explain it to some of the participants using suitable (non-visual) language. As a result, the intro to accessibility testing sessions may take longer compared to usability testing.</p>

<h3 id="3-3-tasks">3.3. Tasks</h3>

<p>As we figured out before, accessibility testing requires a working piece of software (let’s say, an alpha or beta version); it’s harder to build, but it opens vast research opportunities. Instead of asking a participant to imagine something, you can actually observe them ordering a pizza, booking a ticket, or filling in a web form.</p>

<p>Recommendations for accessibility testing tasks aren’t much different from the ones in usability testing. Tasks should be real-life and formulated in a way people naturally think. Instead of referring to an interface (what button a person is supposed to click), you should describe a situation that could happen in reality.</p>

<p>Start a session with a <strong>mini-interview</strong> to learn about participants’ relevant experiences. For example, if you are going to test an air travel service, ask people if they travel frequently and what their desired destinations are. Based on these details, customize the tasks — booking a ticket to the place of the participant’s choice, not a generic location suggested by you.</p>

<p><strong>Examples of realistic, broad tasks:</strong></p>

<ul>
<li>Testing a consumer product: bicycle online store.<br />
<em>You want to buy a gift card for your colleague George who enjoys bikepacking. Choose the card value, customize other preferences, and select how George will receive the gift.</em> (This task implies that you learned about a real George who likes cycling during a mini-interview.)</li>
<li>Testing a professional product: customer support tool.<br />
<em>Your manager asked you to take a look at several critical issues that haven’t been answered for a week. Find those tickets and find out how to react to them.</em> (This task implies that you invited a participant who worked as a customer support agent or in a similar role.)</li>
</ul>

<p><strong>Examples of leading UI-based tasks:</strong></p>

<ul>
<li>Consumer product<br />
<em>“Open the main menu and find the ‘Other’ category. Choose a €50 gift card. In the ‘For whom’ input field enter ‘John Doe’… Select ‘Visa/Mastercard’ as a paying method…”</em></li>
<li>Professional product<br />
<em>“Navigate to the dashboard. Choose the ‘Last week’ option in the ‘Status’ filter and look at the list of tickets. Apply the filter ‘Sort by date’ and tell me what the top-most item is…”</em></li>
</ul>

<p>A testing session is 50% preparation and 50% human conversation. It’s not enough to give even a well-formulated task and silently wait.</p>

<p>An initial task reveals which of the ways to accomplish a task a participant will choose as the most intuitive one. When a person gets stuck, you can give hints, but they shouldn’t sound like “click XYZ button”; instead, let them explore further. Something like the following:</p>

<blockquote>&mdash; No worries. So, the search doesn’t give the expected result. What else can you do here?<br />&mdash; Hmm, I don’t know. Maybe filtering it somehow…<br />&mdash; OK, please try that.</blockquote>

<h3 id="3-4-wording">3.4. Wording</h3>

<p>Your communication style impacts participants’ way of thinking and the level of bias. Even a huge article won’t cover all the nitty-gritty, but here are several frequent mistakes.</p>

<p><strong>Beware of the following:</strong></p>

<ul>
<li><strong>Leading tasks</strong>: <em>“Go to the ‘Dashboard’ section and find the frequency chart”</em> or <em>“Scroll to the bottom to see advanced options.”</em><br />
Such hints totally ruin the session, and you will never know how a person would act in reality.</li>
<li><strong>Selling language</strong>: <em>“Check our purchase in one click”</em> or <em>“Try the ‘Smart filtering’ feature.”</em><br />
It makes people feel as if they have to praise your product, not share what they really think.</li>
<li><strong>Humorous tasks</strong>: <em>“Create a profile for Johnny Cash”</em> or, for example, <em>“Request Christmas tree delivery to Lapland.”</em><br />
Jokes distract participants and decrease session realism.</li>
<li><strong>IT terminology</strong>: <em>“On the dashboard, find toggle switch”</em> or <em>“Go to the block with dropdowns and radio buttons.”</em><br />
It’s bad for two reasons: you may confuse people with words they don’t understand; it can be a sign that you give leading tasks and excessive UI hints.</li>
</ul>

<p>Here is recommended further reading by Nielsen Norman Group:</p>

<ul>
<li>“<a href="https://www.nngroup.com/articles/user-testing-stepped-tasks/">How to Maximize Insights in User Testing: Stepped User Tasks</a>”, Kara Pernice</li>
<li>“<a href="https://www.nngroup.com/articles/better-usability-tasks/">Write Better Qualitative Usability Tasks: Top 10 Mistakes to Avoid</a>”, Amy Schade</li>
<li>“<a href="https://www.nngroup.com/articles/leading-questions/">Avoid Leading Questions to Get Better Insights from Participants</a>”, Amy Schade</li>
</ul>

<div class="partners__lead-place"></div>

<h2 id="part-4-session-facilitation">Part 4. Session Facilitation</h2>

<p>As agreed before, your first accessibility testing session will probably involve a blind person or a person with low vision who uses a screen reader to browse the web. So, let’s cover the two main aspects you have to know before starting a session.</p>

<h3 id="4-1-screen-readers">4.1. Screen Readers</h3>

<p>A screen reader is an assistive software that transforms <strong>visual</strong> information (text and images) into <strong>speech</strong>. When a visually impaired person navigates through a site or app using a keyboard or touchscreen, the software “reads” the text and other elements out loud.</p>

<p>Screen readers rely on the source code but interpret it in a special way. They skip code accountable for visual effects (like colors or fonts) and take into account meaningful parts, such as heading tags, text descriptions for pictures, and labels of interactive elements (whether it’s a button, input field, or checkbox). The better a code is written, the easier it will be for users to comprehend the content.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/6-screen-reader-demonstration.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="587"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/6-screen-reader-demonstration.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/6-screen-reader-demonstration.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/6-screen-reader-demonstration.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/6-screen-reader-demonstration.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/6-screen-reader-demonstration.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/6-screen-reader-demonstration.png"
			
			sizes="100vw"
			alt="A screen reader demonstration with the website on the left and a live log of everything said by the screen reader on the right"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Ruslan, a blind Ukrainian software developer, and a web accessibility instructor, demonstrates the use of a screen reader. He has created an educational website with the key facts about NVDA (on the left) and shows a live log of everything he hears from the screen reader while browsing the page (on the right). (<a href='https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/6-screen-reader-demonstration.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Now that you know how screen readers function, it’s time to experience them firsthand. Depending on the operating system, you’ll have a standard embedded screen reader already available on your device:</p>

<ul>
<li><strong>VoiceOver</strong>: Mac and iOS;</li>
<li><strong>Narrator</strong>: Windows;</li>
<li><strong>TalkBack</strong>: Android.</li>
</ul>

<p>During one of our training courses, we learned from blind users that the screen reader on iPhone is more comfortable and flexible than the Android one. Interestingly, people don’t like standard desktop screen readers either on Mac or on Windows and usually install one of the advanced third-party readers, for instance:</p>

<ul>
<li><strong>JAWS</strong> <em>(Job Access With Speech)</em>: Windows, paid, the most popular screen reader worldwide;</li>
<li><strong>NVDA</strong> <em>(Non-Visual Desktop Access)</em>: Windows, free of charge.</li>
</ul>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/7-example-interface-inaccessible-screen-reader-users.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="587"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/7-example-interface-inaccessible-screen-reader-users.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/7-example-interface-inaccessible-screen-reader-users.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/7-example-interface-inaccessible-screen-reader-users.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/7-example-interface-inaccessible-screen-reader-users.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/7-example-interface-inaccessible-screen-reader-users.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/7-example-interface-inaccessible-screen-reader-users.png"
			
			sizes="100vw"
			alt="Example of an inaccessible interface to screen reader users"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Ruslan demonstrates a mock web page with a bunch of “Read more” links placed separately from the corresponding headings. This is one of numerous examples of interfaces inaccessible to screen reader users. (<a href='https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/7-example-interface-inaccessible-screen-reader-users.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h2 id="4-2-navigation">4.2. Navigation</h2>

<p>Visually impaired people usually navigate apps and sites using a keyboard or touchscreen. And while sighted people scan a page and jump from one part to another, screen reader users can keep only one element in focus at a time, be it a paragraph of text or, let’s say, an input field.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/8-invisible-prompts-screen-readers.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="587"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/8-invisible-prompts-screen-readers.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/8-invisible-prompts-screen-readers.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/8-invisible-prompts-screen-readers.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/8-invisible-prompts-screen-readers.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/8-invisible-prompts-screen-readers.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/8-invisible-prompts-screen-readers.png"
			
			sizes="100vw"
			alt="A mock webpage with visible content and additional invisible prompts for screen readers"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Eugene has created a mock webpage to show the difference between visible content (images, headings, input fields) and additional invisible prompts for screen readers. Accessible websites provide additional guidance to help people who cannot see the screen grasp how to interact with the interface. (<a href='https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/8-invisible-prompts-screen-readers.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Participants of your accessibility testing will likely run into an unpassable obstacle at some point in the session, and you’ll give them hints on how to find the way out and proceed with the next task. In this case, you’ll need a special non-visual language that makes sense.</p>

<p><strong>Not helpful hints:</strong></p>

<ul>
<li><em>“Click the cross icon in the upper right corner.”</em></li>
<li><em>“Scroll to the bottom of the modal window and find the button there.”</em></li>
<li><em>“Look at the table in the center of the page.”</em></li>
</ul>

<p><strong>Helpful hints:</strong></p>

<ul>
<li><em>“Please, navigate to the next/previous item.”</em></li>
<li><em>“Go to the second element in the list.”</em></li>
<li><em>“Select the last heading/link/button.”</em></li>
</ul>

<p><strong>Note</strong>: <em>UI hints above are suggested for cases when a user is completely stuck in the flow and cannot proceed, for example, when an element is not navigable via a keyboard or, let’s say, an interactive element doesn’t have a proper label or name.</em></p>

<h2 id="summary">Summary</h2>

<p>Once all the testing sessions have been completed, you can analyze the collected feedback, determine priorities, and develop an action plan. This process could be the subject of a separate guideline, but let’s cover the three key principles right away:</p>

<ul>
<li><strong>Catching information</strong><br />
Testing produces tons of data, so you should be prepared to capture it; otherwise, it will be lost or obscured by your imperfect human memory. Don’t rely on a recording. Make notes in the process or ask an assistant to do that. Notes are easier to analyze and find repeating observations across sessions. Besides, they ensure you’ll have data if the recording fails.</li>
<li><strong>Raw data</strong> ≠ <strong>insights</strong><br />
Not everything you observe in testing sessions should be perceived as a call to action. Raw data shows what happened, while insights explain reasons, motivations, and ways of thinking. For example, you see that people use search instead of filters, but the insight may be that typing a search request needs less effort than going through the filter menu.</li>
<li><strong>Criticality and impact</strong><br />
Not all observations are significant. If five users struggle to proceed because the shopping cart isn’t keyboard-navigable, it’s a major barrier both for them and the business. But if one out of five participants didn’t like the button name, it isn’t critical. Take into account the following:

<ul>
<li>How many participants encountered a problem;</li>
<li>How much a problem impacts reaching the goal: booking a ticket, ordering pizza, or sending a document.</li>
</ul></li>
</ul>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/9-miro-board-accessibility-testing-findings.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="507"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/9-miro-board-accessibility-testing-findings.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/9-miro-board-accessibility-testing-findings.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/9-miro-board-accessibility-testing-findings.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/9-miro-board-accessibility-testing-findings.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/9-miro-board-accessibility-testing-findings.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/9-miro-board-accessibility-testing-findings.png"
			
			sizes="100vw"
			alt="A Miro board with accessibility testing findings"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Students of the “Inclusive web design” course at Projector Institute used a Miro board to capture accessibility testing findings. It was a simple yet efficient solution for the purpose. (<a href='https://files.smashing.media/articles/testing-sites-apps-blind-users-cheat-sheet/9-miro-board-accessibility-testing-findings.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Once the information has been collected and processed, it is essential to share it with the team: designers, engineers, product managers, quality assurance folks, and so on. The more interactive it will be, the better. Let people participate in the discussion, ask questions, and see what it means for their area of responsibility.</p>

<p>As you gain more experience in conducting testing sessions, invite team members to <strong>watch the live stream</strong> (for instance, via Google Meet) or broadcast the session to a meeting room with observers, but make sure they stay silent and don’t intrude.</p>

<h3 id="further-reading">Further Reading</h3>

<ul>
<li>“<a href="https://www.nngroup.com/reports/how-to-conduct-usability-studies-accessibility/">How to Conduct Usability Studies for Accessibility</a>,” a comprehensive report by Nielsen Norman Group</li>
<li>“<a href="https://www.deque.com/blog/incorporate-users-disabilities-ux-testing/">How to Incorporate Users with Disabilities in UX Testing</a>,” an article by Deque Systems</li>
<li>“<a href="https://www.smashingmagazine.com/2018/03/tips-conducting-usability-studies-participants-disabilities/">Tips for Conducting Usability Studies with Participants with Disabilities</a>,” an article by Peter McNally for Smashing Magazine</li>
<li>“<a href="http://www.uiaccess.com/accessucd/ut_plan.html#recruiting">Accessibility in User-Centered Design: Planning Usability Testing</a>,” an excerpt from the book “Just Ask: Integrating Accessibility Throughout Design” by Shawn Lawton Henry</li>
<li>“<a href="https://www.nngroup.com/articles/mobile-accessibility-research/">Conducting Mobile Accessibility Research with Screen-Reader Users</a>,” an article by Tanner Kohler for Nielsen Norman Group</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(vf, gg, yk, il)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Sandrina Pereira</author><title>A Guide To Accessible Form Validation</title><link>https://www.smashingmagazine.com/2023/02/guide-accessible-form-validation/</link><pubDate>Mon, 27 Feb 2023 14:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2023/02/guide-accessible-form-validation/</guid><description>Each time we build a field validation from scratch, accessibility doesn’t come out of the box. In this guide, Sandrina breaks down what we need to take into consideration, so that nobody gets stuck on an inaccessible invalid field.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2023/02/guide-accessible-form-validation/" />
              <title>A Guide To Accessible Form Validation</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>A Guide To Accessible Form Validation</h1>
                  
                    
                    <address>Sandrina Pereira</address>
                  
                  <time datetime="2023-02-27T14:00:00&#43;00:00" class="op-published">2023-02-27T14:00:00+00:00</time>
                  <time datetime="2023-02-27T14:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>When it comes to form validation, we can explore it from two perspectives: usability and accessibility. “What’s the difference between usability and accessibility?” you may ask. Let’s start from there.</p>

<h3 id="usability">Usability</h3>

<p>Usability is about improving a given action until it’s as easy and delightful as possible. For example, making the process of fixing an invalid field easier or writing better descriptions so the user can fill the field without facing an error message.</p>

<p>To get a really good grasp of the challenges in this process, I highly recommend you to read the deep-dive “<a href="https://www.smashingmagazine.com/2022/09/inline-validation-web-forms-ux/">Designing better inline validations UX</a>” from Vitaly. There, you’ll learn about the different approaches to validate a field and what are the caveats and trade-offs of each one.</p>

<h3 id="accessibility">Accessibility</h3>

<p>Choosing the best UX approach is just half of the challenge. The other half is ensuring that any person knows the field is invalid and easily understands how to fix it. That’s what I’ll explore through this guide.</p>

<p>You can look at ‘Accessibility’ and ‘Usability’ as two equally important universes with their own responsibilities. Accessibility is about ensuring anyone can <em>access</em> the content. Usability is about how easy it is to use the website. Once overlapped will take ‘User Experience’ to its best.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/guide-accessible-form-validation/accessibility-usability-circles-create-ux.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="507"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/guide-accessible-form-validation/accessibility-usability-circles-create-ux.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/guide-accessible-form-validation/accessibility-usability-circles-create-ux.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/guide-accessible-form-validation/accessibility-usability-circles-create-ux.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/guide-accessible-form-validation/accessibility-usability-circles-create-ux.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/guide-accessible-form-validation/accessibility-usability-circles-create-ux.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/guide-accessible-form-validation/accessibility-usability-circles-create-ux.png"
			
			sizes="100vw"
			alt="A visual representation of two circles (Accessibility and Usability) that intersect in the middle creating UX"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      A visual representation of two circles (Accessibility and Usability) that intersect in the middle creating UX. (<a href='https://files.smashing.media/articles/guide-accessible-form-validation/accessibility-usability-circles-create-ux.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>With these two concepts clarified, we are now ready to dive into accessible validations.</p>

<h3 id="table-of-contents">Table Of Contents</h3>

<ol>
  <li><a href="#accessibility-in-forms">Accessibility In Forms</a></li>
  <li><a href="#the-field-instructions">The Field Instructions</a></li>
  <li><a href="#required-fields">Required Fields</a></li>
  <li><a href="#invalid-fields">Invalid Fields</a></li>
  <li><a href="#moments-of-validation">Moments Of Validation</a></li>
  <li><a href="#testing-field-validations">Testing Field Validations</a></li>
  <li><a href="#things-to-keep-in-mind-for-accessible-fields">Things To Keep In Mind</a></li>
</ol>

<h2 id="accessibility-in-forms">Accessibility In Forms</h2>

<p>Before we get into validation, let me recap the accessibility fundamentals in forms:</p>

<ul>
<li><strong>Navigation</strong><br />
The form can be navigated using only the keyboard, so people who don’t use a mouse can still fill and submit the form. This is mostly about setting a <a href="https://www.sarasoueidan.com/blog/focus-indicators/">compliant focus indicator</a> for each form control.</li>
<li><strong>Context</strong><br />
Each form field must have an <a href="https://css-tricks.com/html-inputs-and-labels-a-love-story/">accessible name (label)</a>, so people who use assistive technologies can identify each field. For example, screen readers would read a field name to its user.</li>
</ul>

<h3 id="screen-readers-in-forms">Screen Readers In Forms</h3>

<p>Similar to browsers, screen readers (SR) behave slightly differently from each other: different shortcuts, different semantic announcements, and different features support. For example, NVDA works better with Firefox, while VoiceOver works best with Safari, and both have slightly different behaviors. However, this shouldn’t stop us from building the common solid foundations that are strongly supported by all.</p>

<p>A while ago, I asked on Twitter <a href="https://twitter.com/a_sandrina_p/status/1382811701796614148">how screen reader users navigate forms</a>. Most prefer to <code>Tab</code> or use special shortcuts to quickly jump through the fields, but oftentimes can’t do it. The reason is that we, developers, forget to implement those fields with screen readers in mind most of the time.</p>

<p>Currently, many of the field validations can’t be solved with native HTML elements, so we are left with the last resource: ARIA attributes. By using them, Assistive Technologies like screen readers will better describe a given element to the user.</p>

<p>Through the article, I’m using VoiceOver in macOS Catalina for all the scenarios. Each one includes a Copeden demo and a video recording, which hopefully will give you a better idea of how screen readers behave in forms, field descriptions, and errors.</p>

<h2 id="the-field-instructions">The Field Instructions</h2>

<h3 id="field-description">Field Description</h3>

<p>The field label is the first visual instruction to know what to fill in, followed by a description when needed. In the same way sighted users can see the description (assuming a color contrast that meets <a href="https://www.w3.org/TR/UNDERSTANDING-WCAG20/visual-audio-contrast-contrast.html">WCAG 1.4.3 Contrast Minimum</a>), the SR users also need to be aware of it.</p>

<p>To do so, we can connect the description to the input by using the <code>aria-describedby</code> attribute, which accepts an <code>id</code> pointing to the description element. With it, SR will read the description automatically when the user focuses on the field input.</p>

<pre><code class="language-html">&lt;label for="address"&gt;Your address&lt;/label&gt;
&lt;input id="address" type="text"</code> <code style="font-weight: bold;">aria-describedby="addressHint"/&gt;</code>
<code class="language-html">&lt;span id="addressHint"&gt;Remember to include the door and apartment.&lt;/span&gt;
</code></pre>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="bGjaZZQ"
	data-user="sandrina-p"
	data-default-tab="result"
	class="codepen">Open the Pen [Field Validations — aria-describedby](https://codepen.io/sandrina-p/pen/bGjaZZQ) by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</p>
	<figcaption>Open the Pen <a href="https://codepen.io/sandrina-p/pen/bGjaZZQ">Field Validations — aria-describedby</a> by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</figcaption>
</figure>


<figure class="video-embed-container">
  <div class="video-embed-container--wrapper"
	
  >
    <iframe class="video-embed-container--wrapper-iframe" src="https://player.vimeo.com/video/801159295"
        frameborder="0"
        allow="autoplay; fullscreen; picture-in-picture"
        allowfullscreen>
    </iframe>
	</div>
	
</figure>

<h4 id="the-future-of-aria-description">The Future Of ARIA Description</h4>

<p>An ARIA attribute <code>aria-description</code> exists, but it’s not yet supported by most screen readers. So, for now, we’ll need to stick with <code>aria-describedby</code>.</p>

<h4 id="the-difference-between-aria-labelledby-and-aria-describedby">The Difference Between <code>aria-labelledby</code> And <code>aria-describedby</code></h4>

<p>The attribute <code>aria-labelledby</code> is an alternative to <code>&lt;label&gt;</code> and <code>aria-label</code>, responsible for the field’s accessible name. In short, we should use <code>aria-label</code> for critical information and <code>aria-describedby</code> for additional information. The <code>aria-describedby</code> is announced <em>after</em> the label with a slight pause between both. For example, in the demo above, the Voice Over would announce:</p>

<blockquote>{name} {role} [pause] {description}.<br />“Your address, input [pause] Remember to include the door and apartment.”</blockquote>

<h4 id="how-descriptions-are-announced">How Descriptions Are Announced</h4>

<p>It’s worth noting that <code>aria-describedby</code> is <a href="https://www.tpgi.com/short-note-on-aria-label-aria-labelledby-and-aria-describedby/">only meant to some HTML elements</a>. Depending on the screen reader, it&rsquo;s also announced slightly differently. Some screen readers allow customizing how long the pause between the label and description is and even mute the description. Adrian Roselli has a brilliant deep dive on <a href="https://adrianroselli.com/2022/04/accessible-description-exposure.html">descriptions exposure across all screen readers</a>. The bottom line is not to rely on descriptions to convey critical information that can’t be easily accessed in another way.</p>

<h4 id="dealing-with-complex-descriptions">Dealing With Complex Descriptions</h4>

<p>When announcing texts inside <code>aria-describedby</code>, the screen readers will read it as just plain text, ignoring any semantics. Imagine a field that contains a long description with lists, links, or any other custom element:</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/guide-accessible-form-validation/field-complex-description.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="430"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/guide-accessible-form-validation/field-complex-description.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/guide-accessible-form-validation/field-complex-description.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/guide-accessible-form-validation/field-complex-description.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/guide-accessible-form-validation/field-complex-description.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/guide-accessible-form-validation/field-complex-description.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/guide-accessible-form-validation/field-complex-description.png"
			
			sizes="100vw"
			alt="A field with a description that contains a list with three items and link"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      A field with a description that contains a list of three items and link. (<a href='https://files.smashing.media/articles/guide-accessible-form-validation/field-complex-description.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>In this field, it would cause more harm than good to connect the entire description to the <code>aria-describedby</code>. Instead, I prefer to connect a short description that hints to the user about the full description so they can navigate to it on their own.</p>

<div class="break-out">

 <pre><code class="language-html">&lt;input id="days" type="text"</code> <code style="font-weight: bold;">aria-describedby="daysHintShort"/&gt;</code>
<code class="language-html">&lt;div class="field-hint"&gt;</code>
  <code style="font-weight: bold;">&lt;span id="daysHintShort" hidden&gt;</code>
    <code class="language-html">&lt;!-- This text is announced automatically when the input is focused
    and ignored when the screen reader users navigate to it. --&gt;
    Below it's explained how these days influence your benefits.
  &lt;span&gt;
  &lt;div&gt;Depending on how many days....&lt;/div&gt;
&lt;/div&gt;
</code></pre>
</div>

<p>As this short description is exclusive to assistive technologies only, we need to hide it from sight users. A possibility could be using the <a href="https://kittygiraudel.com/snippets/sr-only-class/"><code>.sr-only</code> technique</a>. However, a side-effect is that the screen reader user would bump into it again when moving to the next element, which is redundant. So, instead, let’s use the <em><code>hidden</code></em> attribute, which hides the short description from assistive technologies altogether, but still lets us use the node’s contents as the inputs’ description.</p>

<div class="break-out">

<pre><code class="language-html">&lt;input id="days" type="text" aria-describedby="daysHintShort"/&gt;
&lt;div class="field-hint"&gt;</code>
  <code class="language-html">&lt;span id="daysHintShort"</code> <code style="font-weight: bold;">hidden&gt;</code>
    <code class="language-html">&lt;!-- This text is announced automatically when the input is focused,
    and ignored when the screen reader users navigates to it. --&gt;
    Below it's explained how these days influence your benefits.
  &lt;/span&gt;
  &lt;div&gt;Depending on how many days....&lt;/div&gt;
&lt;/div&gt;
</code></pre>
</div>

<p>I find this pattern very useful for fields with long descriptions or even complex validation descriptions. The tip here is to hint to the users about the full instructions, so they won’t be left alone guessing about it.</p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="LYBevLe"
	data-user="sandrina-p"
	data-default-tab="result"
	class="codepen">Open the Pen [Field Validations — complex descriptions](https://codepen.io/sandrina-p/pen/LYBevLe) by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</p>
	<figcaption>Open the Pen <a href="https://codepen.io/sandrina-p/pen/LYBevLe">Field Validations — complex descriptions</a> by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</figcaption>
</figure>


<figure class="video-embed-container">
  <div class="video-embed-container--wrapper"
	
  >
    <iframe class="video-embed-container--wrapper-iframe" src="https://player.vimeo.com/video/801181734"
        frameborder="0"
        allow="autoplay; fullscreen; picture-in-picture"
        allowfullscreen>
    </iframe>
	</div>
	
</figure>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="/printed-books/typescript-in-50-lessons/">“TypeScript in 50 Lessons”</a></strong>, our shiny new guide to TypeScript. With detailed <strong>code walkthroughs</strong>, hands-on examples and common gotchas. For developers who know enough <strong>JavaScript</strong> to be dangerous.</p>
<a data-instant href="/printed-books/typescript-in-50-lessons/" class="btn btn--green btn--large" style="">Jump to table of contents&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="/printed-books/typescript-in-50-lessons/" class="feature-panel-image-link">
<div class="feature-panel-image"><picture><source type="image/avif" srcSet="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/2732dfe9-e1ee-41c3-871a-6252aeda741c/typescript-panel.avif" />
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c2f2c6d6-4e85-449a-99f5-58bd053bc846/typescript-shop-cover-opt.png"
    alt="Feature Panel"
    width="481"
    height="698"
/>
</picture>
</div>
</a>
</div>
</aside>
</div>

<h2 id="required-fields">Required Fields</h2>

<p>How do you know a field is required? Depending on the context, it might be intuitive (e.g., a login form). Many times we need an explicit clue, though.</p>

<h3 id="the-visual-clue">The Visual Clue</h3>

<p>The red asterisk is one of the most common visual patterns, like the following:</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/guide-accessible-form-validation/required-fields-red-asterisk.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="392"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/guide-accessible-form-validation/required-fields-red-asterisk.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/guide-accessible-form-validation/required-fields-red-asterisk.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/guide-accessible-form-validation/required-fields-red-asterisk.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/guide-accessible-form-validation/required-fields-red-asterisk.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/guide-accessible-form-validation/required-fields-red-asterisk.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/guide-accessible-form-validation/required-fields-red-asterisk.png"
			
			sizes="100vw"
			alt="Two fields where one of them has a red asterisk expressing that it’s required"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Two fields where one of them has a red asterisk expressing that it’s required. (<a href='https://files.smashing.media/articles/guide-accessible-form-validation/required-fields-red-asterisk.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Visually most people will recognize this pattern. However, people who use SR will get confused. For instance, Voice Over will announce <em>“Address</em> <strong><em>star</em></strong>, <em>edit text.”</em> Some screen readers might completely ignore it, depending on how strict the verbosity settings are.</p>

<p>This is a perfect scenario of an element that, although it’s visually useful, it’s far from ideal for SR users. There are a few ways to address this <a href="https://kittygiraudel.com/2022/08/05/the-required-fault-in-our-stars/">asterisk pattern</a>. Personally, I prefer to “hide” the asterisk using <code>aria-hidden=&quot;true&quot;</code>, which tells all assistive technologies to ignore it. That way, Voice Over will just say <em>“Address, edit text.”</em></p>

<pre><code class="language-html">&lt;label for="address" class="field-label"&gt;
  Address &lt;span class="field-star"</code> <code style="font-weight: bold;">aria-hidden="true"&gt;&#42;&lt;/span&gt;</code>
<code class="language-html">&lt;/label&gt; 
</code></pre>

<h3 id="the-semantic-clue">The Semantic Clue</h3>

<p>With the visual clue removed from AT, we still need to semantically tell the input is required. To do so, we could add the <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/required"><code>required</code></a> <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/required">attribute</a> to the element. With that, the SR will say, “<em>Address, required, edit text.”</em></p>

<pre><code class="language-html">&lt;input id="address" type="text" required /&gt;
</code></pre>

<p>Besides adding the necessary semantics, the <code>required</code> attribute also modifies the form behavior. On Chrome 107, when the submit fails, it shows a tooltip with a native error message and focuses the required empty field, like the following:</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/guide-accessible-form-validation/native-error-message-required-empty-field.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="323"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/guide-accessible-form-validation/native-error-message-required-empty-field.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/guide-accessible-form-validation/native-error-message-required-empty-field.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/guide-accessible-form-validation/native-error-message-required-empty-field.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/guide-accessible-form-validation/native-error-message-required-empty-field.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/guide-accessible-form-validation/native-error-message-required-empty-field.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/guide-accessible-form-validation/native-error-message-required-empty-field.png"
			
			sizes="100vw"
			alt="A tooltip with a native error message below the required empty field"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      A required invalid field with a native tooltip saying “Please fill out this field”. (<a href='https://files.smashing.media/articles/guide-accessible-form-validation/native-error-message-required-empty-field.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="the-flaws-in-default-validations">The Flaws In Default Validations</h3>

<p>Probably your designer or client will complain about this default validation because it doesn’t match your website aesthetics. Or your users will complain the error is hard to understand or disappears too soon. As currently, it’s impossible to customize the styling and behavior, so we’ll see ourselves forced to <a href="https://adrianroselli.com/2019/02/avoid-default-field-validation.html">avoid the default field validation</a> and implement our own.
And just like that, accessibility is compromised again. As web creators, it’s our duty to ensure the custom validation is accessible, so let’s do it.</p>

<p>The first step is to replace <code>required</code> with <code>aria-required</code>, which will keep the input required semantics without modifying its style or behavior. Then, we’ll implement the error message itself in a second.</p>

<pre><code class="language-html">&lt;input id="address" type="text"</code> <code style="font-weight: bold;">required="required" /&gt;</code>
<code class="language-html">&lt;input id="address" type="text"</code> <code style="font-weight: bold;">aria-required="true" /&gt;</code></pre>

<p>Here’s a table comparing side by side the difference between <code>required</code> and <code>aria-required</code>:</p>

<table class="tablesaw break-out">
    <thead>
        <tr>
            <th>Function</th>
      <th><code>required</code></th>
      <th><code>aria-required</code></th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Adds semantics</td>
            <td>Yes</td>
      <td>Yes</td>
        </tr>
        <tr>
            <td>Prevents invalid submit</td>
            <td>Yes</td>
      <td>No</td>
        </tr>
        <tr>
            <td>Shows custom error message</td>
            <td>Yes</td>
      <td>No</td>
        </tr>
    <tr>
            <td>Auto-focus invalid field</td>
            <td>Yes</td>
      <td>No</td>
        </tr>
    </tbody>
</table>

<p><strong>Reminder:</strong> <em>ARIA attributes never modify an element’s styles or behavior. It only enhances its semantics.</em></p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="MWXZJBX"
	data-user="sandrina-p"
	data-default-tab="result"
	class="codepen">Open the Pen [Field Validations — required vs aria-required](https://codepen.io/sandrina-p/pen/MWXZJBX) by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</p>
	<figcaption>Open the Pen <a href="https://codepen.io/sandrina-p/pen/MWXZJBX">Field Validations — required vs aria-required</a> by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</figcaption>
</figure>


<figure class="video-embed-container">
  <div class="video-embed-container--wrapper"
	
  >
    <iframe class="video-embed-container--wrapper-iframe" src="https://player.vimeo.com/video/801186255"
        frameborder="0"
        allow="autoplay; fullscreen; picture-in-picture"
        allowfullscreen>
    </iframe>
	</div>
	
</figure>

<p>As an alternative, if you need to keep the <code>required</code> attribute but without the ‘validation behavior’, you can add the <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-novalidate"><code>novalidate</code></a> <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-novalidate">attribute</a> to <code>&lt;form&gt;</code>. Personally, I still prefer the <code>aria-required</code> because it’s easier to control the input behavior isolated in a <code>Field</code> component without depending on the parent element.</p>

<h2 id="invalid-fields">Invalid Fields</h2>

<h3 id="the-color-trap">The Color Trap</h3>

<p>In a minimalist design, it’s tempting to use only the red color to express that the field is invalid. Although the usage of color is beneficial, using it alone is not enough, as defended by <a href="https://www.w3.org/WAI/WCAG21/Understanding/use-of-color.html">WCAG 1.4.1 Use of Color</a>. People perceive color in different ways and use different color settings, and that red color won’t be noticed by everyone.</p>

<p>The solution here is to complement the colorful error state with an additional visual element. It could be an icon, but even that might not be enough to understand <em>why</em> the field is invalid. So the most inclusive solution is to explicitly show a text message.</p>














<figure class="
  
  
  ">
  
    <a href="https://files.smashing.media/articles/guide-accessible-form-validation/visual-comparation-invalid-fields.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="349"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/guide-accessible-form-validation/visual-comparation-invalid-fields.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://files.smashing.media/articles/guide-accessible-form-validation/visual-comparation-invalid-fields.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://files.smashing.media/articles/guide-accessible-form-validation/visual-comparation-invalid-fields.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://files.smashing.media/articles/guide-accessible-form-validation/visual-comparation-invalid-fields.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://files.smashing.media/articles/guide-accessible-form-validation/visual-comparation-invalid-fields.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://files.smashing.media/articles/guide-accessible-form-validation/visual-comparation-invalid-fields.png"
			
			sizes="100vw"
			alt="Visual comparison side-by-side. Right-side: Using only color. Left-side: Using also an icon and text."
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Visual comparison side-by-side. Right-side: Using only color. Left-side: Using also an icon and text. (<a href='https://files.smashing.media/articles/guide-accessible-form-validation/visual-comparation-invalid-fields.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="the-error-message">The Error Message</h3>

<p>From a usability standpoint, there’s a lot to take into consideration about error messages. In short, the trick is to write a helpful message without technical jargon that states why the field is incorrect and, when possible, to explains how to fix it. For a deep dive, read how to <a href="https://www.smashingmagazine.com/2022/08/error-messages-ux-design/">design better error messages</a> by Vitaly and how <a href="https://wix-ux.com/when-life-gives-you-lemons-write-better-error-messages-46c5223e1a2f">Wix rewrote all their error messages</a>.</p>

<p>From an accessibility standpoint, we must ensure anyone not only knows that the field is invalid but also what’s the error message. To mark a field as invalid, we use the ARIA attribute <code>aria-invalid=&quot;true&quot;</code>, which will make the SR announce that the field is invalid when it’s focused. Then, to also announce the error, we use <code>aria-describedby</code> we learned about before, pointing to the error element:</p>

<pre><code class="language-html">&lt;input
  id="address"
  type="text"
  required="required"</code>
  <code style="font-weight: bold;">aria-invalid="true"
  aria-describedby="addressError addressHint"
/&gt;</code>
<code class="language-html">&lt;span&gt;
  &lt;p id="addressError"&gt;Address cannot be empty.&lt;/p&gt;
  &lt;p id="addressHint"&gt;Remember to include the door and apartment.&lt;/p&gt;
&lt;/span&gt;
</code></pre>

<h4 id="invalid-field-with-description">Invalid Field With Description</h4>

<p>A good thing about <code>aria-describedby</code> is that it accepts multiple ids, which is very useful for invalid fields with descriptions. We can pass the id of both elements, and the screen reader will announce both when the input is focused, respecting the order of the ids.</p>

<pre><code class="language-html">&lt;input
  id="address"
  type="text"
  required="required"
  aria-invalid="true"</code>
  <code style="font-weight: bold;">aria-describedby="addressError addressHint"
/&gt;</code>
<code class="language-html">&lt;span&gt;
  &lt;p id="addressError"&gt;Address cannot be empty.&lt;/p&gt;
  &lt;p id="addressHint"&gt;Remember to include the door and apartment.&lt;/p&gt;
&lt;/span&gt;
</code></pre>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="oNMEBXg"
	data-user="sandrina-p"
	data-default-tab="result"
	class="codepen">Open the Pen [Field Validations — aria-invalid](https://codepen.io/sandrina-p/pen/oNMEBXg) by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</p>
	<figcaption>Open the Pen <a href="https://codepen.io/sandrina-p/pen/oNMEBXg">Field Validations — aria-invalid</a> by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</figcaption>
</figure>


<figure class="video-embed-container">
  <div class="video-embed-container--wrapper"
	
  >
    <iframe class="video-embed-container--wrapper-iframe" src="https://player.vimeo.com/video/801328056"
        frameborder="0"
        allow="autoplay; fullscreen; picture-in-picture"
        allowfullscreen>
    </iframe>
	</div>
	
</figure>

<h4 id="the-future-of-aria-errors-and-its-support">The Future Of ARIA Errors And Its Support</h4>

<p>An ARIA attribute dedicated to errors already exists &mdash; <code>aria-errormessage</code> &mdash; but it’s not yet supported by most screen readers. So, for now, you are better off avoiding it and sticking with <code>aria-describedby</code>.</p>

<p>In the meantime, you could check <a href="https://a11ysupport.io/">A11Ysupport</a> to know the support of a given ARIA attribute. You can look at this website as the “<a href="https://caniuse.com/">caniuse</a>” but for screen readers. It contains detailed test cases for almost every attribute that influences HTML semantics. Just pay attention to the date of the test, as some tests might be too old.</p>

<h4 id="dynamic-content-is-not-announced-by-default">Dynamic Content Is Not Announced By Default</h4>

<p>Important to note that although <code>aria-describedby</code> supports multiple ids, if you change them (or the elements’ content) dynamically while the input is focused, the SR won’t re-announce its new content automatically. The same happens to the input label. It will only read the new content after you leave the input and focus it again.</p>

<p>In order for us to announce changes in content dynamically, we’ll need to learn about live regions. Let’s explore that in the next section.</p>

<div class="partners__lead-place"></div>

<h2 id="moments-of-validation">Moments Of Validation</h2>

<p>The examples shown so far demonstrate ARIA attributes in static fields. But in real fields, we need to apply them dynamically based on user interactions. Forms are one of the scenarios where JavaScript is fundamental to making our fields fully accessible without compromising modern interactive usability.</p>

<p>Regardless of which moment of validation (usability pattern) you use, any of them can be accomplished with accessibility in mind. We’ll explore three common validation patterns:</p>

<ul>
<li><strong>Instant validation</strong><br />
The field gets validated on every value change.</li>
<li><strong>Afterward validation</strong><br />
The field gets validated on blur.</li>
<li><strong>Submit validation</strong><br />
The field gets validated on the form submit.</li>
</ul>

<h3 id="instant-validation">Instant Validation</h3>

<p>In this pattern, the field gets validated every time the value changes, and we show the error message immediately after.</p>

<p>In the same way, as the error is shown dynamically, we also want the screen reader to announce it right away. To do so, we must turn the error element in a Live Region, by using <code>aria-live=&quot;assertive&quot;</code>. Without it, the SR won’t announce the error message, unless the user manually navigates to it.</p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="gOjvgrm"
	data-user="sandrina-p"
	data-default-tab="result"
	class="codepen">Open the Pen [Field Validations - instant validation](https://codepen.io/sandrina-p/pen/gOjvgrm) by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</p>
	<figcaption>Open the Pen <a href="https://codepen.io/sandrina-p/pen/gOjvgrm">Field Validations - instant validation</a> by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</figcaption>
</figure>


<figure class="video-embed-container">
  <div class="video-embed-container--wrapper"
	
  >
    <iframe class="video-embed-container--wrapper-iframe" src="https://player.vimeo.com/video/801329427"
        frameborder="0"
        allow="autoplay; fullscreen; picture-in-picture"
        allowfullscreen>
    </iframe>
	</div>
	
</figure>

<p>Some nice things to know about this example:</p>

<ul>
<li>While the input is valid, the <code>aria-invalid</code> can be <code>&quot;false&quot;</code> or be completely absent from the DOM. Both ways work fine.</li>
<li>The <code>aria-describedby</code> can be dynamically modified to contain one or multiple ids. However, if modified while the input is focused, the screen reader won’t re-announce its new ids &mdash; only when the input gets re-focused again.</li>
<li>The <code>aria-live</code> attribute holds many gotchas that can cause more harm than good if used incorrectly. Read “<a href="https://bitsofco.de/using-aria-live/">Using aria-live</a>” by Ire Aderinokun to better understand how Live Regions behave and when (not) to use it.</li>
<li>From a usability perspective, be mindful that this validation pattern can be annoying, the same way it’s annoying when the error shows up too early while we are still typing our answer.</li>
</ul>

<h3 id="afterward-validation">Afterward Validation</h3>

<p>In this pattern, the error message is only shown after the user leaves the field (on blur event). Similar to the ‘Instant Validation’, we need to use the <code>aria-live</code>  so that the user knows about the error before start filling the next elements.</p>

<p><strong>Usability tip:</strong> <em>I personally prefer to show the on-blur error only if the input value changes. Why? Some screen reader users go through all the fields to know how many exist before starting to actually fill them. This can happen with keyboard users too. Even sight users might accidentally click on one of the fields while scrolling down. All these behaviors would trigger the on-blur error too soon when the intent was just to ‘read’ the field, not to fill it. This slightly different pattern avoids that error flow.</em></p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="yLqvgWd"
	data-user="sandrina-p"
	data-default-tab="result"
	class="codepen">Open the Pen [Field Validations - afterward validation](https://codepen.io/sandrina-p/pen/yLqvgWd) by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</p>
	<figcaption>Open the Pen <a href="https://codepen.io/sandrina-p/pen/yLqvgWd">Field Validations - afterward validation</a> by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</figcaption>
</figure>


<figure class="video-embed-container">
  <div class="video-embed-container--wrapper"
	
  >
    <iframe class="video-embed-container--wrapper-iframe" src="https://player.vimeo.com/video/801330447"
        frameborder="0"
        allow="autoplay; fullscreen; picture-in-picture"
        allowfullscreen>
    </iframe>
	</div>
	
</figure>

<h3 id="submit-validation">Submit Validation</h3>

<p>In this pattern, the validation happens when the user submits the form, showing the error message afterward. How and when exactly these errors are shown depends on your design preferences. I’ll go through two of the most common approaches:</p>

<h4 id="in-long-forms">In Long Forms</h4>

<p>In this scenario, I personally like to show an error summary message, usually placed right before the submit button, so that the chances of being visible on the viewport are higher. This error message should be short, for example, “Failed to save because 3 fields are invalid.”</p>

<p>It’s also common to show the inline error messages of all invalid fields, but this time without <code>aria-live</code> so that the screen reader doesn’t announce all the errors, which can be annoying. Some screen readers only announce the first Live Region (error) in the DOM which can also be misleading.</p>

<p>Instead, I add the <code>aria-live=&quot;assertive&quot;</code> only to the error summary.</p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="bGjLqbQ"
	data-user="sandrina-p"
	data-default-tab="result"
	class="codepen">Open the Pen [Field Validations - on submit - error summary](https://codepen.io/sandrina-p/pen/bGjLqbQ) by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</p>
	<figcaption>Open the Pen <a href="https://codepen.io/sandrina-p/pen/bGjLqbQ">Field Validations - on submit - error summary</a> by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</figcaption>
</figure>

<p>In the demo above, the error summary has two elements:</p>

<pre><code class="language-html">&lt;p aria-live="assertive"</code> <code style="font-weight: bold;">class="sr-only"&gt;</code>
  <code class="language-html">Failed to save because 2 fields are invalid.
&lt;/p&gt;</code>
<code style="font-weight: bold;">&lt;p aria-hidden="true"&gt;</code>
  <code class="language-html">Failed to save because 2 fields are invalid.
&lt;/p&gt;
</code></pre>

<ol>
<li>The semantic error summary contains a static error summary meant to be announced only on submit. So the <code>aria-live</code> is in this element, alongside the <code>.sr-only</code> to hide it visually.</li>
<li>The visual error summary updates every time the number of invalid fields changes. Announcing that message to SR could be annoying, so it’s only meant for visual updates. It has the <code>aria-hidden</code> so that the screen readers users don’t bump into the error summary twice.</li>
</ol>

<p>Check the screen reader demo below:</p>


<figure class="video-embed-container">
  <div class="video-embed-container--wrapper"
	
  >
    <iframe class="video-embed-container--wrapper-iframe" src="https://player.vimeo.com/video/801331832"
        frameborder="0"
        allow="autoplay; fullscreen; picture-in-picture"
        allowfullscreen>
    </iframe>
	</div>
	
</figure>

<h4 id="in-short-forms">In Short Forms</h4>

<p>In very short forms, such as logins, you might prefer not to show an error summary in favor of just the inline error messages. If so, there are two common approaches you can take here:</p>

<ol>
<li>Add an invisible error summary for screen readers by using the <code>.sr-only</code> we learned above.</li>
<li>Or, when there’s just one invalid field, focus that invalid field automatically using <a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus"><code>HTMLElement.focus()</code></a>. This helps keyboard users by not having to tab to it manually, and, thanks to <code>aria-describedby</code>, will make screen readers announce the field error immediately too. Note that here you don’t need <code>aria-live</code> to force the error announcement because the field getting focused is enough to trigger it.</li>
</ol>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="YzOXajZ"
	data-user="sandrina-p"
	data-default-tab="result"
	class="codepen">Open the Pen [Field Validations - on submit - auto-focus](https://codepen.io/sandrina-p/pen/YzOXajZ) by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</p>
	<figcaption>Open the Pen <a href="https://codepen.io/sandrina-p/pen/YzOXajZ">Field Validations - on submit - auto-focus</a> by <a href="https://codepen.io/sandrina-p">Sandrina Pereira</a>.</figcaption>
</figure>


<figure class="video-embed-container">
  <div class="video-embed-container--wrapper"
	
  >
    <iframe class="video-embed-container--wrapper-iframe" src="https://player.vimeo.com/video/801332671"
        frameborder="0"
        allow="autoplay; fullscreen; picture-in-picture"
        allowfullscreen>
    </iframe>
	</div>
	
</figure>

<h4 id="accessibility-comes-before-usability">Accessibility Comes Before Usability</h4>

<p>I must highlight that this is just one approach among others, such as:</p>

<ul>
<li><strong>Error text</strong><br />
It can be just a simple text or include the number of invalid fields or even add an anchor link to each invalid field.</li>
<li><strong>Placement</strong><br />
Some sites show the error summary at the top of the form. If you do this, remember to scroll and focus it automatically so that everyone can see/hear it.</li>
<li><strong>Focus</strong><br />
Some sites focus on the error summary, while others don’t. Some focus on the first invalid field and don’t show an error summary at all.</li>
</ul>

<p>Any of these approaches can be considered accessible as long it’s implemented correctly so that anyone can perceive why the form is invalid. We can always argue that one approach is better than the other, but at this point, the benefits would be mostly around usability and no longer exclusively about accessibility.</p>

<p>Nevertheless, the form error summary is an excellent opportunity to gracefully recover from a low moment in a form journey. In an upcoming article, I will break down these form submit patterns in greater detail from both accessibility and usability perspectives.</p>

<h2 id="testing-field-validations">Testing Field Validations</h2>

<p>Automated accessibility tools catch only around <a href="https://www.levelaccess.com/blog/automated-accessibility-testing-tools-how-much-do-scans-catch/">20-25% of A11Y issues</a>; the more interactive your webpage is, the fewer bugs it catches. For instance, those tools would not have caught any of the demos explored in this article.</p>

<p>You could write unit tests asserting that the ARIA attributes are used in the right place, but even that doesn’t guarantee that the form works as intended for everyone in every browser.</p>

<p>Accessibility is about personal experiences, which means it relies a lot on manual testing, similar to how pixel-perfect animations are better tested manually too. For now, the most effective accessibility testing is a combination of multiple practices such as automated tools, unit tests, manual tests, and user testing.</p>

<p>In the meantime, I challenge you to try out a screen reader by yourself, especially when you build a new custom interactive element from scratch. You’ll discover a new web dimension, and ultimately, it will make you a better web creator.</p>

<h2 id="things-to-keep-in-mind-for-accessible-fields">Things To Keep In Mind For Accessible Fields</h2>

<h3 id="auto-focusing-invalid-inputs">Auto Focusing Invalid Inputs</h3>

<p>Above, I mentioned one possible pattern of automatically focusing the first invalid field, so the user doesn’t need to manually navigate to it. Depending on the case, this pattern might be useful or not. In doubt, I prefer to keep things simple and not add auto-focus. If not obvious, let the user read the summary error message, understand it and then navigate to the field by themselves.</p>

<h3 id="wrapping-everything-inside-label">Wrapping Everything Inside <code>&lt;label&gt;</code></h3>

<p>It might be tempting to wrap everything about a field inside the <code>&lt;label&gt;</code> element. Well, yes, the assistive technologies would then announce everything inside automatically on input focus. But, depending on how ‘extensive’ the input is, it might sound more confusing than helpful:</p>

<ul>
<li>It’s not clear for screen reader users what exactly the label is.</li>
<li>If you include interactive elements inside the label, clicking on them might conflict with the automatic input focus behavior.</li>
<li>In automated tests (e.g., <a href="https://testing-library.com/">Testing Library</a>), you can’t target an input by its label.</li>
</ul>

<p>Overall, keeping the label separate from everything else has more benefits, including having grainier control over how elements are announced and organized.</p>

<h3 id="disabling-the-submit-button">Disabling The Submit Button</h3>

<p>Preventing the user from submitting an invalid form is the most common reason to disable a button. However, the user probably won’t understand why the button is disabled and won’t know how to fix the errors. That’s a big cognitive effort for such a simple task. Whenever possible, <strong>avoid disabled buttons</strong>. Let people click buttons at any time and show them the error message with instructions. In the last instance, if you really need a disabled button, consider making it an <a href="https://css-tricks.com/making-disabled-buttons-more-inclusive/">inclusive disabled button</a>, where anyone can understand and interact with it.</p>

<h3 id="good-ux-is-adaptable">Good UX Is Adaptable</h3>

<p>Most physical buildings in the world have at least two ways to navigate them: stairs and lifts. Each one has its unique UX with pros and cons suited for different needs. On the web, don’t fall into the trap of forcing the same pattern on all kinds of users and preferences.</p>

<p>Whenever you find an A11Y issue in a given pattern, try to improve it, but also consider looking for an alternative pattern that can be used simultaneously or toggled.</p>

<p>Remember, every person deserves a good experience, but not every experience is good for everyone.</p>

<div class="partners__lead-place"></div>

<h2 id="wrapping-up">Wrapping Up</h2>

<p>Field validations are one of those web concepts without dedicated HTML elements that suit modern web patterns, so we need ARIA to fill in the gaps. In short, this article covered the most common attributes for field validations that make a difference for many people in their web journey:</p>

<ul>
<li><code>aria-required</code>: To mark a field as required.</li>
<li><code>aria-invalid</code>: To mark the field as invalid.</li>
<li><code>aria-describedby</code>: To connect the description and error message to the input.</li>
<li><code>aria-live</code>: To announce dynamic error messages.</li>
</ul>

<p>Accessibility is about people, not about ARIA. Besides those attributes, remember to review your colors, icons, field instructions, and, equally important, the validations themselves. Your duty as a web creator is to ensure everyone can enjoy the web, even when a form fails to submit.</p>

<p>Last but not least, I’d like to appreciate the technical review from <a href="https://benmyers.dev/">Ben Mayers</a>, <a href="https://kittygiraudel.com/">Kitty Giraudel</a>, and <a href="https://www.matuzo.at/">Manuel Matuzović</a>. Because sharing is what makes us better. &lt;3</p>

<h3 id="wcag-references">WCAG References</h3>

<p>All the practices we explored in this article are covered by WCAG guideline “3.3 Input Assistance”:</p>

<ul>
<li><a href="https://www.w3.org/TR/WCAG21/#error-identification">3.3.1 Error Identification</a></li>
<li><a href="https://www.w3.org/TR/WCAG21/#labels-or-instructions">3.3.2 Labels or Instructions</a></li>
<li><a href="https://www.w3.org/TR/WCAG21/#error-suggestion">3.3.3 Error Suggestion</a></li>
<li><a href="https://www.w3.org/TR/WCAG21/#error-prevention-legal-financial-data">3.3.4 Error Prevention (Legal)</a></li>
<li><a href="https://www.w3.org/TR/WCAG21/#help">3.3.5 Help</a></li>
<li><a href="https://www.w3.org/TR/WCAG21/#error-prevention-all">3.3.6 Error Prevention</a></li>
</ul>

<p>The more I learn about web accessibility, the more I realize accessibility goes beyond complying with web standards. Remember, the WCAG are ‘guidelines’ and not ‘rules’ for a reason. They are there to support you, but if you suspect a guideline doesn’t make sense based on your diverse user research, don’t be afraid to question it and think outside the box. Write about it, and ultimately guidelines will evolve too.</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(vf, il, yk)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Thomas Bohm</author><title>Useful Accessibility And Usability Examples To Help Improve Your Designs</title><link>https://www.smashingmagazine.com/2022/12/useful-accessibility-usability-examples-help-improve-your-designs/</link><pubDate>Tue, 20 Dec 2022 12:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2022/12/useful-accessibility-usability-examples-help-improve-your-designs/</guid><description>In this article, Thomas Bohm shares strategies and methods to tackle some common graphic communication problems and gives you insights into how to improve accessibility and usability and make your designs much better.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2022/12/useful-accessibility-usability-examples-help-improve-your-designs/" />
              <title>Useful Accessibility And Usability Examples To Help Improve Your Designs</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Useful Accessibility And Usability Examples To Help Improve Your Designs</h1>
                  
                    
                    <address>Thomas Bohm</address>
                  
                  <time datetime="2022-12-20T12:00:00&#43;00:00" class="op-published">2022-12-20T12:00:00+00:00</time>
                  <time datetime="2022-12-20T12:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                <p>This article is sponsored by <b>Extensis</b></p>
                

<p>This article is ideal for your lunch break. It highlights seven quite straightforward (dare I even say simple) graphic communication problems. I then expand on them, showing the problem, remedy, and what can be learned. It will give you an insight into accessibility, also the easily looked-over area of access structures, and usability showing that they are a major factor in so many things, like design, communication, technology, objects, and systems. But we are not done there &mdash; I will also help you think about some new ways to make your designs much better and help you consider some aspects that you have never even considered before on your current projects, right now, today.</p>

<h2 id="adding-a-basic-scroll-bar-to-a-user-interface-menu-makes-items-easier-to-find-and-use">Adding A Basic Scroll Bar To A User Interface Menu Makes Items Easier To Find And Use</h2>

<p>If we look at the menu by clicking on the <em>Fonts</em> drop-down menu in Microsoft Word Mac version 16 or any version of Microsoft Word, we can see that everything looks normal:</p>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/76aee7fa-828f-4a81-84f2-446c005e57e0/scroll-v1-large.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="637"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/76aee7fa-828f-4a81-84f2-446c005e57e0/scroll-v1-large.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/76aee7fa-828f-4a81-84f2-446c005e57e0/scroll-v1-large.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/76aee7fa-828f-4a81-84f2-446c005e57e0/scroll-v1-large.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/76aee7fa-828f-4a81-84f2-446c005e57e0/scroll-v1-large.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/76aee7fa-828f-4a81-84f2-446c005e57e0/scroll-v1-large.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/76aee7fa-828f-4a81-84f2-446c005e57e0/scroll-v1-large.png"
			
			sizes="100vw"
			alt="Fonts drop-down menu in Microsoft Word Mac version 16"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/76aee7fa-828f-4a81-84f2-446c005e57e0/scroll-v1-large.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>There is a list of fonts installed on the computer in alphabetical order. However, when we go to perform a task using the menu, like going to the font Verdana at the end of the list, we have to move our mouse all the way down to the bottom of the menu list, then hover over the <em>down arrow</em>, then wait 3 or 4 seconds, or more, until it gets to the bottom of the menu, near <em>V</em>, before we can select Verdana. Yes, we could also type the font name at the top, but maybe you are not sure what font you want to use or what it is called.</p>

<h3 id="problem">Problem</h3>

<p>It takes many seconds to get to a font that is below B or at the end of the list; the current solution does not allow quick access. Furthermore, if you make a mistake, or your mouse goes off the menu, or if you are not able to control the mouse cursor that well, it will cause the menu to close, and then you have to start this interaction all over again, because if the mouse goes off or clicks out of the menu, it closes it. These issues are certainly not ideal for most of us who are busy and who want to get things done quickly and efficiently, like designers.</p>

<p>The problem of not having a scroll bar is often experienced in website vertical or side-navigation menus (sidenavs). The side-navigation menus might not even need to have a scroll bar, as the content inside the menu is not larger than the vertical screen height. However, if the website or smartphone browser is made a lot shorter vertically in height, there is often no scroll bar shown. So, you cannot scroll to the end of the side navigation’s content within the menu, and you might not even know to try to scroll more vertically, as no scroll bar is shown. Not ideal or great, hey?</p>

<h3 id="solution">Solution</h3>

<p>One of the things that would be really easy to do, and is found a lot in software user interfaces and websites, is to add a simple scroll bar to the right of the font menu. How difficult is that to do? Not very. This would allow users to scroll more quickly to the font they want, reducing the time to find and select a font in the menu by at least half (50%). Why do they not do this? I am not really sure.</p>

<h3 id="what-can-we-learn">What Can We Learn?</h3>

<p>If the software developers and user interface designers used a scroll bar to the right of the font menu, it would allow users to find any font much quicker, increase workflow productivity, reduce stress, confusion, and enable a much quicker and better interaction. Audit, test users, and find out what people want to do, or else you cannot be sure you have effectively designed the thing. Maybe you are not even aware of the ways users want to use your design, communication, object, or system. That is why it is so important to understand the following:</p>

<ul>
<li>What people will want to do with your thing;</li>
<li>Different people will want to use your design, information, and communication in different ways;</li>
<li>Different people will want to achieve different things.</li>
</ul>

<h2 id="better-font-software-faster-easier-and-better-results">Better Font Software = Faster, Easier, And Better Results</h2>

<p>As another example, if we compare font organizing software like Font Book on a Mac or the Fonts option in Control Panel on Windows. Yes, we have these two types of software, but do you actually use them to install fonts, or do you install them manually by copying the font files into the Fonts folders? Do you use them to view, compare, and get information about fonts? Can you use this software to manage, organize, and share fonts for your design team? Probably not, as they lack the features.</p>

<p>Well, the creative folks at <a href="https://www.extensis.com/?utm_source=smashingmag&amp;utm_medium=aff&amp;utm_campaign=review">Extensis</a> have created just what you need: <strong>Connect Fonts</strong>. It is clearly better than Font Book on a Mac or the Fonts option in Control Panel on Windows for a number of reasons:</p>

<ul>
<li>It has a better display of a font’s glyphs;</li>
<li>It shows the name of the glyph, Unicode value, and Glyph ID;</li>
<li>It has a better grid display, QuickType, Waterfall, ABC 123, and punctuation (many of these options are not available in Font Book);</li>
<li>Connect Fonts is a more advanced and technology-advanced software than Font Book on a Mac, or the Fonts option in Control Panel on Windows.</li>
</ul>














<figure class="
  
  
  ">
  
    <a href="https://www.extensis.com/?utm_source=smashingmag&amp;utm_medium=aff&amp;utm_campaign=review">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="587"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/54717f51-64b8-483f-8241-84728d22a81e/5-connecting-fonts-extensis.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/54717f51-64b8-483f-8241-84728d22a81e/5-connecting-fonts-extensis.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/54717f51-64b8-483f-8241-84728d22a81e/5-connecting-fonts-extensis.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/54717f51-64b8-483f-8241-84728d22a81e/5-connecting-fonts-extensis.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/54717f51-64b8-483f-8241-84728d22a81e/5-connecting-fonts-extensis.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/54717f51-64b8-483f-8241-84728d22a81e/5-connecting-fonts-extensis.jpg"
			
			sizes="100vw"
			alt="Design of the Connect Fonts software"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/54717f51-64b8-483f-8241-84728d22a81e/5-connecting-fonts-extensis.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Here are additional features not offered by Font Book on a Mac or the Fonts option in Control Panel on Windows:</p>

<ul>
<li>Use a font vault that is a single, secure, managed repository for all your fonts;</li>
<li>Sort options for all fonts (Name, Postscript Name, Type, Foundry, Class, Family, Version, Font Sense, Classification, Activation, Favourites, Date Added, Location);</li>
<li>Add Google Fonts;</li>
<li>Manage Adobe Creative Cloud fonts;</li>
<li>Zoom in and out;</li>
<li>All glyph panels and search;</li>
<li>Glyph information (Name, Unicode, Glyph ID, Keystrokes);</li>
<li>View categories of glyphs (Entire Font (123 Glyphs), Alphabetic Presentation Forms, Basic Latin, Combining Diacritical Marks, Currency Symbols, Cyrillic, General Punctuation, Geometric Shapes, Greek and Coptic, Latin Extended Additional, Latin Extended-A, Latin Extended-B, Latin-1 Supplement, Letterlike Symbols, Mathematical Operators, Number Forms, Spacing Modifier Letters, Superscripts and Subscripts);</li>
<li>Desktop and online in browser versions, both connected;</li>
<li>Cloud libraries and synchronize fonts;</li>
<li>Setup team libraries across desktop and online versions;</li>
<li>Share any digital files and documents;</li>
<li>Font analytics and reports;</li>
<li>Full admin account settings;</li>
<li>Very useful for large organizations to control fonts available for use and to manage permissions and rights;</li>
<li>Add tags.</li>
</ul>

<p>Also:</p>

<ul>
<li>Works with Adobe Creative Cloud, Sketch, Affinity Designer/Photo/Publisher;</li>
<li>View and preview fonts (Tile, QuickType, Waterfall and customized Waterfall, ABC 123, and punctuation).</li>
</ul>

<h2 id="use-access-structures-to-excel-your-communication-success">Use ‘Access Structures’ To Excel Your Communication Success</h2>

<p>An annual review gives interested people information about the business, charity, or organization, promotes what they do, and showcases what they have done in the last year to shareholders and other interested people. We designed an annual review (a printed publication showcasing a charity’s achievements, news, and financial activities for the year) more than ten years ago.</p>

<h3 id="problem-1">Problem</h3>

<p>One of the standout issues that we soon realized from reading, laying out, and designing the annual review, was that there were many mentions of different towns within a country, mentioned throughout the text in the annual review, that the charity supports and works with. However, there was no easy or obvious way to know where they were or how to envisage where they were.</p>

<h3 id="solution-1">Solution</h3>

<p>What was missing that the client had not done or envisaged in the past? A map on the inside back flap of the publication showing where the different towns were within the main country. It is not rocket science &mdash; maybe even just good old common sense.</p>














<figure class="
  
  
  ">
  
    <a href="https://www.extensis.com/?utm_source=smashingmag&amp;utm_medium=aff&amp;utm_campaign=review">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="645"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/608e1f89-b9df-45bc-984b-2652ce170d48/7-connecting-fonts-extensis.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/608e1f89-b9df-45bc-984b-2652ce170d48/7-connecting-fonts-extensis.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/608e1f89-b9df-45bc-984b-2652ce170d48/7-connecting-fonts-extensis.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/608e1f89-b9df-45bc-984b-2652ce170d48/7-connecting-fonts-extensis.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/608e1f89-b9df-45bc-984b-2652ce170d48/7-connecting-fonts-extensis.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/608e1f89-b9df-45bc-984b-2652ce170d48/7-connecting-fonts-extensis.png"
			
			sizes="100vw"
			alt="A map of Latin America"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/608e1f89-b9df-45bc-984b-2652ce170d48/7-connecting-fonts-extensis.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="what-can-we-learn-1">What Can We Learn?</h3>

<p>Can you see what we are doing? We tried to envisage and dig out what people will want to do with the thing and see if there is anything we can do to make the communication better, more accessible, and usable, and to better describe and help people to use the annual review. The annual review could have been an electronic PDF or HTML &mdash; the same problems exist whatever media. But would you have envisaged or thought about adding a map that the client never even thought about or even asked for? Sometimes, designers have to go the extra mile and push the boat out for their clients in need.</p>

<p>This issue of making information easier to understand and consciously helping people to understand and use it by adding clever features, in this case, a map, has to do with the area of <em>accessibility</em>. It could easily be considered <em>usability</em> because it makes the information and publication more usable; however, it is more about the area of accessibility. Being even more precise and specific, it has to do with things called <strong>access structures</strong>, as highlighted in <a href="https://link.springer.com/chapter/10.1007/978-1-4684-0994-9_11">1979</a> by information designer and educator <a href="https://www.robwaller.org">Robert Waller</a> who runs the <a href="https://www.simplificationcentre.org.uk/">Simplification Centre</a> and who has been the Professor of Information Design between 2007–2011 at the well-known <a href="https://www.reading.ac.uk/typography/">Department of Typography &amp; Graphic Communication at the University of Reading</a> in the United Kingdom, just outside London. In the <a href="https://changelog.com/jsparty/36">JS Party (Episode #36)</a> podcast Suz Hinton, Safia Abdalla and Kevin Ball have also highlighted that there is more to accessibility than a disability people may have, and what devices they may use to help them.</p>

<p><em>Access structures</em> are not commonly talked about in the now huge and popular <em>world of accessibility</em>. Yes, we talk of people, their physical issues (vision impairment, aging, dyslexia, physical disabilities, and so on), or what supportive devices they may use to make things easier (magnifying glass, screenreader, vision impairment stick, and so on), or even what legal issues and implications there might be because of bad accessibility. But we rarely talk about adding elements like <em>access structures</em> to help people with their content comprehension, processing and reading style strategies, such as:</p>

<ul>
<li>Browse;</li>
<li>Skim/preview;</li>
<li>Search/scan;</li>
<li>Intense study;</li>
<li>Review.</li>
</ul>

<p>And to just expand a bit more (if I may?), maybe you have used the audio hosting website <a href="https://soundcloud.com">SoundCloud</a>. Among many of its great features, it has a search option just the same as any other search option, a horizontal box, then a search button (so nothing unusual or out of the ordinary here yet). It allows users to search through the whole website and content rather than having to go through and read millions of web pages (well, you knew that anyway). Expanding a bit more, when you search, it of course, returns the search results in a vertical list, just like a search on Google, Microsoft, and Twitter. However, on the left of the search results webpage are some really interesting and very useful search refinement options, as follows:</p>

<ul>
<li><strong>Everything</strong><br />
The user’s search term searches through everything and the below.</li>
<li><strong>SoundCloud Go+ tracks</strong><br />
If selected, will only search through this offline and ad-free listening service from Soundcloud. There are then two further sub-search filter options:

<ul>
<li>Added any time,</li>
<li>Any length.</li>
</ul></li>
<li><strong>Tracks</strong><br />
Apply user’s search to just audio content. There are then three further sub-search filter options:

<ul>
<li>Added any time,</li>
<li>Any length,</li>
<li>To listen to.</li>
</ul></li>
<li><strong>People</strong><br />
Apply user’s search to just people, for example, user/profile account names. There are then nine further sub-search filter options that somehow seem to know the countries associated with your search:

<ul>
<li>Location. (9 country names associated with your search.)</li>
</ul></li>
<li><strong>Albums</strong><br />
Apply user’s search to albums, for example, collected tracks within a grouped album option. They are then filtered by tag options:

<ul>
<li>Electronic,</li>
<li>Techno,</li>
<li>Hip-Hop &amp; Rap,</li>
<li>Drum &amp; Bass,</li>
<li>House,</li>
<li>Ambient,</li>
<li>Electronica,</li>
<li>Dance &amp; EDM,</li>
<li>Deep House.<br /></li>
</ul></li>
<li><strong>Playlists</strong><br />
Apply user’s search to user-curated playlists collection, once again with the previous filter by tag options:

<ul>
<li>Same as previous.</li>
</ul></li>
</ul>

<p>So, you might think, well, this is all fairly standard and default stuff. However, not only is a user able to search for something; they are then given many very handy and useful <strong>sub-access structures</strong> that are very helpful in allowing them to further refine and edit their search term. I cannot stress how useful and important this is. This is basically the definition and whole bowls of what design, accessibility, usability, information, and communication are together.</p>

<p>Think about it. What would you do, and what would the result be if you could only perform a search, i.e. just search for something and then had no further refinement options? Users would not able to further refine what they are trying to do and achieve.</p>

<h2 id="providing-an-electronic-business-card-increases-the-chance-of-being-contacted-and-getting-new-business">Providing An Electronic Business Card Increases The Chance Of Being Contacted And Getting New Business</h2>

<p>I run a graphic communication design and text editing business in the United Kingdom called <a href="https://www.userdesignillustrationandtypesetting.com/">User Design, Illustration, and Typesetting</a>, working for book publishers and also other types of organizations. We also do information design, user testing, website design, and research. We contact quite a lot of art, design, and production managers at U.K. book publishers, and one of the things we realized about seven years ago, is that they get a lot of emails every day from people offering the same services and making the same inquiry as us.</p>

<h3 id="problem-2">Problem</h3>

<p>We realized that we need to increase the chance and any chance of our business’s details being <em>used</em> and <em>spread</em>, at and within their organization, and by whatever communication method they use, typically a computer, from staff-to-staff or colleague-to-colleague, to ultimately increase the chance of them contacting us (this is the goal anyway while the reality is another matter, but keep reading).</p>

<h3 id="solution-2">Solution</h3>

<p>What we did, and it is really simple and easy to do (but we hardly ever see anyone do it), we made a link available to a digital business card in PDF, PNG, RTF, and vCard formats, on our <em>homepage</em> and <em>contact us</em> webpages. Do you provide a business card on your website, portfolio, or client’s website? Probably not. It is these types of things we need to try and realize and find out as designers because it improves the chances of communication success, and the ultimate end objective that was <em>to get people to make an inquiry and contact us</em> (an action).</p>

<h3 id="what-can-we-learn-2">What Can We Learn?</h3>

<p>By making our main contact details more easily available and reusable, and in different electronic formats, it makes it quicker and easier to share and exchange our details, and also in different types of software (remember, not all of us like to use the same software program or system) thus leading to more chance of people in organizations contacting us (well, I have already said that three times). Would you have thought of this? How can you apply this to the project you are currently working on? Furthermore, the next important question is how can you <em>measure</em> if it is working and having an impact, or indeed if it is not? It is very important in design and communication to actually know the following:</p>

<ul>
<li>What is working and what is not;</li>
<li>What areas could be optimized and what areas could be better;</li>
<li>Or what areas are not working well and are underperforming.</li>
</ul>

<blockquote class="pull-quote">
  <p>
    <a class="pull-quote__link" aria-label="Share on Twitter" href="https://twitter.com/share?text=%0aBasing%20design%20success%20measurements%20on%20what%20people%20think%20or%20feel%20is%20highly%20subjective,%20and%20soooooooooo%20last%20century.%0a&url=https://smashingmagazine.com%2f2022%2f12%2fuseful-accessibility-usability-examples-help-improve-your-designs%2f">
      
Basing design success measurements on what people think or feel is highly subjective, and soooooooooo last century.

    </a>
  </p>
  <div class="pull-quote__quotation">
    <div class="pull-quote__bg">
      <span class="pull-quote__symbol">“</span></div>
  </div>
</blockquote>

<h2 id="the-fastest-internet-speed-in-2022-is-still-4-kbps">The Fastest Internet Speed In 2022 Is Still 4 kbps</h2>

<p>Current times in 2022 are challenging throughout the world (there is no denying that). Over the last few years, we have noticed the truly awful impact, performance, and results of websites for users, because of lazy loading images, infinite scroll, and content shifting on page load to save on internet data bandwidth usage &mdash; both on the user’s end and server-side (that delivers the website).</p>

<h3 id="problem-3">Problem</h3>

<p>In essence, lazy loading means that an image or content will not be loaded until it becomes available or requested by the user in the visible screen area. Because of this lazy (late) loading, users frequently have to wait a few seconds for content to load, even with today’s amazing technology.</p>

<p>Infinite scroll is essentially the same principle as lazy load images, but the non-visible vertical webpage content not in the screen’s visible screen area, is not loaded until you scroll down. Lazy load can also be used with painful pagination features (like go to page 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 as seen on large e-commerce websites and as Vitaly Friedman has outlined in his article, “<a href="https://www.smashingmagazine.com/2022/03/designing-better-infinite-scroll/">Perfect Infinite Scroll UX</a>”).</p>

<p>Content shifting on page load basically refers to a mixture of lazy loading content (text, images, and webpage layout) being delayed and loaded late, causing the content, when it does load, to load late, shifting the vertical and horizontal height of the web page’s content, cause elements and call-to-action buttons to shift and move around, as also highlighted by <a href="https://www.smashingmagazine.com/2016/08/ways-to-reduce-content-shifting-on-page-load/">Michael Scharnagl</a> on Smashing Magazine. This issue is especially problematic if you are trying to work quickly on a slowish or sluggish machine or device. However, not even a fast machine seems to make a difference regarding this issue.</p>














<figure class="
  
  
  ">
  
    <a href="https://www.extensis.com/?utm_source=smashingmag&amp;utm_medium=aff&amp;utm_campaign=review">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="450"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/83dcca80-24b2-4936-968e-d52bdf9bd83c/6-connecting-fonts-extensis.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/83dcca80-24b2-4936-968e-d52bdf9bd83c/6-connecting-fonts-extensis.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/83dcca80-24b2-4936-968e-d52bdf9bd83c/6-connecting-fonts-extensis.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/83dcca80-24b2-4936-968e-d52bdf9bd83c/6-connecting-fonts-extensis.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/83dcca80-24b2-4936-968e-d52bdf9bd83c/6-connecting-fonts-extensis.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/83dcca80-24b2-4936-968e-d52bdf9bd83c/6-connecting-fonts-extensis.png"
			
			sizes="100vw"
			alt="Visualization of an open window in a browser with the text &#39;loading.. be ready in 4 seconds&#39;"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/83dcca80-24b2-4936-968e-d52bdf9bd83c/6-connecting-fonts-extensis.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>All of these three issues create really bad user interactions, especially with longer-length web pages, although they are promoted and regarded as good webpage performance techniques.</p>

<h3 id="solution-3">Solution</h3>

<p><strong>Give people the content when it should be there and when they need it, as fast as you can</strong>. I understand that for very long webpages, some off-visible screen lazy loading and infinite scroll could be beneficial to save on unnecessary loading of content. But for everything else, just give it to users as fast as possible experience. We have incredible technology these days, and let’s not over-design and overthink.</p>

<h3 id="what-can-we-learn-3">What Can We Learn?</h3>

<p>It could be said that when using lazy loading or infinite scroll in 2022, we are still dialing up with 4 kbps modems just like we did back in the year 2000. The amount of times and the delivery of information and images is the same: very, very slow. Nothing has changed. We are still looking at blank or block-colored images waiting for them to load&hellip; while 20 years of the internet have passed. The average speed of a computer and mobile internet in 2022 is <a href="https://www.statista.com/statistics/896779/average-mobile-fixed-broadband-download-upload-speeds/">30.78 mbps</a>, and we are still getting the same performance as in the year 2000 &mdash; as if on 4 kbps modems. User experience is what matters, not technical wizardry.</p>

<h2 id="total-overload-of-user-s-first-website-interaction">Total Overload Of User’s First Website Interaction</h2>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/26cc8a8a-b496-4c52-8634-7f2406ad21e1/20-useful-accessibility-usability-examples-help-improve-your-designs.jpg">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="456"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/26cc8a8a-b496-4c52-8634-7f2406ad21e1/20-useful-accessibility-usability-examples-help-improve-your-designs.jpg 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/26cc8a8a-b496-4c52-8634-7f2406ad21e1/20-useful-accessibility-usability-examples-help-improve-your-designs.jpg 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/26cc8a8a-b496-4c52-8634-7f2406ad21e1/20-useful-accessibility-usability-examples-help-improve-your-designs.jpg 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/26cc8a8a-b496-4c52-8634-7f2406ad21e1/20-useful-accessibility-usability-examples-help-improve-your-designs.jpg 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/26cc8a8a-b496-4c52-8634-7f2406ad21e1/20-useful-accessibility-usability-examples-help-improve-your-designs.jpg 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/26cc8a8a-b496-4c52-8634-7f2406ad21e1/20-useful-accessibility-usability-examples-help-improve-your-designs.jpg"
			
			sizes="100vw"
			alt="Visualization of an open page in a browser with many different notification boxes"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/26cc8a8a-b496-4c52-8634-7f2406ad21e1/20-useful-accessibility-usability-examples-help-improve-your-designs.jpg'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="problem-4">Problem</h3>

<p>Another example of bad usability is webpages that have very demanding <em>first-visit user requirements</em>. I am sure you all experience and struggle with the following on a daily basis (maybe you are even doing it now, arghhhh go away cookie policy box? Yes, no?):</p>

<ol>
<li>Cookie policy “accept/deny warning box” pops up when you 1st visit a webpage that distracts and blocks natural use.</li>
<li>Email newsletter box pops up asking if you want to subscribe. That is another thing you have to do, even before you have started to use and read the webpage!</li>
<li>A “do you want to receive update/news notifications” box appears.</li>
<li>“Do you want to allow or block access to your physical location” box appears.</li>
<li>Another box appears asking if you want to save 50% if you order in the next three days.</li>
<li>A chat box appears asking if you want to chat with someone [well, maybe, but not at the moment].</li>
<li>Then, finally, a “do you want to save your password” box appears.</li>
</ol>

<h3 id="solution-4">Solution</h3>

<p>Do not overcomplicate the 1st interaction with your thing. It is a bit like comparing it to bumping into someone when you are in a hurry and have to go, and all they keep doing is talking to you and telling you their life story. If people find their 1st interaction with you displeasing, they will turn away. If you have to provide options like cookie warning boxes, email newsletter subscribe boxes, and other notifications, leave them optional or in a place that everyone knows they can visit, like a universal <em>options</em> link or button in the top right of a webpage, where they can customize and setup these things, as they like.</p>

<h3 id="what-can-we-learn-4">What Can We Learn?</h3>

<p>All of this creates a hard-to-use and over-demanding graphic communication. That distracts, over-complicates, and creates extra barriers to information that are very costly for your business or organization because it increases the chance of your users leaving and rejecting your item. Say goodbye to your users and customers in less than 3 seconds. It gives your brand a bad feeling and experience, and maybe they decide not to order something through your website. These are the everyday realities of bad usability because of your over-demanding and difficult-to-use design, information, and communication. It is not difficult:</p>

<ul>
<li>Think about how people will want to use your design.</li>
<li>Make it as easy and least demanding as possible.</li>
<li>Test with them in real time.</li>
</ul>

<h2 id="clothing-measurement-sizes-on-fashion-e-commerce">Clothing Measurement Sizes On Fashion E-commerce</h2>

<p>The next example has to do with measurements such as millimeters (mm), centimeters (cm), and inches (in). It doesn’t bring that much confusion with it, but surprisingly, it can still cause quite a lot of confusion and problems worldwide.</p>

<h3 id="problem-5">Problem</h3>

<p>Measurements such as millimeters (mm), centimeters (cm) and inches (in) may not seem that interesting, but if you were to try to order a polo t-shirt online, you’ll notice that it may take you longer to do than expected. By measuring the width between your armpits across your breast area to get your bust (chest) circumference, and you may have measured 60 cm on the front, and you have to multiply this number by 2 for the whole circumference of 60 cm (front) &times; 2 (front and back) to get a result of 120 cm.</p>

<p>Let’s say you finally find a polo t-shirt that you really like on a French clothing e-commerce website. You choose the color of the polo t-shirt you like and search for your size (we know that it is 120 cm, this sounds like we’re back in a Maths class, bear with me), but the only available sizes from that French clothing company are the following:</p>

<ul>
<li>2 – XS</li>
<li>3 – S</li>
<li>4 – M</li>
<li>5 – L</li>
<li>6 – XL</li>
<li>7 – XXL</li>
<li>8 – 3XL</li>
<li>9 – 4XL</li>
<li>10 – 5XL</li>
<li>11 – 6XL</li>
</ul>

<p>The above measurements are a bit helpful but certainly not accurate. They are not accurate because there is still no measurement information in millimeters, centimeters, or inches. However, below the information above is a link titled <em>Size guide</em>. Okay, let&rsquo;s give that a go and see what it does. A slide-in panel appears, and there is a drop-down list with the following information:</p>

<ul>
<li>2 – XS = (bust circumference: 87 cm/34 in, pant waist circumference: 73 cm/28 inch).</li>
<li>3 – S = (bust circumference: 90–93 cm/35–37 in, pant waist circumference: 77–81 cm/30–31 in).</li>
<li>4 – M = (bust circumference: 97–101 cm/38–40 in, pant waist circumference: 85–89 cm/33–35 in).</li>
<li>5 – L = (bust circumference: 105–109 cm/41–43 in, pant waist circumference: 93–97 cm/36–38 in).</li>
<li>6 – XL = (bust circumference: 113–117 cm/44–46 in, pant waist circumference: 101–106 cm/39–42 in).</li>
<li>7 – XXL = (bust circumference: 121–125 cm/48–49 in, pant waist circumference: 111–116 cm/44–46 in).</li>
<li>8 – 3XL = (bust circumference: 129 cm/51 in, pant waist circumference: 121 cm/48 in).</li>
<li>9 – 4XL = (bust circumference: 134 cm/53 in, pant waist circumference: 126 cm/50 in).</li>
<li>10 – 5XL = that now, strangely, in the <em>Size guide</em> slide-in panel seems to say 1XG = (bust circumference: 139 cm/55 in, pant waist circumference: 131 cm/52 in).</li>
<li>11 – 6XL = that now, strangely, in the <em>Size guide</em> slide-in panel seems to say 2XG = (bust circumference: 144 cm/57 in, pant waist circumference: 136 cm/54 in).</li>
</ul>

<p>Are you starting to get a headache? I told you, keep reading and we will find the remedy!</p>

<p>Our bust (chest) circumference, as we know, is 120 cm, so it seems by the information in the above <em>Size guide</em> panel, that this size (entry):</p>

<ul>
<li>7 – XXL = (bust circumference: 121–125 cm / 48–49 in, pant waist circumference: 111–116 cm/44–46 in).</li>
</ul>

<p>It is going to be a really good and safe size (because it is slightly larger than 120 cm by 1–4 cm). So it seems that there is no problem here, and in fact, the website has given good and flexible information because measurement sizes have been provided in three different measurements: <code>cm</code>, <code>mm</code> (can be worked out quite easily), and <code>in</code>.</p>

<p>Another related question is whether all clothing websites display their polo t-shirts measurement like the French clothing company above. Well, no. Here is an example from a British clothing company, and we are going to use our pre-measured bust (chest) circumference, which we know is 120 cm once again, to order a different polo t-shirt from the British clothing company. So I have selected a polo t-shirt from the British clothing company’s e-commerce website, and the sizes that it gives are:</p>

<ul>
<li>36</li>
<li>38</li>
<li>40</li>
<li>42</li>
<li>44</li>
<li>46</li>
</ul>

<p>If we look at the drop-down list information from the French clothing company, we really cannot see anything that says 36, 38, 40, 42, 44, 46. However, once again, there is a <em>View guide</em> link on this British clothing website, so we click that, and see what happens (as it might be able to give us some more information).</p>

<p>Two options are available:</p>

<ul>
<li>Top half (bust, chest),</li>
<li>Bottom half (waist).</li>
</ul>

<p>We want the <em>Top half (bust, chest)</em> option because we measured the distance from armpit-to-armpit, then multiplied by 2 to give our total circumference in cm, as previously. The tables say:</p>

<p><strong>Top half (bust, chest)</strong></p>

<table class="tablesaw break-out">
    <thead>
        <tr>
            <th></th>
            <th>36</th>
      <th>38</th>
      <th>40</th>
      <th>42</th>
      <th>44</th>
      <th>46</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Chest (inches)</td>
            <td>36</td>
      <td>38</td>
      <td>40</td>
      <td>42</td>
      <td>44</td>
      <td>46</td>
        </tr>
        <tr>
            <td>Chest (cm)</td>
            <td>92</td>
      <td>97</td>
      <td>102</td>
      <td>107</td>
      <td>112</td>
      <td>117</td>
        </tr>
    </tbody>
</table>

<table class="tablesaw break-out">
    <thead>
        <tr>
            <th></th>
      <th>XS</th>
      <th>S</th>
      <th>M</th>
      <th>L</th>
      <th>XL</th>
      <th>XXL</th>
      <th>XXXL</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Chest (inches)</td>
            <td>32&ndash;34</td>
      <td>35&ndash;37</td>
      <td>38&ndash;40</td>
      <td>41&ndash;43</td>
      <td>44&ndash;46</td>
      <td>47&ndash;49</td>
      <td>50&ndash;52</td>
        </tr>
        <tr>
            <td>Chest (cm)</td>
            <td>81&ndash;86</td>
      <td>89&ndash;94</td>
      <td>97&ndash;102</td>
      <td>104&ndash;109</td>
      <td>112&ndash;117</td>
      <td>119&ndash;124</td>
      <td>127&ndash;132</td>
        </tr>
    </tbody>
</table>

<p>We have to remember that the only available sizes in this polo t-shirt are 36, 38, 40, 42, 44, and 46. So it would seem 46 is the largest size they offer, and the circumference in cm of 46 (inches circumference) is 117 cm circumference. As you can see, 117 cm is not large enough. There is not enough flex (leeway) in this size because we know that our already measured armpit-to-armpit circumference in cm is 120 cm.</p>

<h3 id="solution-5">Solution</h3>

<p>The French clothing company provided a good range of measurements in 2 measurements, inches and cm. The British clothing company, however, provided two tables, and it would be more advisable to actually not offer users the second table because it is basically a whole range table for all their clothing and is not valid for the polo t-shirt we selected, where only 36, 38, 40, 42, 44, 46 were available (yes, it is confusing). If we really want to clarify even more, the initial sizes of 36, 38, 40, 42, 44, and 46 would maybe be better written like this:</p>

<ul>
<li>36 in (92 cm), 38 in (97 cm), 40 in (102 cm), 42 in (107 cm), 44 in (112 cm), 46 in (117 cm).</li>
</ul>

<p>Then there is much less misunderstanding, and users can relate the values better to their information and size.</p>

<h3 id="what-can-we-learn-5">What Can We Learn?</h3>

<p>Yes, we can learn a lot. The interesting points to note are that the French clothing company’s website offered fairly useful and practical information. The British clothing company initially gave us six measurements in inches (36, 38, 40, 42, 44, 46) that made no sense to us, but when we went to the <em>View guide</em> link, we were able to decode the two tables, although it really was not made <em>blatant</em> (obvious enough) that this range only goes up to 46 inches bust (chest) circumference. And in fact, there were two tables provided, and it could have been very easy to read the second table (one below) and see that there is a size of XXL (119&ndash;124). Since the table has been provided, it will be available in XXL (119&ndash;124), but, of course, it is not for the polo t-shirt we selected.</p>

<p>Only give information relevant to the product and task, and remove any information that is not applicable or useful, especially when dealing with measurements. Furthermore, and you are going to like this if you are a designer or working in sales, if we consider the <em>further-down-the-line</em> consequences, you could very easily, as people do:</p>

<ul>
<li>Make an order thinking the size will be alright when really it is not (we have all done this, hey).</li>
<li>Type in all your details.</li>
<li>Pay for it.</li>
<li>Wait for it to be delivered (maybe missing a day of work, or picking it up from somewhere else, as no one was in where you live).</li>
<li>Try it on, and it does not fit.</li>
<li>Get packaging to return it to them undamaged.</li>
<li>Complete another refund/return form.</li>
<li>Do more paperwork.</li>
<li>Send it back to them (maybe missing a day of work, so someone can pick it up from where you live or travel to a post/courier office).</li>
<li>Check your bank account over the next 30 days to see if you have been refunded.</li>
<li>Oh, I forgot, what about writing the postal address that the return needs to go to? Do you write it on the front in a pen, print out an A4 page, then sellotape it on, or do you do something else?</li>
</ul>

<p>As you can see, user errors and mistakes are very time-consuming for the users themselves, and even more costly for the supplier of the product who has to process the return, i.e. giving them masses of more work to do. Good design makes a lot of sense for all involved.</p>

<h2 id="concluding-observations-what-did-we-learn-from-all-of-the-examples">Concluding Observations, What Did We Learn From All Of The Examples?</h2>

<p>The results of getting good at the accessibility and usability issues previously mentioned are:</p>

<ul>
<li>Be a better designer;</li>
<li>Designs will work better for people;</li>
<li>Enable people to achieve what they want to with your design and information;</li>
<li>Designs will increase business success;</li>
<li>Designs will reduce task interaction time and will allow users to achieve what they want to do faster;</li>
<li>Reduce stress, confusion, and unnecessary work;</li>
<li>Increase customer loyalty and quality perception of the brand.</li>
</ul>

<h3 id="what-we-have-explored-and-learned-in-this-article">What We Have Explored And Learned In This Article</h3>

<ul>
<li><strong>Microsoft Word Font Menu</strong><br />
Rather than accepting a design and what is there, we understood and found out how people will want to use the thing. We then looked at a very simple solution to make this as quick and efficient as possible. It leads to increased workflow speed, productivity, better actions, and a reduction in time, stress, and confusion.</li>
<li><strong>Font Software</strong><br />
We saw default operating software that lacked needed features.</li>
<li><strong>Map In An Annual Review</strong><br />
We found out, explored, and understood how people are going to use the thing, interface, content, or system. We then provided a very simple map that improves access to the content to allow easier and more chance of comprehending the information, and to increase the chance of people doing what we intend and enabling it to happen more easily.</li>
<li><strong>Electronic Business Card On Websites</strong><br />
We were able to increase the chances of people doing something (in our case, to contact us) by thinking about how we could make that easier to do by providing different electronic files to help people do this.</li>
<li><strong>Modern (considered) good practice web performance techniques</strong><br />
Current-day website design performance methods, like lazy load and infinite scroll, are rendering websites to load at 4 kbps speeds that we had around the year 2000, that is 22 years ago. This makes websites difficult to use and interferes with the user’s original intention and goal.</li>
<li><strong>Total Overload Of User’s First Interaction</strong><br />
We saw many websites requiring a user’s first interaction to deal with, sometimes, 13 option settings and sorting, before they even get a chance to engage and complete their original task. Showing a high amount of information overload and digital information pollution.</li>
<li><strong>Seemingly Straightforward And Assumed Easily Usable Information</strong><br />
When it comes to information, even seemingly very mundane and standard information (if it is not designed, communicated, and provided to users in a logical and easy way) creates masses of problems and work for all involved (as was the case in the online polo t-shirt ordering examples).</li>
</ul>

<h2 id="ways-to-come-up-with-new-accessibility-and-usability-ideas-for-your-current-project-right-now">Ways To Come Up With New Accessibility And Usability Ideas, For Your Current Project Right Now!</h2>

<blockquote>How can you simplify (I mean really reduce) the work, energy, and tasks for users to complete and get something done?</blockquote>

<ul>
<li>Reduce complexity and demands (for instance, by not bombarding them with options, notifications, and things to sort out, even before they have started their originally intended task).</li>
<li>Reduce steps, stages, and clicks.</li>
<li>Strengthen and reduce the complexity and unnecessary difficulty in design, communication, user interfaces, and systems.</li>
<li>Ask for feedback and try to get good-quality questionnaires.</li>
<li>Conduct real-time diagnostic user testing.</li>
</ul>

<blockquote>How would you make your design and information more obvious and easier to access, find, process and scan through for users?</blockquote>

<ul>
<li>Search options on a website (enabling people to search through all of your content)?</li>
<li>Sitemap or index (allow people to quickly find what they are looking for)?</li>
<li>Navigation menu for a website or contents page for a publication (allows people to get an overview of all of the website or system content).</li>
<li>Add a map, graph, or data visualization (to help people envisage and see the content in better and different ways)?</li>
<li>Make the content available as audio (either online or able to transfer to a portable physical device)?</li>
<li>Could you use heading hierarchy levels like heading 1, heading 2, or heading 3, bullet lists, boxes, or icons to split up, better chunk, and highlight information?</li>
<li>Do you provide your communication in a range of different medias like online, print, audio, video, braille, large print, and easy read (that will increase the chances of it being used and being used in different people’s most ideal format?).</li>
<li>What about a conclusion, summary, or recap after a lot of information to help reprocess and reinforce the main points from lengthy content?</li>
<li>What kind of navigational elements could you use or introduce to help users move and navigate around your system: running heads, breadcrumb navigation, go to the top link, scroll spy elements, where you are a feature, progress indicator, grid or list of thumbnails to give a whole overview?</li>
<li>How can you help and make users discover and enjoy more of your <em>hopefully useful content and information</em>?</li>
</ul>

<blockquote>How can you understand, envisage and get to know more about people and their requirements?</blockquote>

<ul>
<li>Find out, think, explore, ask and watch people using the thing.</li>
<li>Ask users and find out what they want to do with your thing.</li>
<li>How can you make it easier for them to do what they want and achieve what they want as quickly as possible?</li>
<li>Do user testing and set people tasks to do and see where they struggle and if they can do it within a reasonable amount of time.</li>
<li>Learn about different people’s needs, like people who are aging, dyslexic, with vision, physical or hearing issues.</li>
<li>Find out about different categories of people by reading about user personas.</li>
<li>Better sectioning or navigation features.</li>
</ul>

<blockquote>How can you provide the information people may want in different formats to allow better and easier use of your information?</blockquote>

<ul>
<li>Maybe: HTML, SMS, RTF, PDF, VCARD, TXT, XML?</li>
<li>How can you allow people to customize your website, interface, or system:

<ul>
<li>If people use your website or system a lot, maybe they would like to customize the colors, typeface, or layout to avoid boredom.</li>
<li>How could you deliver age-specific or more fitting and relevant content (text and images) to this category of users, or other age categories of users?</li>
<li>How could you allow people to customize your website so they can use it how they wish and use it in their most ideal presentation?</li>
</ul></li>
</ul>

<p>I hope you enjoyed the issues raised and how tools like <a href="https://www.extensis.com/?utm_source=smashingmag&amp;utm_medium=aff&amp;utm_campaign=review">Extensis</a> can help you and your team be more productive than what is offered by default operating system software. The article also shows some of the advanced strategies and methods (well, maybe not that advanced!) that we have been using here for the last 20 years. Accessibility and usability are not difficult. Get back to work…</p>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk, il)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item><item><author>Adrian Bece</author><title>Accessible Front-End Patterns For Responsive Tables (Part 1)</title><link>https://www.smashingmagazine.com/2022/12/accessible-front-end-patterns-responsive-tables-part1/</link><pubDate>Tue, 06 Dec 2022 12:00:00 +0000</pubDate><guid>https://www.smashingmagazine.com/2022/12/accessible-front-end-patterns-responsive-tables-part1/</guid><description>There is no universal solution for making every kind of table responsive and usable on smaller screens, so we have to rely on various patterns, which Adrian explains in this two-part series.</description><content:encoded><![CDATA[
          <html>
            <head>
              <meta charset="utf-8">
              <link rel="canonical" href="https://www.smashingmagazine.com/2022/12/accessible-front-end-patterns-responsive-tables-part1/" />
              <title>Accessible Front-End Patterns For Responsive Tables (Part 1)</title>
            </head>
            <body>
              <article>
                <header>
                  <h1>Accessible Front-End Patterns For Responsive Tables (Part 1)</h1>
                  
                    
                    <address>Adrian Bece</address>
                  
                  <time datetime="2022-12-06T12:00:00&#43;00:00" class="op-published">2022-12-06T12:00:00+00:00</time>
                  <time datetime="2022-12-06T12:00:00&#43;00:00" class="op-modified">2026-05-30T06:46:31+00:00</time>
                </header>
                
                

<p>Tables allow us to organize data into <strong>grid-like format of rows and columns</strong>. Scanning the table in one direction allows users to search and compare the data while scanning in the other direction lets users get all details for a single item by <strong>matching the data to their respective table header</strong> elements.</p>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/ee609bea-f7ca-4fc7-9f32-388109253cc9/1-accessible-front-end-patterns-responsive-tables-part1.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="589"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/ee609bea-f7ca-4fc7-9f32-388109253cc9/1-accessible-front-end-patterns-responsive-tables-part1.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/ee609bea-f7ca-4fc7-9f32-388109253cc9/1-accessible-front-end-patterns-responsive-tables-part1.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/ee609bea-f7ca-4fc7-9f32-388109253cc9/1-accessible-front-end-patterns-responsive-tables-part1.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/ee609bea-f7ca-4fc7-9f32-388109253cc9/1-accessible-front-end-patterns-responsive-tables-part1.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/ee609bea-f7ca-4fc7-9f32-388109253cc9/1-accessible-front-end-patterns-responsive-tables-part1.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/ee609bea-f7ca-4fc7-9f32-388109253cc9/1-accessible-front-end-patterns-responsive-tables-part1.png"
			
			sizes="100vw"
			alt="A screenshot of the table example from Discogs"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      A table example from <a href='https://www.discogs.com/'>Discogs</a>, which is used to compare various release versions of the record by country, year of release, catalog number, and so on. (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/ee609bea-f7ca-4fc7-9f32-388109253cc9/1-accessible-front-end-patterns-responsive-tables-part1.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Tables often rely on having <strong>enough screen space</strong> to communicate these data relations effectively. This makes designing and developing more complex responsive tables somewhat of a challenge. There is <strong>no universal, silver-bullet solution for making the tables responsive</strong> as we often see with other elements like accordions, dropdowns, modals, and so on. It all depends on the main purpose of the table and how it’s being used.</p>

<p>If we fail to consider these factors and use the wrong approach, we can potentially make usability worse for some users.</p>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8962abce-13f4-4020-8a3f-a38de20e01d6/2-accessible-front-end-patterns-responsive-tables-part1.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="619"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8962abce-13f4-4020-8a3f-a38de20e01d6/2-accessible-front-end-patterns-responsive-tables-part1.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8962abce-13f4-4020-8a3f-a38de20e01d6/2-accessible-front-end-patterns-responsive-tables-part1.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8962abce-13f4-4020-8a3f-a38de20e01d6/2-accessible-front-end-patterns-responsive-tables-part1.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8962abce-13f4-4020-8a3f-a38de20e01d6/2-accessible-front-end-patterns-responsive-tables-part1.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8962abce-13f4-4020-8a3f-a38de20e01d6/2-accessible-front-end-patterns-responsive-tables-part1.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8962abce-13f4-4020-8a3f-a38de20e01d6/2-accessible-front-end-patterns-responsive-tables-part1.png"
			
			sizes="100vw"
			alt="A screenshot of the table example from Discogs shown on a small screen"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      A previous example shown on a small screen. Without a table head element, the data is difficult to parse and compare. This table could be better implemented using a different approach. (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8962abce-13f4-4020-8a3f-a38de20e01d6/2-accessible-front-end-patterns-responsive-tables-part1.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>In this article, we’re going to be strictly focused on various ways we can make tables on the web responsive, depending on the data type and table use-case, so we’re not going to cover table search, filtering, and other similar functionalities.</p>

<p>If you are interested in improving user experience (UX) for tables and other UI elements beyond just responsiveness, make sure to check out Smashing Magazine’s incredibly useful <a href="https://smart-interface-design-patterns.com/">Smart Interface Design Patterns workshop</a>, which covers best practices and guidelines for various UI components, tables included.</p>

<div data-audience="non-subscriber" data-remove="true" class="feature-panel-container">

<aside class="feature-panel" style="">
<div class="feature-panel-left-col">

<div class="feature-panel-description"><p>Meet <strong><a data-instant href="https://www.smashingconf.com/online-workshops/">Smashing Workshops</a></strong> on <strong>front-end, design &amp; UX</strong>, with practical takeaways, live sessions, <strong>video recordings</strong> and a friendly Q&amp;A. With Brad Frost, Stéph Walter and <a href="https://smashingconf.com/online-workshops/workshops">so many others</a>.</p>
<a data-instant href="smashing-workshops" class="btn btn--green btn--large" style="">Jump to the workshops&nbsp;↬</a></div>
</div>
<div class="feature-panel-right-col"><a data-instant href="smashing-workshops" class="feature-panel-image-link">
<div class="feature-panel-image">
<img
    loading="lazy"
    decoding="async"
    class="feature-panel-image-img"
    src="/images/smashing-cat/cat-scubadiving-panel.svg"
    alt="Feature Panel"
    width="257"
    height="355"
/>

</div>
</a>
</div>
</aside>
</div>

<h2 id="short-primer-on-accessible-tables">Short Primer On Accessible Tables</h2>

<p>Before diving into specific responsive table patterns, let’s quickly go over some best practices regarding design and accessibility. We’ll cover some general points in this section and other, more specific ones in later examples.</p>

<h3 id="design-and-visual-features">Design And Visual Features</h3>

<p>First, we need to ensure that users can easily scan the table and intuitively match the data to their respective table header elements. From the design perspective, we can ensure the following:</p>

<ul>
<li>Use <strong>proper vertical and horizontal alignment</strong> (“A List Apart” covers this in their <a href="https://alistapart.com/article/web-typography-tables/#section5">article</a>).</li>
<li>Design a table with <strong>clear divisions and optimal spacing</strong> between rows and cells.</li>
<li><strong>Table header elements should stand out</strong> and be styled differently from data cells.</li>
<li>Consider using <strong>alternate background color for rows or columns</strong> (“zebra stripes”) for easier scanning.</li>
</ul>

<h3 id="aria-roles">ARIA Roles</h3>

<p>We want to include proper ARIA attributes to our table element and its descendants. Applying some CSS styles like <code>display: block</code> or <code>display: flex</code> (to create responsive stacked columns) may <a href="https://adrianroselli.com/2018/02/tables-css-display-properties-and-aria.html#TheTable">cause issues in some browsers</a>. In those cases, screen readers interpret the <code>table</code> element differently, and we lose the useful table semantics. By adding ARIA labels, we can fix the issue and retain the table semantics.</p>

<p>Including these roles in HTML manually could become tedious and prone to error. If you are <strong>comfortable about using JavaScript</strong> for adding additional markup, and you aren’t using a framework that generates static HTML files, you can use this handy little <a href="https://adrianroselli.com/2018/05/functions-to-add-aria-to-tables-and-lists.html#Table">JavaScript function</a> made by Adrian Roselli to automatically add ARIA roles to table elements:</p>

<pre><code class="language-javascript">function AddTableARIA() {
  try {
    var allTables = document.querySelectorAll("table");
    for (var i = 0; i &lt; allTables.length; i++) {
      allTables[i].setAttribute("role", "table");
    }
    var allRowGroups = document.querySelectorAll("thead, tbody, tfoot");
    for (var i = 0; i &lt; allRowGroups.length; i++) {
      allRowGroups[i].setAttribute("role", "rowgroup");
    }
    var allRows = document.querySelectorAll("tr");
    for (var i = 0; i &lt; allRows.length; i++) {
      allRows[i].setAttribute("role", "row");
    }
    var allCells = document.querySelectorAll("td");
    for (var i = 0; i &lt; allCells.length; i++) {
      allCells[i].setAttribute("role", "cell");
    }
    var allHeaders = document.querySelectorAll("th");
    for (var i = 0; i &lt; allHeaders.length; i++) {
      allHeaders[i].setAttribute("role", "columnheader");
    }
    // This accounts for scoped row headers
    var allRowHeaders = document.querySelectorAll("th[scope=row]");
    for (var i = 0; i &lt; allRowHeaders.length; i++) {
      allRowHeaders[i].setAttribute("role", "rowheader");
    }
    // Caption role not needed as it is not a real role, and
    // browsers do not dump their own role with the display block.
  } catch (e) {
    console.log("AddTableARIA(): " + e);
  }
}
</code></pre>

<p>However, keep in mind the following <strong>potential drawbacks</strong> of using JavaScript here:</p>

<ul>
<li>Users might choose to browse the website with JavaScript turned off.</li>
<li>The JavaScript file may not be downloaded or may be downloaded much later if the user is browsing the website on an unreliable or slow network.</li>
<li>If this is bundled alongside other JavaScript code in the same file, an error in other parts of the file might prevent this function from running in some cases.</li>
</ul>

<h3 id="adding-an-a11y-friendy-title">Adding An a11y-Friendy Title</h3>

<p>Adding a title next to the table helps both sighted users and users with assistive devices get a complete understanding of the content.</p>

<p>Ideally, we would include a <code>caption</code> element inside the <code>table</code> element as a first child. Notice how we can nest any HTML heading element as a child to maintain the title hierarchy.</p>

<pre><code class="language-html">&lt;table&gt;
  &lt;caption&gt;
    &lt;h2&gt;Top 10 best-selling albums of all time&lt;/h2&gt;
  &lt;/caption&gt;

   &lt;!-- Table markup --&gt;
&lt;/table&gt;
</code></pre>

<p>If we are using a wrapper element to make the table scrollable or adding some other functionality that makes the <code>caption</code> element not ideal, we can include the <code>table</code> inside a <code>figure</code> element and use a <code>figcaption</code> to add a title. Make sure to include a proper ARIA label on either the table element or a wrapper element and link it to a <code>figcaption</code> element:</p>

<div class="break-out">

<pre><code class="language-html">&lt;figure&gt;
  &lt;figcaption id="caption"&gt;Top 10 best-selling albums of all time&lt;/figcaption&gt;
  &lt;table aria-labelledby="caption"&gt;&lt;!-- Table markup --&gt;&lt;/table&gt;
&lt;/figure&gt;
</code></pre>
</div>

<div class="break-out">

<pre><code class="language-html">&lt;figure&gt;
  &lt;figcaption id="caption"&gt;
    &lt;h2&gt;Top 10 best-selling albums of all time&lt;/h2&gt;
  &lt;/figcaption&gt;
  &lt;div class="table-wrapper" role="group" aria-labelledby="caption" tabindex="0"&gt;
    &lt;table&gt;&lt;!-- Table markup --&gt;&lt;/table&gt;
  &lt;/div&gt;
&lt;/figure&gt;
</code></pre>
</div>

<p>There are <strong>other accessibility aspects</strong> to consider when designing and developing tables, like keyboard navigation, print styles, high contrast mode, and others. We’ll cover some of those in the following sections. For a <strong>more comprehensive guide</strong> on creating accessible table elements, make sure to check out <a href="https://inclusive-components.design/data-tables/">Heydon Pickering’s guide</a> and <a href="https://adrianroselli.com/2017/11/a-responsive-accessible-table.html">Adrian Roselli’s article</a> which is being kept up to date with the latest features and best practices.</p>

<div class="partners__lead-place"></div>

<h2 id="bare-bones-responsive-approach">Bare-bones Responsive Approach</h2>

<p>Sometimes we don’t have to make any major changes to our table to make it responsive. We just need to ensure the table width responds to the viewport width. That can be easily achieved with <code>width: 100%</code>, but we should also consider setting a dynamic <code>max-width</code> value, so our table doesn’t grow too wide on larger containers and becomes difficult to scan, like in the following example:</p>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b1b4d7d4-89f6-4735-b41f-ea99353e685f/3-accessible-front-end-patterns-responsive-tables-part1.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="290"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b1b4d7d4-89f6-4735-b41f-ea99353e685f/3-accessible-front-end-patterns-responsive-tables-part1.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b1b4d7d4-89f6-4735-b41f-ea99353e685f/3-accessible-front-end-patterns-responsive-tables-part1.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b1b4d7d4-89f6-4735-b41f-ea99353e685f/3-accessible-front-end-patterns-responsive-tables-part1.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b1b4d7d4-89f6-4735-b41f-ea99353e685f/3-accessible-front-end-patterns-responsive-tables-part1.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b1b4d7d4-89f6-4735-b41f-ea99353e685f/3-accessible-front-end-patterns-responsive-tables-part1.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b1b4d7d4-89f6-4735-b41f-ea99353e685f/3-accessible-front-end-patterns-responsive-tables-part1.png"
			
			sizes="100vw"
			alt="A example of a table on a wide screen with big space between the columns"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The table responds to viewport size, and it looks good on small screens, but on wider screens, it becomes difficult to scan due to the unnecessary space between the columns. (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b1b4d7d4-89f6-4735-b41f-ea99353e685f/3-accessible-front-end-patterns-responsive-tables-part1.png'>Large preview</a>)
    </figcaption>
  
</figure>

<pre><code class="language-css">table {
  width: fit-content;
}
</code></pre>

<p>With the <code>fit-content</code> value, we ensure that the table doesn’t grow beyond the minimum width required to optimally display the table contents and that it remains responsive.</p>

<p>The table responds to viewport size, and it looks good on small screens, but on wider screens, it becomes difficult to scan due to the unnecessary space between the columns.</p>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1eca8103-7278-4896-985b-5dc826f255f6/4-accessible-front-end-patterns-responsive-tables-part1.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="533"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1eca8103-7278-4896-985b-5dc826f255f6/4-accessible-front-end-patterns-responsive-tables-part1.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1eca8103-7278-4896-985b-5dc826f255f6/4-accessible-front-end-patterns-responsive-tables-part1.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1eca8103-7278-4896-985b-5dc826f255f6/4-accessible-front-end-patterns-responsive-tables-part1.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1eca8103-7278-4896-985b-5dc826f255f6/4-accessible-front-end-patterns-responsive-tables-part1.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1eca8103-7278-4896-985b-5dc826f255f6/4-accessible-front-end-patterns-responsive-tables-part1.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1eca8103-7278-4896-985b-5dc826f255f6/4-accessible-front-end-patterns-responsive-tables-part1.png"
			
			sizes="100vw"
			alt="An example of a table on a wide screen without big space between the columns"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      By setting the width with <code>fit-content</code> value, we’ve fixed the above-mentioned issue. (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1eca8103-7278-4896-985b-5dc826f255f6/4-accessible-front-end-patterns-responsive-tables-part1.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>We can also ensure that the table <code>max-width</code> value always adapts to its content. We don’t have to rely on assigning a magic number for each table or wrap the table in a container that constrains the width to a fixed value.</p>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/cec22d05-8c25-4850-82b7-a51d4086cb94/5-accessible-front-end-patterns-responsive-tables-part1.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="493"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/cec22d05-8c25-4850-82b7-a51d4086cb94/5-accessible-front-end-patterns-responsive-tables-part1.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/cec22d05-8c25-4850-82b7-a51d4086cb94/5-accessible-front-end-patterns-responsive-tables-part1.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/cec22d05-8c25-4850-82b7-a51d4086cb94/5-accessible-front-end-patterns-responsive-tables-part1.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/cec22d05-8c25-4850-82b7-a51d4086cb94/5-accessible-front-end-patterns-responsive-tables-part1.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/cec22d05-8c25-4850-82b7-a51d4086cb94/5-accessible-front-end-patterns-responsive-tables-part1.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/cec22d05-8c25-4850-82b7-a51d4086cb94/5-accessible-front-end-patterns-responsive-tables-part1.png"
			
			sizes="100vw"
			alt="An example of a table on a wide screen with a maximum width value that adapts to table contents"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      By using <code>auto</code> or <code>max-content</code>, we get a maximum width value that adapts to table contents. (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/cec22d05-8c25-4850-82b7-a51d4086cb94/5-accessible-front-end-patterns-responsive-tables-part1.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>This works well for simple tables that don’t require too much screen space to be effectively parsed and aren’t affected by <code>word-break</code>. We can even use <a href="https://www.smashingmagazine.com/2022/01/modern-fluid-typography-css-clamp/">fluid typography and fluid spacing</a> to make sure these simple tables remain readable on smaller screens.</p>

<pre><code class="language-css">/&#42; Values generated with Utopia https://utopia.fyi/type/calculator/ &#42;/

tbody {
  font-size: clamp(1.13rem, calc(0.35rem + 2.19vw), 1.75rem);
}

tbody td {
  padding-top: clamp(1.13rem, calc(0.35rem + 2.19vw), 1.75rem);
  padding-bottom:  clamp(2rem, calc(0.62rem + 3.9vw), 3.11rem);
}
</code></pre>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="yLEVLbX"
	data-user="smashingmag"
	data-default-tab="result"
	class="codepen">See the Pen [Responsive table - as is [forked]](https://codepen.io/smashingmag/pen/yLEVLbX) by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</p>
	<figcaption>See the Pen <a href="https://codepen.io/smashingmag/pen/yLEVLbX">Responsive table - as is [forked]</a> by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</figcaption>
</figure>

<h2 id="scrollbar-approach">Scrollbar Approach</h2>

<p>On complex tables with multiple columns where we cannot rely on fluid sizing and <code>word-break</code> to keep the table readable, we want the table to stretch as far as it needs to display the content optimally and allow users to scroll the table horizontally, so the table remains usable.</p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="KKeNKvm"
	data-user="smashingmag"
	data-default-tab="result"
	class="codepen">See the Pen [Table - scrollbars with dynamic cropping [forked]](https://codepen.io/smashingmag/pen/KKeNKvm) by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</p>
	<figcaption>See the Pen <a href="https://codepen.io/smashingmag/pen/KKeNKvm">Table - scrollbars with dynamic cropping [forked]</a> by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</figcaption>
</figure>

<p>By wrapping the table and applying <code>overflow: auto</code> on the wrapper element, we can add scrollbars to our table when there is not enough space on the screen for the table to fit.</p>

<p>This is useful on complex tables when we want to <strong>keep the default table layout and hierarchy for clarity</strong>and when we want to <strong>allow users to compare the data between cells</strong> and easily match them to table headers.</p>

<p>We can use a <code>figure</code> element to do so and add a <code>figcaption</code> for the table title or use another HTML container element with a heading for a title:</p>

<pre><code class="language-html">&lt;figure&gt;
  &lt;figcaption id="caption"&gt;
    &lt;h1&gt;Countries with most population&lt;/h1&gt;
  &lt;/figcaption&gt;
  &lt;div class="table-wrapper" role="group" aria-labelledby="caption"&gt;
    &lt;table&gt;
      &lt;!-- Table contents --&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/figure&gt;
</code></pre>

<p>Either way, this configuration is <strong>not usable for users who are using keyboard navigation</strong> as the table element is not focusable. We can easily do that by adding a <code>tabindex</code> attribute to the table wrapper element or table element directly (if we aren’t using any wrappers).</p>

<div class="break-out">

<pre><code class="language-html">&lt;div tabindex="0" class="table-wrapper" role="group" aria-labelledby="caption"&gt;
  &lt;table&gt;
     &lt;!-- Table contents --&gt;
  &lt;/table&gt;
&lt;/div&gt;
</code></pre>
</div>

<h3 id="using-shadows-to-indicate-possible-scrolling-directions">Using Shadows To Indicate Possible Scrolling Directions</h3>

<p>Browser <strong>scrollbars are controlled by the operating system</strong>, meaning that <strong>they might look and behave differently</strong>, depending on the device.</p>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/539553b1-ed1d-41ec-9ed6-22fc3052fead/6-accessible-front-end-patterns-responsive-tables-part1.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="300"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/539553b1-ed1d-41ec-9ed6-22fc3052fead/6-accessible-front-end-patterns-responsive-tables-part1.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/539553b1-ed1d-41ec-9ed6-22fc3052fead/6-accessible-front-end-patterns-responsive-tables-part1.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/539553b1-ed1d-41ec-9ed6-22fc3052fead/6-accessible-front-end-patterns-responsive-tables-part1.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/539553b1-ed1d-41ec-9ed6-22fc3052fead/6-accessible-front-end-patterns-responsive-tables-part1.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/539553b1-ed1d-41ec-9ed6-22fc3052fead/6-accessible-front-end-patterns-responsive-tables-part1.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/539553b1-ed1d-41ec-9ed6-22fc3052fead/6-accessible-front-end-patterns-responsive-tables-part1.png"
			
			sizes="100vw"
			alt="An example of a table where a scrollbar is hidden"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Chrome browser on iOS: scrollbar is hidden by default. (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/539553b1-ed1d-41ec-9ed6-22fc3052fead/6-accessible-front-end-patterns-responsive-tables-part1.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>This is important to know because on some devices, like smartphones and tablets, scrollbars aren’t visible right away, and users might get the impression that the table is not scrollable.</p>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1c7d9e0e-9c8c-4b36-8afe-5ac1957f0fe7/7-accessible-front-end-patterns-responsive-tables-part1.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="318"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1c7d9e0e-9c8c-4b36-8afe-5ac1957f0fe7/7-accessible-front-end-patterns-responsive-tables-part1.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1c7d9e0e-9c8c-4b36-8afe-5ac1957f0fe7/7-accessible-front-end-patterns-responsive-tables-part1.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1c7d9e0e-9c8c-4b36-8afe-5ac1957f0fe7/7-accessible-front-end-patterns-responsive-tables-part1.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1c7d9e0e-9c8c-4b36-8afe-5ac1957f0fe7/7-accessible-front-end-patterns-responsive-tables-part1.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1c7d9e0e-9c8c-4b36-8afe-5ac1957f0fe7/7-accessible-front-end-patterns-responsive-tables-part1.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1c7d9e0e-9c8c-4b36-8afe-5ac1957f0fe7/7-accessible-front-end-patterns-responsive-tables-part1.png"
			
			sizes="100vw"
			alt="An example of a table with a scrollbar displayed "
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      Chrome browser on iOS: scrollbar displays when a user interacts with the element. (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1c7d9e0e-9c8c-4b36-8afe-5ac1957f0fe7/7-accessible-front-end-patterns-responsive-tables-part1.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Lea Verou and Roman Komarov have suggested using <a href="https://lea.verou.me/2012/04/background-attachment-local/">“scrolling shadows”</a> to subtly indicate the scrolling direction using gradient background and <code>background-attachment</code> property. Using this property, we can set background gradient behavior when scrolling. We also use linear gradients as edge covers for shadows, so we gradually hide the shadow when the user has reached an edge and cannot scroll in that direction anymore.</p>

<div class="break-out">

<pre><code class="language-css">.table-wrapper {
  overflow: auto;
  background: 
    linear-gradient(90deg, var(--color-background) 20%, rgba(255, 255, 255, 0)),
    linear-gradient(90deg, rgba(255, 255, 255, 0), var(--color-background) 80%) 
                    100% 0,
    radial-gradient(farthest-side at 0 0%, var(--color-shadow), rgba(0, 0, 0, 0)),
    radial-gradient(farthest-side at 100% 0%, var(--color-shadow), rgba(0, 0, 0, 0))
                    100% 0;
  background-repeat: no-repeat;
  background-size: 20% 200%, 20% 200%, 8% 400%, 8% 400%;
  background-attachment: local, local, scroll, scroll;
}
</code></pre>
</div>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="ExRNxpd"
	data-user="smashingmag"
	data-default-tab="result"
	class="codepen">See the Pen [Table - scrollbars with background [forked]](https://codepen.io/smashingmag/pen/ExRNxpd) by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</p>
	<figcaption>See the Pen <a href="https://codepen.io/smashingmag/pen/ExRNxpd">Table - scrollbars with background [forked]</a> by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</figcaption>
</figure>

<p>Notice how shadows subtly hide and show as we scroll from one edge to another. And we added this nice effect with just a few additional CSS attributes without using JavaScript or additional HTML elements or wrappers.</p>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/729f2187-5dea-4b98-a400-9acc64410ebc/8-accessible-front-end-patterns-responsive-tables-part1.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="354"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/729f2187-5dea-4b98-a400-9acc64410ebc/8-accessible-front-end-patterns-responsive-tables-part1.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/729f2187-5dea-4b98-a400-9acc64410ebc/8-accessible-front-end-patterns-responsive-tables-part1.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/729f2187-5dea-4b98-a400-9acc64410ebc/8-accessible-front-end-patterns-responsive-tables-part1.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/729f2187-5dea-4b98-a400-9acc64410ebc/8-accessible-front-end-patterns-responsive-tables-part1.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/729f2187-5dea-4b98-a400-9acc64410ebc/8-accessible-front-end-patterns-responsive-tables-part1.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/729f2187-5dea-4b98-a400-9acc64410ebc/8-accessible-front-end-patterns-responsive-tables-part1.png"
			
			sizes="100vw"
			alt="An example of a table with a scrollbar with shadow"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      The shadow appears and disappears depending the direction where user can scroll. (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/729f2187-5dea-4b98-a400-9acc64410ebc/8-accessible-front-end-patterns-responsive-tables-part1.png'>Large preview</a>)
    </figcaption>
  
</figure>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c21cbde7-218e-42f7-bea7-c43c4f538ea7/9-accessible-front-end-patterns-responsive-tables-part1.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="321"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c21cbde7-218e-42f7-bea7-c43c4f538ea7/9-accessible-front-end-patterns-responsive-tables-part1.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c21cbde7-218e-42f7-bea7-c43c4f538ea7/9-accessible-front-end-patterns-responsive-tables-part1.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c21cbde7-218e-42f7-bea7-c43c4f538ea7/9-accessible-front-end-patterns-responsive-tables-part1.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c21cbde7-218e-42f7-bea7-c43c4f538ea7/9-accessible-front-end-patterns-responsive-tables-part1.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c21cbde7-218e-42f7-bea7-c43c4f538ea7/9-accessible-front-end-patterns-responsive-tables-part1.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c21cbde7-218e-42f7-bea7-c43c4f538ea7/9-accessible-front-end-patterns-responsive-tables-part1.png"
			
			sizes="100vw"
			alt="An example of a table with a subtle shadow on the right side"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      On devices where scrollbars are hidden by default, the subtle shadow indicates that a table can be scrolled. (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c21cbde7-218e-42f7-bea7-c43c4f538ea7/9-accessible-front-end-patterns-responsive-tables-part1.png'>Large preview</a>)
    </figcaption>
  
</figure>

<p>Keep in mind that <code>background-attachment</code> property is <a href="https://caniuse.com/background-attachment">not supported on iOS Safari</a> and a few other browsers, so make sure to either <strong>provide a fallback or remove the background on unsupported browsers</strong>. We can also provide helpful text next to the table to make sure users understand that the table can be scrolled.</p>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/06b8c18c-76d5-4388-a31e-614037d744ed/10-accessible-front-end-patterns-responsive-tables-part1.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="304"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/06b8c18c-76d5-4388-a31e-614037d744ed/10-accessible-front-end-patterns-responsive-tables-part1.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/06b8c18c-76d5-4388-a31e-614037d744ed/10-accessible-front-end-patterns-responsive-tables-part1.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/06b8c18c-76d5-4388-a31e-614037d744ed/10-accessible-front-end-patterns-responsive-tables-part1.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/06b8c18c-76d5-4388-a31e-614037d744ed/10-accessible-front-end-patterns-responsive-tables-part1.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/06b8c18c-76d5-4388-a31e-614037d744ed/10-accessible-front-end-patterns-responsive-tables-part1.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/06b8c18c-76d5-4388-a31e-614037d744ed/10-accessible-front-end-patterns-responsive-tables-part1.png"
			
			sizes="100vw"
			alt="An example of a table with a text that reads &#39;scroll for more&#39;"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/06b8c18c-76d5-4388-a31e-614037d744ed/10-accessible-front-end-patterns-responsive-tables-part1.png'>Large preview</a>)
    </figcaption>
  
</figure>

<h3 id="forcing-table-cropping">Forcing Table Cropping</h3>

<p>We can also dynamically set the table column width to enforce table cropping mid-content, so the user gets a clear hint that the table is scrollable. I’ve created a simple function for this example. The last column will always get cropped to 85% of its size, and we’ll reduce the number of visible columns by one if we cannot show at least 5% of the column’s width.</p>

<pre><code class="language-javascript">function cropTable(visibleCols) {
  const table = document.querySelector("figure");
  const { width: tableWidth } = table.getBoundingClientRect();
  const cols = table.querySelectorAll("th, td");
  const newWidth = tableWidth / visibleCols;

  // Resize columns to fit a table.
  cols.forEach(function(col) {
    // Always make sure that col is cropped by at least 15%.
    col.style.minWidth = newWidth + (newWidth &#42; 0.15) + "px";
  });

  // Return if we are about to fall below min column count.
  if (visibleCols &lt;= MIN&#95;COLS) {
    return;
  }

  // Measure a sample table column to check if resizing was successful.
  const { width: colWidth } = cols[0].getBoundingClientRect();

  // Check if we should crop to 1 column less (calculate new column width).
  if (colWidth &#42; visibleCols &gt; tableWidth + newWidth &#42; 0.95) {
    cropTable(visibleCols - 1);
  }
}
</code></pre>

<p>This function might need to be adjusted to a more complex use case. Check the example below and see how the table column width responds to window resizing:</p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="xxzRxBB"
	data-user="smashingmag"
	data-default-tab="result"
	class="codepen">See the Pen [Table - scrollbars with dynamic cropping [forked]](https://codepen.io/smashingmag/pen/xxzRxBB) by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</p>
	<figcaption>See the Pen <a href="https://codepen.io/smashingmag/pen/xxzRxBB">Table - scrollbars with dynamic cropping [forked]</a> by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</figcaption>
</figure>

<h3 id="sticky-table-headers">Sticky Table Headers</h3>

<p>As the user scrolls the table, either horizontally or vertically, <strong>table header elements will become hidden</strong>, and the user might start <strong>having trouble matching the data to the headers</strong>, depending on the table and data complexity. They would have to go back and forth and memorize the data order.</p>

<p>To avoid this issue, we can <strong>make the table headers sticky</strong> by applying <code>position: sticky</code> and making some style adjustments to fix the background color and borders. This is a great enhancement because <code>position: sticky</code> and style adjustments don’t affect the table style or layout if it’s not scrollable.</p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="QWxGWXq"
	data-user="smashingmag"
	data-default-tab="result"
	class="codepen">See the Pen [Table - fixed table-heads + background [forked]](https://codepen.io/smashingmag/pen/QWxGWXq) by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</p>
	<figcaption>See the Pen <a href="https://codepen.io/smashingmag/pen/QWxGWXq">Table - fixed table-heads + background [forked]</a> by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</figcaption>
</figure>

<p>Combined with the aforementioned “scrolling shadows” effect, we’ve ensured that users can easily scan the table data and have proper scrolling indicators.</p>














<figure class="
  
  
  ">
  
    <a href="https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/6cd98ee7-7acf-4146-9616-3e03a3102ea2/11-accessible-front-end-patterns-responsive-tables-part1.png">
    
    <img
      loading="lazy"
      decoding="async"
      fetchpriority="low"
			width="800"
			height="360"
			
			srcset="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/6cd98ee7-7acf-4146-9616-3e03a3102ea2/11-accessible-front-end-patterns-responsive-tables-part1.png 400w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_800/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/6cd98ee7-7acf-4146-9616-3e03a3102ea2/11-accessible-front-end-patterns-responsive-tables-part1.png 800w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1200/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/6cd98ee7-7acf-4146-9616-3e03a3102ea2/11-accessible-front-end-patterns-responsive-tables-part1.png 1200w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_1600/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/6cd98ee7-7acf-4146-9616-3e03a3102ea2/11-accessible-front-end-patterns-responsive-tables-part1.png 1600w,
			        https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_2000/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/6cd98ee7-7acf-4146-9616-3e03a3102ea2/11-accessible-front-end-patterns-responsive-tables-part1.png 2000w"
			src="https://res.cloudinary.com/indysigner/image/fetch/f_auto,q_80/w_400/https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/6cd98ee7-7acf-4146-9616-3e03a3102ea2/11-accessible-front-end-patterns-responsive-tables-part1.png"
			
			sizes="100vw"
			alt="A table with scrolling shadows with sticky table headers which remains visible on scroll"
		/>
    
    </a>
  

  
    <figcaption class="op-vertical-bottom">
      A table with scrolling shadows with sticky table headers which remains visible on scroll. (<a href='https://archive.smashing.media/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/6cd98ee7-7acf-4146-9616-3e03a3102ea2/11-accessible-front-end-patterns-responsive-tables-part1.png'>Large preview</a>)
    </figcaption>
  
</figure>

<div class="partners__lead-place"></div>

<h2 id="stacking-approach-rows-to-blocks">Stacking Approach (Rows To Blocks)</h2>

<p>The stacking approach has been a <strong>very popular pattern</strong> for years. It involves converting each table row into a block of vertically stacked columns. This is a very useful approach for tables where <strong>data is not comparable</strong> or when <strong>we don’t need to highlight the hierarchy</strong> and order between items.</p>

<p>For example, cart items in a webshop or a simple contacts table with details &mdash; these items are independent, and users primarily scan them individually and search for a specific item.</p>

<p>As mentioned before, converting the table rows to blocks usually involves applying <code>display: block</code> on small screens. However, as Adrian Roselli has noted, applying a <code>display</code> property <a href="https://adrianroselli.com/2018/02/tables-css-display-properties-and-aria.html">overrides native table semantics</a> and makes the element less accessible on screen readers. This discovery was jarring to me, as I’ve spent years crafting responsive tables using this pattern without realizing I was making them less accessible in the process.</p>

<p>It’s not all bad news, as Adrian Roselli notes the following <a href="https://adrianroselli.com/2018/02/tables-css-display-properties-and-aria.html#Update4">change for Chrome version 80</a>:</p>

<blockquote>Big progress. Chrome 80 no longer drops semantics for HTML tables when the <code>display</code> properties <code>flex</code>, <code>grid</code>, <code>inline-block</code>, or <code>contents</code> are used. The new Edge (ChromiEdge) follows suit. Firefox still dumps table semantics for only <code>display: contents</code>. Safari dumps table semantics for everything.<br /><br />&mdash; Adrian Roselli</blockquote>

<p>For this example, we’ll use <code>display: flex</code> instead of using <code>display: block</code> for our stacking pattern. This is not an ideal solution as other browsers might still drop table semantics, so make sure to test the accessibility on various browsers and devices.</p>

<pre><code class="language-css">/&#42; Small screen width styles &#42;/
table, tbody, tbody tr, tbody td, caption {
  display: flex;
  flex-direction: column;
  width: 100%;
  word-break: break-all;
}
</code></pre>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="bGKBNNr"
	data-user="smashingmag"
	data-default-tab="result"
	class="codepen">See the Pen [Table - stacked [forked]](https://codepen.io/smashingmag/pen/bGKBNNr) by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</p>
	<figcaption>See the Pen <a href="https://codepen.io/smashingmag/pen/bGKBNNr">Table - stacked [forked]</a> by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</figcaption>
</figure>

<h3 id="accordion">Accordion</h3>

<p>The stacking pattern might look nice initially and seems to be an elegant solution from a design perspective. However, depending on the table and data complexity, <strong>this pattern might significantly increase page height</strong>, and the user might have to scroll longer to reach the content below the table.</p>

<p>One improvement I found interesting was to <strong>show the primary data column</strong> (usually the first column) and <strong>hide the less important data (other columns) under an accordion</strong>. This makes sense for our example, as users would first look for a name by contact and then scan for their details in the row.</p>

<pre><code class="language-html">&lt;tr&gt;
  &lt;td onclick="toggle()"&gt;
    &lt;button aria-label="Expand contact details"&gt;
      &lt;!-- Icon --&gt;
    &lt;/button&gt;
    &lt;!-- Main content--&gt;
  &lt;/td&gt;
  &lt;td&gt;&lt;!-- Secondary content--&gt;&lt;/td&gt;
  &lt;td&gt;&lt;!-- Secondary content--&gt;&lt;/td&gt;
  &lt;td&gt;&lt;!-- Secondary content--&gt;&lt;/td&gt;
&lt;/tr&gt;
</code></pre>

<p>We’ll assume that the first table column contains primary data, and we’ll hide other columns unless a <code>row-active</code> class is applied:</p>

<pre><code class="language-css">/&#42; Small screen width styles &#42;/

thead tr &gt; &#42;:not(:first-child) {
  display: none;
}

tbody,
tbody tr,
tbody td {
  display: flex;
  flex-direction: column;
  word-break: break-all;
}

tbody td:first-child {
  flex-direction: row;
  align-items: center;
}

tbody tr:not(.row-active) &gt; &#42;:not(:first-child) {
  max-width: 0;
  max-height: 0;
  overflow: hidden;
  padding: 0;
}
</code></pre>

<p>Now we have everything in place for showing and hiding table row details. We also need to keep in mind the screen reader support and toggle the <code>aria-hidden</code> property to hide secondary info from screen readers. We don’t need to toggle the ARIA property if we’re toggling the element visibility with the <code>display</code> property:</p>

<pre><code class="language-javascript">function toggle() {
  const row = this.window.event.target.closest("tr");
  row.classList.toggle("row-active");

  const isActive = row.classList.contains("row-active");

  if (isActive) {
    const activeColumns = row.querySelectorAll("td:not(:first-child)");
    activeColumns.forEach(function (col) {
      col.setAttribute("aria-hidden", "false");
    });
  } else {
    const activeColumns = row.querySelectorAll(`td[aria-hidden="false"]`);
    activeColumns.forEach(function (col) {
      col.setAttribute("aria-hidden", "true");
    });
}
</code></pre>

<p>We’ll assign this function to the <code>onclick</code> attribute on our main table column elements to make the whole column clickable. We also need to assign proper ARIA labels when initializing and resizing the window. We don’t want incorrect ARIA labels applied when we resize the screen between two modes.</p>

<pre><code class="language-javascript">function handleResize() {
  const isMobileMode = window.matchMedia("screen and (max-width: 880px)");
  const inactiveColumns = document.querySelectorAll(
    "tbody &gt; tr &gt; td:not(:first-child)"
  );

  inactiveColumns.forEach(function (col) {
    col.setAttribute("aria-hidden", isMobileMode.matches.toString());
  });
}

//On window resize
window.addEventListener("resize", handleResize);

// On document load
handleResize();
</code></pre>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="dyKOYVr"
	data-user="smashingmag"
	data-default-tab="result"
	class="codepen">See the Pen [Table - accordion [forked]](https://codepen.io/smashingmag/pen/dyKOYVr) by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</p>
	<figcaption>See the Pen <a href="https://codepen.io/smashingmag/pen/dyKOYVr">Table - accordion [forked]</a> by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</figcaption>
</figure>

<p>This approach significantly reduces table height on smaller screens compared to the previous example. The content below the table would now easily be reachable by quickly scrolling past the table.</p>

<h2 id="toggleable-columns-approach">Toggleable Columns Approach</h2>

<p>Going back to our scrollable table example, in some cases, we can <strong>give users an option to customize the table</strong> <strong>view</strong> by allowing them to show and hide individual columns, temporarily reducing table complexity in the process. This is useful for users that want to <strong>scan or compare data only by specific columns</strong>.</p>

<p>We’ll use a checkbox form and have them run a JavaScript function. We’ll only have to pass an index of the column that we want to toggle. We’ll have to hide both the columns in data rows in a table body and a table header element:</p>

<pre><code class="language-javascript">function toggleRow(index) {
  // Hide a data column for all rows in the table body.
  allBodyRows.forEach(function (row) {
    const cell = row.querySelector(`td:nth-child(${index + 1})`);
    cell.classList.toggle("hidden");
  });

  // Hide a table header element.
  allHeadCols[index].classList.toggle("hidden");
}
</code></pre>

<p>This is a neat solution if you want to avoid the stacking pattern and allow users to easily compare the data but give them options to reduce the table complexity by toggling individual columns. In this case, we’re using a <code>display</code> property to toggle the visibility, so we don’t have to handle toggling ARIA labels.</p>

<figure class="break-out">
	<p data-height="480"
	data-theme-id="light"
	data-slug-hash="RwJoWQb"
	data-user="smashingmag"
	data-default-tab="result"
	class="codepen">See the Pen [Responsive table - column toggle [forked]](https://codepen.io/smashingmag/pen/RwJoWQb) by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</p>
	<figcaption>See the Pen <a href="https://codepen.io/smashingmag/pen/RwJoWQb">Responsive table - column toggle [forked]</a> by <a href="https://codepen.io/AdrianBece">Adrian Bece</a>.</figcaption>
</figure>

<h2 id="conclusion">Conclusion</h2>

<p>Table complexity and design depend on the use case and the data they display. They generally rely on having enough screen space to display columns in a way user can easily scan them. There is no universal solution for making tables responsive and usable on smaller screens for all these possible use cases, so we have to rely on various patterns.</p>

<p>In this article, we’ve covered a handful of these patterns. We’ve focused primarily on simple design changes with a scrolling table pattern and a stacking pattern and began checking out more complex patterns that involve adding some JavaScript functionality.</p>

<p>In the next article, we’ll explore more specific and complex responsive table patterns and check out some responsive table libraries that add even more useful features (like <strong>filtering</strong> and <strong>pagination</strong>) to tables out of the box.</p>

<h3 id="references">References</h3>

<ul>
<li>“<a href="https://adrianroselli.com/2018/02/tables-css-display-properties-and-aria.html">Tables, CSS Display Properties, And ARIA</a>”, Adrian Roselli</li>
<li>“<a href="https://adrianroselli.com/2017/11/a-responsive-accessible-table.html">A Responsive Accessible Table</a>”, Adrian Roselli</li>
<li>“<a href="https://adrianroselli.com/2018/05/functions-to-add-aria-to-tables-and-lists.html">Functions To Add ARIA To Tables And Lists</a>”, Adrian Roselli</li>
<li><a href="https://inclusive-components.design/data-tables/">Data Tables</a>, Heydon Pickering</li>
<li>“<a href="https://www.smashingmagazine.com/2019/01/table-design-patterns-web/">Table Design Patterns On The Web</a>”, Chen Hui Jing</li>
<li>“<a href="https://lea.verou.me/2012/04/background-attachment-local/">Pure CSS Scrolling Shadows With background-attachment: local</a>”, Lea Verou</li>
<li><a href="https://www.dropbox.com/paper/ep/redirect/external-link?url=https%3A%2F%2Fwww.w3.org%2FWAI%2Ftutorials%2Ftables%2Fcaption-summary%2F&amp;hmac=UIbB%2BWBJu82LS4Aq3j%2Bc2mDo5wZzKF50%2F7P%2F%2BdH%2Bu%2BM%3D">Tables Caption &amp; Summary</a>, Web Accessibility Initiative</li>
<li><a href="https://www.w3.org/WAI/tutorials/tables/tips/">Tables Tips And Tricks</a>, Web Accessibility Initiative</li>
</ul>

<div class="signature">
  <img src="https://www.smashingmagazine.com/images/logo/logo--red.png" alt="Smashing Editorial" width="35" height="46" loading="lazy" decoding="async" />
  <span>(yk, il)</span>
</div>


              </article>
            </body>
          </html>
        ]]></content:encoded></item></channel></rss>