Close

WCAG Accessibility Quick Reference Guide

Based on 2025 NGI project audits. A comprehensive reference to implement WCAG 2.2 Level AA compliance in web applications and mobile apps.

About This Reference

This document is a quick reference of the most common WCAG errors found across 78 real projects. Each issue includes a brief overview and code snippets.

For detailed implementation with interactive demos, use these dedicated component guides:

  • Accessible Dropdown Menus: Complete guide with keyboard navigation, ARIA, and screen reader support
  • Keyboard Navigation: Tab order, focus trapping, skip links, and arrow key patterns (2,410 violations)
  • Color Contrast: Contrast ratios, accessible palettes, and a live contrast checker (1,431 violations)
  • Form Labels: Label association, ARIA naming, icon buttons, and fieldsets (487 violations)
  • Form Validation: Error identification, ARIA live regions, and real-time feedback (45 violations)

Executive Summary

Analysis Overview: Based on comprehensive accessibility audits of 78 NGI projects conducted in 2024–2025, with a total of 5,812 documented WCAG violations. This data represents the most common accessibility issues found across tested web applications, mobile apps, and desktop software.

Note on Document Structure: While the table below shows issues ranked by frequency, the guide sections (1-15) are organized pedagogically, from fundamental concepts to advanced implementation. This helps developers build accessibility knowledge systematically, starting with the highest-impact basics.

Top 5 Most Critical Issues

Rank Issue Type Total Violations Primary Affected Areas
1 Keyboard Navigation (2.1.1) 2,410 Mobile apps, XR/VR, complex UI components (77/78 projects)
2 Color Contrast (1.4.3) 1,431 Links, buttons, focus indicators, modern UI (75/78 projects)
3 Image Alt Text (1.1.1) 301 Missing alt text, decorative images, icons (39/78 projects)
4 Form Labels (3.3.2) 238 Labels, input fields, form instructions (44/78 projects)
5 Headings and Labels (2.4.6) 228 Heading structure, descriptive labels (27/78 projects)

Key Insights

  • Keyboard Navigation is #1 Issue: 2,410 violations across 77 of 78 projects, by far the most prevalent accessibility barrier, especially in mobile apps and XR/VR interfaces
  • Color Contrast remains persistent: 1,431 violations across 75 of 78 projects, confirming this fundamental issue affects nearly every project regardless of type
  • Keyboard + Contrast = two-thirds of all issues: These two categories alone account for 3,841 of 5,812 total violations (66%), so fixing them has the biggest impact
  • Image Alt Text widespread: 301 violations in half of all projects, a quick win that is often overlooked
  • Form and label issues underestimated: 487 combined form-related violations (labels, ARIA naming, validation) across 44 projects
  • Advanced projects struggle with ARIA: Complex implementations often contain errors, suggesting need for better ARIA training

1Keyboard Navigation - 2,410 Violations

WCAG Reference: 2.1.1 Keyboard - Level A

The most common accessibility issue found, particularly affecting mobile apps and XR/VR applications that often lack proper keyboard alternatives.

Common Problems

  • Can't navigate the entire site using only Tab, Shift+Tab, Enter, Space, and arrow keys
  • Dropdown menus not accessible via keyboard
  • Modals don't trap focus properly
  • Custom components (sliders, carousels) lack keyboard support
  • Missing skip links for main content

Quick Test: Unplug your mouse → Use only Tab, Enter, Space, Arrow keys → Verify all functionality works


2Color Contrast Issues - 1,431 Violations

WCAG Reference: 1.4.3 Contrast (Minimum) - Level AA

A persistent and widespread issue, affecting everything from simple links to complex modern UI patterns including dark themes, gradients, and subtle interactive states.

Common Problems

  • Links that don't meet the minimum 4.5:1 contrast ratio requirement
  • Focus indicators with insufficient contrast against backgrounds
  • Subtle hover states and button outlines that blend with backgrounds
  • Modern minimal design with insufficient contrast
  • Dark themes with inadequate light text contrast
  • Gradient backgrounds affecting text readability

Quick Test: Use a contrast checker → Verify all text meets 4.5:1 (normal) or 3:1 (large text) → Check focus indicators


3Form Accessibility - 487 Violations

WCAG Reference: 4.1.2 Name, Role, Value - Level A

Common Problems

  • Calendar and notification buttons without proper labels
  • Login and register elements missing labels
  • iframe elements without accessible names
  • Form validation errors shown without proper identification
  • Submit buttons with only icons and no text alternatives
  • Toggle buttons missing state information (pressed/unpressed)

Quick Test: Use screen reader → Navigate through form → Verify all fields and buttons are clearly announced


4Information and Relationships - 167 Violations

WCAG Reference: 1.3.1 Info and Relationships - Level A

Common Problems

  • H1 and H5 headings present, but intermediate heading levels (H2-H4) are skipped
  • Improper semantic structure breaking screen reader navigation
  • Content that looks like headings but isn't marked up as headings
  • Missing landmark regions (header, nav, main, aside, footer)

Quick Test: Use browser DevTools → Check document outline → Verify logical heading structure


