← Back to Blog
·11 min read

10 Most Common Website Accessibility Violations (And How to Fix Them)

If your website has accessibility problems, you're probably not alone — and they're probably not that exotic.

WebAIM's annual analysis of the top one million websites found that 95% have detectable WCAG failures. More striking: the same ten violations show up again and again, across industries and platform types.

The good news is that this list is also a roadmap. Fix these ten issues and you'll resolve the vast majority of the accessibility barriers on most small business websites.


How to Use This Guide

For each violation, we'll cover:

  • What it is — The plain-language explanation
  • Why it matters — Who it affects and how
  • How to fix it — Practical steps, including code examples where relevant
  • How to check — How to detect it using free tools

Violation #1: Missing Alt Text on Images

WCAG Criterion: 1.1.1 Non-text Content

Frequency: Found on 56% of websites in WebAIM's analysis

What it is

Every element should have an alt attribute that describes what the image shows. When alt text is missing, screen readers either skip the image entirely or read out the raw file name (e.g., "IMG_20240315_143022.jpg") — which is useless to a blind user.

Why it matters

Screen readers used by blind and low-vision users rely entirely on alt text to convey visual information. Missing alt text also hurts your SEO — search engines can't index images without it.

How to fix it

For meaningful images:

<!-- Wrong -->
<img src="team-photo.jpg">

<!-- Correct -->
<img src="team-photo.jpg" alt="The CheckMyADA founding team at our San Francisco office">

For decorative images (add no information):

<!-- Use empty alt, not missing alt -->
<img src="divider-line.png" alt="">

On WordPress/Squarespace: Add alt text in the image settings panel when uploading or editing any image.

How to check

Run a free scan at checkmyada.com. The report will list every image missing alt text, with its location on the page.


Violation #2: Low Color Contrast

WCAG Criterion: 1.4.3 Contrast (Minimum)

Frequency: Found on 81% of websites (the #1 most common violation)

What it is

Text must have sufficient contrast against its background to be readable by people with low vision or color blindness. WCAG requires:

  • Normal text (under 18pt): minimum 4.5:1 contrast ratio
  • Large text (18pt+ or bold 14pt+): minimum 3:1 contrast ratio
  • UI components (buttons, form borders): minimum 3:1 contrast ratio

Light gray text on white, yellow text on white, or low-saturation color combinations frequently fail this test.

Why it matters

Approximately 8% of men and 0.5% of women have some form of color vision deficiency. Low contrast also affects users reading in bright sunlight, on low-quality screens, or simply getting older.

How to fix it

Use the WebAIM Contrast Checker to test your text/background color combinations.

/* Before: failing contrast (#999 on white = 2.85:1 ratio) */
.subheading {
  color: #999999;
  background-color: #ffffff;
}

/* After: passing contrast (#767676 on white = 4.54:1 ratio) */
.subheading {
  color: #767676;
  background-color: #ffffff;
}

For branded colors you can't change, try darkening the text or lightening the background slightly — even small adjustments often bring ratios into compliance.


Violation #3: Missing Form Labels

WCAG Criterion: 1.3.1 Info and Relationships, 4.1.2 Name, Role, Value

Frequency: Found on 41% of websites

What it is

Every form input (,