All guides

Six accessibility fixes that cover almost everything

Design6 min read

WebAIM runs an automated accessibility scan across the home pages of the top million websites every February and publishes the results. The 2026 run found detected WCAG 2 failures on 95.9% of them, up from 94.8% the year before.

The average page carried 56.1 distinct errors, a 10.1% increase on the previous year’s 51. Accessibility on the open web is getting worse, measurably, year over year.

Here is the part that makes this tractable. Six error types account for 96% of everything WebAIM detects.

The six

Low contrast text appears on 83.9% of pages, making it the single most common failure by a wide margin. Missing alternative text for images follows at 53.1%. Missing form input labels sit at 51%, empty links at 46.3%, empty buttons at 30.6%, and missing document language at 13.5%.

Read that list again and notice what it contains. No complex ARIA patterns. No screen reader interaction models. No keyboard traps in custom widgets. Six mistakes, all of them caught by a free automated tool, and most of them fixable in minutes.

Contrast is a design decision, made early

Grey text on a white background is the defining aesthetic mistake of the last decade of web design. WCAG AA requires a contrast ratio of at least 4.5:1 for normal text and 3:1 for large text, and a huge amount of tasteful, expensive-looking design fails it.

Fix this in the palette rather than page by page, picking your body text colour against your background colour once, checking the ratio, and enforcing it in the design tokens so that nobody downstream has to think about it again. Retrofitting contrast across an existing site is tedious. Doing it upfront is free.

The ratio also degrades in conditions your team does not design in. Sunlight on a phone screen, a cheap laptop panel, a projector in a meeting room. Anyone over about 40 will thank you, which covers a large share of most B2B buying committees.

Alt text is a content job

Every image needs an alt attribute. What goes in it depends on what the image does.

If the image carries information, describe the information rather than the picture. A chart’s alt text should say what the chart shows, not that it is a chart. If the image is decorative and adds nothing a sighted user would miss, use an empty alt attribute so screen readers skip it cleanly. An image inside a link needs alt text describing where the link goes.

The failure mode we see most often is a CMS where alt text is optional, so it sits empty across four years of uploaded images. That is a content backlog rather than a technical problem, and it needs somebody to sit down with the media library and work through it. Nobody enjoys that job.

A form input without a label is unusable with a screen reader and often ambiguous with one. Placeholder text is not a label, because it disappears the moment somebody types. Use a real <label> element tied to the input with for and id.

Empty links and empty buttons are usually icons. A magnifying glass with no text inside an anchor tag announces as “link” and nothing else. Add visually hidden text or an aria-label so it announces as “search”. Social icons in footers are the most common offender by some distance.

Missing document language is one line: <html lang="en">. It tells screen readers which pronunciation rules to apply, and without it English content can be read aloud with the wrong phonetics entirely. Thirteen and a half percent of the top million sites are missing it.

Automated testing finds a floor, not a ceiling

WebAIM’s data comes from automated scanning, which detects a specific subset of problems reliably and misses whole categories entirely. Automated tools cannot tell you whether your alt text is accurate, whether your heading structure reflects the actual document outline, or whether a custom dropdown works with a keyboard.

So treat a clean automated scan as the starting line. Run axe or Lighthouse in CI so regressions get caught, then do the manual checks the tools cannot: tab through the whole page without touching the mouse, then turn the screen off and try to complete your primary conversion flow with a screen reader.

That second exercise is uncomfortable and it is worth doing once per project. Form-heavy pages tend to fail it, and forms are where the money is, which is why we treat them separately in checkout and form friction.

The commercial argument

Accessibility gets framed as compliance, which makes it a cost centre and pushes it to the end of the project where it dies.

The practical framing is that these six fixes improve the site for everyone. Contrast helps anyone on a phone outdoors. Labels reduce form errors for all users, and form errors cost conversions. Alt text is read by search crawlers as well as screen readers. Keyboard support is what power users rely on.

There is a legal dimension in most jurisdictions and it is worth understanding, though we would rather not lead with it. A site that is easier to use converts better, and that argument survives whether or not anyone ever threatens to sue you.

Accessibility is part of how we approach design. If you want the six checked properly on your site, get in touch.

References