10 WCAG Issues Behind 90% of ADA Lawsuits (& How to Fix)
Over 3,117 ADA website lawsuits hit US businesses in 2025 - almost all cite the same 10 WCAG violations. Fix these before your site gets sued.
Over 3,117 ADA website accessibility lawsuits were filed in 2025. That's a 27% increase from 2024, and the numbers keep climbing. On top of that, the European Accessibility Act became enforceable in June 2025, adding penalties of up to €100,000 for non-compliant websites serving EU customers.
But here's the thing most businesses don't realize: the vast majority of these lawsuits cite the same handful of WCAG issues. If you fix these 10 problems, you eliminate most of your legal exposure.
We analyzed the most commonly cited violations from ADA complaints and cross-referenced them with data from WebAIM's annual analysis of the top 1 million websites. Here's what actually gets businesses sued, and exactly how to fix each issue.
But here's the thing most businesses don't realize: the vast majority of these lawsuits cite the same handful of WCAG issues. If you fix these 10 problems, you eliminate most of your legal exposure.
We analyzed the most commonly cited violations from ADA complaints and cross-referenced them with data from WebAIM's annual analysis of the top 1 million websites. Here's what actually gets businesses sued, and exactly how to fix each issue.
1. Missing or Inadequate Image Alt Text

WCAG Criterion: 1.1.1 (Non-text Content) Lawsuit Risk: Very High
This is the single most cited issue in ADA website lawsuits. When images lack descriptive alt text, screen reader users have no way to understand what the image shows. For e-commerce sites, this means blind customers literally cannot see your products.
What goes wrong:
- Images with no alt attribute at all
- Placeholder alt text like "image" or "IMG_1234.jpg"
- Decorative images that aren't marked as decorative
How to fix it:
For informative images, write a concise description of what the image shows:
<!-- Bad --> <img src="hero.jpg"> <img src="product-42.jpg" alt="image"> <!-- Good --> <img src="hero.jpg" alt="Team collaborating around a whiteboard in a modern office"> <img src="product-42.jpg" alt="Navy blue wool overcoat, front view, with brass buttons">
For decorative images that don't convey information, use an empty alt attribute so screen readers skip them:
Pro tip: If you have hundreds of product images that need alt text, AccessGuard's AltWizard feature generates SEO-friendly descriptions using AI. You can drag and drop up to 10 images at a time.
Pro tip: If you have hundreds of product images that need alt text, AccessGuard's AltWizard feature generates SEO-friendly descriptions using AI. You can drag and drop up to 10 images at a time.
2. Insufficient Color Contrast
WCAG Criterion: 1.4.3 (Contrast Minimum) Lawsuit Risk: Very High
According to WebAIM's 2024 analysis, 81% of the top 1 million website homepages had color contrast issues. It's the most widespread accessibility failure on the web, and it's one of the easiest to fix.
The requirements:
- Normal text: minimum 4.5:1 contrast ratio
- Large text (18pt+ or 14pt bold): minimum 3:1 contrast ratio
- UI components and graphics: minimum 3:1 contrast ratio
Common offenders:
- Light gray text on white backgrounds
- Text placed over images or gradients without an overlay
- Placeholder text in form fields
- Links that aren't visually distinct enough from body text
How to fix it:
Test your color combinations using a contrast checker. Then update your CSS:
/* Bad: ratio 2.5:1, fails WCAG AA */
.subtitle {
color: #999999;
background: #ffffff;
}
/* Good: ratio 7.0:1, passes WCAG AAA */
.subtitle {
color: #595959;
background: #ffffff;
}
For text over images, add a semi-transparent overlay:
.hero-text-overlay {
background: rgba(0, 0, 0, 0.6);
padding: 1rem 2rem;
}
3. Missing Form Labels
WCAG Criterion: 1.3.1 (Info and Relationships), 4.1.2 (Name, Role, Value) Lawsuit Risk: High
Forms without proper labels are a frequent target in lawsuits, especially on e-commerce sites where checkout forms, registration, and search fields lack associated labels.
What goes wrong:
- Input fields that rely on placeholder text instead of <label> elements
- Labels that aren't programmatically associated with their input
- Error messages that don't identify which field has the problem
How to fix it:
<!-- Bad: placeholder is NOT a label replacement --> <input type="email" placeholder="Enter your email"> <!-- Good: visible label associated with input --> <label for="email">Email address</label> <input type="email" id="email" name="email" placeholder="[email protected]">
For error handling, be specific about what went wrong:
<!-- Bad --> <p class="error">There was an error.</p> <!-- Good --> <p class="error" role="alert">Please enter a valid email address in the Email field.</p>
4. Keyboard Navigation Issues
WCAG Criterion: 2.1.1 (Keyboard) Lawsuit Risk: High
Users with motor disabilities often navigate entirely with a keyboard. If your site requires a mouse for essential functions, like opening dropdown menus, clicking modal buttons, or navigating carousels, those users are locked out.
What goes wrong:
- Interactive elements that only respond to mouse clicks
- Missing or invisible focus indicators
- Custom components (dropdowns, modals, tabs) that trap keyboard focus
- Skip-to-content links that are missing or non-functional
How to fix it:
Make sure all interactive elements are focusable and operable:
<!-- Bad: div acting as button, not keyboard accessible --> <div class="btn" onclick="submit()">Submit</div> <!-- Good: native button element, keyboard accessible by default --> <button type="submit" class="btn">Submit</button>
Never remove the focus outline without providing an alternative:
/* Bad: removes focus indicator entirely */
*:focus { outline: none; }
/* Good: custom focus style that's still visible */
*:focus-visible {
outline: 2px solid #0066cc;
outline-offset: 2px;
}
Add a skip navigation link as the first focusable element:
<a href="#main-content" class="skip-link">Skip to main content</a>
5. Missing Document Language
WCAG Criterion: 3.1.1 (Language of Page) Lawsuit Risk: Medium
Screen readers use the language attribute to determine pronunciation rules. Without it, a German screen reader might try to pronounce English text phonetically, or vice versa. It's a one-line fix that many sites miss.
Screen readers use the language attribute to determine pronunciation rules. Without it, a German screen reader might try to pronounce English text phonetically, or vice versa. It's a one-line fix that many sites miss.
How to fix it:
<!-- Add the lang attribute to your html element -->
<html lang="en">
<!-- For multilingual pages, mark sections in different languages -->
<p>The French word for hello is <span lang="fr">bonjour</span>.</p>
6. Empty or Non-Descriptive Links
WCAG Criterion: 2.4.4 (Link Purpose) Lawsuit Risk: Medium-High
Links that say "click here" or "read more" tell a screen reader user nothing about where the link goes. When a blind user pulls up a list of all links on a page (a common screen reader feature), they get a list of 15 identical "click here" links.
How to fix it:
<!-- Bad --> <a href="/report">Click here</a> <a href="/pricing">Read more</a> <!-- Good --> <a href="/report">Download the 2025 accessibility report</a> <a href="/pricing">View pricing plans</a>
For icon-only links (like social media icons), add descriptive text that's visually hidden but available to screen readers:
<a href="https://twitter.com/yourhandle"> <svg aria-hidden="true"><!-- twitter icon --></svg> <span class="sr-only">Follow us on Twitter</span> </a>
7. Improper Heading Hierarchy
WCAG Criterion: 1.3.1 (Info and Relationships) Lawsuit Risk: Medium
Screen reader users navigate pages by headings the way sighted users scan visually. If your headings skip levels (jumping from H1 to H4) or are used purely for styling, the page structure makes no sense to assistive technology.
Screen reader users navigate pages by headings the way sighted users scan visually. If your headings skip levels (jumping from H1 to H4) or are used purely for styling, the page structure makes no sense to assistive technology.
How to fix it:
<!-- Bad: skips levels, used for styling -->
<h1>Our Products</h1>
<h4>Running Shoes</h4> <!-- Skipped h2 and h3 -->
<h2>About Us</h2>
<!-- Good: logical hierarchy -->
<h1>Our Products</h1>
<h2>Running Shoes</h2>
<h3>Men's Running Shoes</h3>
<h3>Women's Running Shoes</h3>
<h2>Hiking Boots</h2>
The rule is simple: never skip heading levels, and never use headings just to make text bigger. Use CSS for styling, headings for structure.
8. Missing ARIA Attributes on Custom Components
WCAG Criterion: 4.1.2 (Name, Role, Value) Lawsuit Risk: Medium-High
When you build custom UI components (accordions, tabs, modal dialogs, dropdown menus), browsers and screen readers don't automatically know what these elements are or how they behave. ARIA attributes bridge that gap.
How to fix it:
For a custom accordion:
<button aria-expanded="false" aria-controls="section1"> Shipping Information </button> <div id="section1" role="region" aria-hidden="true"> <p>We ship within 3-5 business days...</p> </div>
For modal dialogs:
<div role="dialog" aria-modal="true" aria-labelledby="dialog-title"> <h2 id="dialog-title">Confirm your order</h2> <!-- dialog content --> </div>
Important rule: only use ARIA when native HTML elements don't provide the semantics you need. A <button> is always better than a <div role="button">.
9. Missing Video Captions and Audio Descriptions
WCAG Criterion: 1.2.2 (Captions), 1.2.3 (Audio Description) Lawsuit Risk: Medium
If your site includes video content, product demos, promotional videos, tutorials, they need captions for deaf and hard-of-hearing users. Auto-generated captions from YouTube are a start, but they're often inaccurate and don't meet the standard.
How to fix it:
- Add accurate, synchronized captions to all video content
- Provide transcripts for audio-only content (podcasts, audio guides)
- Review auto-generated captions for accuracy, they frequently mangle proper nouns, technical terms, and accented speech
- For pre-recorded video, provide audio descriptions for important visual information that isn't conveyed through dialogue
10. Insufficient Touch Target Size
WCAG Criterion: 2.5.8 (Target Size Minimum) Lawsuit Risk: Growing
This is a newer criterion from the new WCAG 2.2 success criteria, but it's increasingly cited in complaints. Small buttons and links, especially on mobile, are difficult for users with motor impairments to tap accurately.
The requirement: Interactive targets should be at least 24×24 CSS pixels, with adequate spacing between adjacent targets.
How to fix it:
/* Ensure buttons and links meet minimum target size */
button, a, input[type="checkbox"], input[type="radio"] {
min-width: 44px;
min-height: 44px;
}
/* Add padding to small inline links */
nav a {
padding: 0.5rem 1rem;
display: inline-block;
}
How to Check If Your Site Has These Issues
You can manually audit every page against these 10 criteria, but for most businesses that's not practical. Here's a faster approach:
- Run an run a structured accessibility audit to catch the obvious issues (alt text, color contrast, form labels, heading structure). This catches roughly 30-40% of all accessibility problems.
- Test with a keyboard, unplug your mouse and try to navigate your entire site using only Tab, Enter, and Escape. If you get stuck anywhere, your keyboard users will too.
- Test with a screen reader, turn on VoiceOver (Mac) or NVDA (Windows, free) and try to complete a key task on your site, like making a purchase or filling out a contact form.
Or, you can scan your site with AccessGuard. We check for all 10 issues above (and 15 more), prioritize them by lawsuit risk, and generate production-ready code fixes for each one. No guesswork, just copy the fix and deploy.
The Bottom Line
The 10 issues listed above account for the vast majority of accessibility complaints and lawsuits. Most of them are straightforward to fix - some are literally a one-line change. The cost of fixing them is a fraction of the $25,000-$50,000 average lawsuit settlement.
With ADA lawsuits up 27% year over year and the European Accessibility Act now being enforced across all 27 EU member states, accessibility compliance isn't optional anymore. The question isn't whether you need to address these issues, it's whether you do it now for a few hundred dollars, or later for tens of thousands.
AccessGuard scans your website against WCAG 2.1 AA and AAA standards and generates AI-powered code fixes for every issue. Start your free scan →