WCAG Reference: 2.4.1 Bypass Blocks - Level A

Common Problems

  • No skip links provided on pages
  • Skip links that don't work or lead to wrong content
  • Skip links only visible on focus but poorly positioned
  • Missing skip links for repetitive content blocks

Quick Test: Press Tab on page load → Skip link appears → Press Enter → Focus jumps to main content


6Focus Visibility - 103 Violations

WCAG Reference: 2.4.7 Focus Visible - Level AA

Common Problems

  • Interactive elements without visible focus indicators
  • Focus indicators with insufficient contrast against backgrounds
  • CSS that removes all focus indicators (outline: none)
  • Focus indicators that disappear behind other elements

Quick Test: Use Tab key → Navigate through all interactive elements → Verify clear focus indicators


7Headings and Labels - 228 Violations

WCAG Reference: 2.4.6 Headings and Labels - Level AA

Common Problems

  • Generic headings like "Welcome" that don't describe content
  • Form labels that don't clearly explain what's expected
  • Links with generic text like "click here" or "read more"
  • Buttons labeled only with icons

Quick Test: Read headings out of context → Do they make sense? → Check form labels are clear


8Use of Color - 20 Violations

WCAG Reference: 1.4.1 Use of Color - Level A

Common Problems

  • Links only indicated by color without other visual cues
  • Form validation errors shown only in red color
  • Status indicators using only color (green=success, red=error)
  • Charts and graphs relying solely on color coding

Quick Test: Use grayscale filter → Check all information is still clear → Test with color blindness simulator


WCAG Reference: 2.4.4 Link Purpose (In Context) - Level A

Common Problems

  • Multiple "read more" or "click here" links on the same page
  • Links that don't describe their destination
  • Download links without file type or size information
  • Links that open in new windows without warning

Quick Test: Read link text alone → Does it make sense out of context? → Check external link warnings


10Reflow and Responsive Design - 149 Violations

WCAG Reference: 1.4.10 Reflow - Level AA

Common Problems

  • Fixed-width layouts that break when zoomed
  • Text that overlaps or disappears at high zoom levels
  • Horizontal scrolling required at 400% zoom
  • Content that becomes unusable on small screens

Quick Test: Zoom to 400% → Verify no horizontal scrolling → Check all content remains accessible


11Focus Order and Navigation - 122 Violations

WCAG Reference: 2.4.3 Focus Order - Level A

Common Problems

  • Sidebars that interrupt main content flow
  • Modal dialogs that don't trap focus properly
  • Dynamic content insertion breaking tab order
  • Skip links that don't work correctly
  • Illogical tab sequences that confuse keyboard users

Quick Test: Open modal → Press Tab → Verify focus stays within modal → Press Escape → Focus returns to trigger


12Image Alt Text - 301 Violations

WCAG Reference: 1.1.1 Non-text Content - Level A

Common Problems

  • Images don't have alternative text or are not descriptive
  • Icons lack alternative text descriptions
  • Decorative images with unnecessary alt text
  • Complex images without proper descriptions
  • Generic alt text like "image" or "photo"

Quick Test: Turn off images → Use screen reader → Verify all important visual information is conveyed through alt text


13ARIA Implementation Issues - 154 Violations

WCAG Reference: 4.1.2 Name, Role, Value - Level A

Common Problems

  • Incorrect ARIA landmark usage
  • Missing or wrong ARIA controls relationships
  • Custom components without proper ARIA states
  • Conflicting semantic markup and ARIA
  • Improper live region implementation

Quick Test: Use screen reader → Navigate landmarks → Test dynamic content → Verify state changes are announced


14Form Validation and Error Identification - 45 Violations

WCAG Reference: 3.3.1 Error Identification - Level A | 3.3.2 Labels or Instructions - Level A

Common Problems

  • Form validation errors shown without proper identification
  • Submit buttons with only icons and no text alternatives
  • Toggle buttons missing state information (pressed/unpressed)
  • Required fields not clearly marked
  • Error messages not announced to screen readers

Quick Test: Submit form with errors → Check error messages are announced → Verify error association with fields


15Page Language and Accessibility Name - 123 Violations

WCAG Reference: 3.1.1 Language of Page - Level A | 2.5.3 Label in Name - Level A

Common Problems

  • Missing lang attribute on html element
  • Accessible names that don't match visible text
  • Language changes not announced to screen readers
  • Voice control users can't activate elements by saying visible text

Quick Test: Check HTML lang attribute → Test voice control with button text → Verify language changes


Testing Checklist

Automated Testing

Manual Testing

  • Navigate entire site using only keyboard
  • Test with screen reader (NVDA, JAWS, VoiceOver)
  • Verify 400% zoom doesn't break layout
  • Check that all functionality works without color
  • Validate HTML structure and semantics
  • Keyboard Testing: Unplug your mouse and navigate with Tab, Arrow keys, Enter, Space

Code Review Points

  • All images have appropriate alt text
  • Forms have proper labels and validation
  • Heading structure is logical (no skipped levels)
  • Focus indicators are visible and have sufficient contrast
  • Interactive elements are keyboard accessible
  • Color is not the only way to convey information

Leave a Reply