ResourcesTesting and fixing
The most common accessibility barriers
Quick answer
Six kinds of errors make up nearly all of what WebAIM's yearly scan detects on home pages: low contrast text, missing alt text, missing form labels, empty links, empty buttons and no page language. The examples below show the code change each one needs. Other barriers, like controls a keyboard can't reach, mostly show up when a person tests.
Facts last checked
What a million home pages show
Every year WebAIM scans the home pages of the top one million websites. This is what it detected in February 2026.
95.9%
of the top one million home pages had detectable WCAG failures.
WebAIM Million, 2026
56.1
errors detected on each home page, on average.
WebAIM Million, 2026
96%
of all detected errors fall into the same six types.
WebAIM Million, 2026
The six most common
These are errors a scan can detect. WebAIM notes that tools can't detect every WCAG failure, so a page with no detected errors can still have barriers.
- Low contrast text: 83.9%
- Missing alt text for images: 53.1%
- Missing form labels: 51%
- Empty links: 46.3%
- Empty buttons: 30.6%
- Missing page language: 13.5%
Source: WebAIM Million, 2026
What each fix looks like
One line each. Each note names the WCAG criteria that WAVE, the tool behind the report, maps the error to.
Removed: .price { color: #999999; }
Added: .price { color: #595959; }
Low contrast text maps to 1.4.3 Contrast (Minimum), Level AA. The fix is a darker color that meets the ratio against its background.
Removed: <img src="tacos.jpg">
Added: <img src="tacos.jpg" alt="Three fish tacos">
Missing alt text maps to 1.1.1 Non-text Content, Level A. The alt text says what the photo shows.
Removed: <input type="tel" placeholder="Phone">
Added: <label>Phone <input type="tel"></label>
Missing form labels map to 3.3.2 Labels or Instructions, Level A, and three more criteria. The label is now tied to its field.
Removed: <a href="/cart"><svg /></a>
Added: <a href="/cart" aria-label="Cart"><svg aria-hidden="true" /></a>
Empty links map to 2.4.4 Link Purpose (In Context), Level A. The link now has a name.
Removed: <button class="close"></button>
Added: <button class="close" aria-label="Close"></button>
Empty buttons map to 1.1.1 Non-text Content and 2.4.4 Link Purpose (In Context), both Level A. The button now has a name.
Removed: <html>
Added: <html lang="en">
A missing page language maps to 3.1.1 Language of Page, Level A. It's one attribute on the html tag.
Is it getting better?
Slowly, until 2026. The share fell a little each year from 2020 to 2025, then rose again.
- 2019: 97.8%
- 2020: 98.1%
- 2021: 97.4%
- 2022: 96.8%
- 2023: 96.3%
- 2024: 95.9%
- 2025: 94.8%
- 2026: 95.9%
Source: WebAIM Million, 2019 to 2026
The six most common types have stayed the same for the last 7 years, WebAIM reports.
Beyond the six
A scan misses most of these. A person finds them by using the site.
Keyboard
Controls a keyboard can't reach
A date picker or a menu that only works with a mouse. A person finds it by pressing Tab.
Focus
Focus that jumps or disappears
Tab moves in a different order from the one on screen, or you can't see where you are.
Screen reader
Updates that aren't announced
An item goes into the cart, or a form shows an error, and a screen reader says nothing.
Sources
- WebAIM, The WebAIM Million: the 2026 report on the accessibility of the top 1,000,000 home pages (2026)
- WebAIM, WAVE documentation: how each error maps to WCAG (accessed 2026)
- WebAIM, The WebAIM Million: the 2025 report (2025)
- WebAIM, The WebAIM Million: the 2024 report (2024)
- WebAIM, The WebAIM Million: the 2023 report (2023)
- WebAIM, The WebAIM Million: the 2022 report (2022)
- WebAIM, The WebAIM Million: the 2021 report (2021)
- WebAIM, The WebAIM Million: the 2020 report (2020)
- WebAIM, The WebAIM Million: the 2019 report (2019)
We provide technical accessibility services, not legal advice.
More guides
Automated scans vs. testing by people
What an automated accessibility scan can find, what it misses, and why testing by people has to go with it.
Do accessibility overlays fix a website?
What an accessibility overlay widget is, what a script can and can't change on your site, and what the public record shows.
WCAG explained: principles, levels and versions
What WCAG is, what Levels A, AA and AAA mean, and which version the rules name, shown in charts and tables.
Start with a free snapshot.
Tell us your website. We'll run an automated check of up to 10 key pages and walk you through what we found. It's an automated check that finds only some issues, not an audit.
Get a free snapshot