WCAG 2.2 AA checklist
All 55 success criteria a page must meet for WCAG 2.2 Level AA, with a one-line test for each in our own words. The criterion names link to the normative W3C text, which is what counts.
1. Perceivable
| Criterion | Level | What to check | Automated here |
|---|---|---|---|
| 1.1.1 Non-text Content | A | Every image, icon and control has a text alternative that serves the same purpose; decorative images are hidden from assistive technology. | Partly |
| 1.2.1 Audio-only and Video-only (Prerecorded) | A | Recorded audio-only content has a transcript; recorded video-only content has a transcript or audio track. | No |
| 1.2.2 Captions (Prerecorded) | A | Recorded videos with sound have accurate, synchronised captions. | Partly |
| 1.2.3 Audio Description or Media Alternative (Prerecorded) | A | Recorded videos have audio description or a full text alternative for visual information. | No |
| 1.2.4 Captions (Live) | AA | Live video with sound (webinars, streams) has live captions. | No |
| 1.2.5 Audio Description (Prerecorded) | AA | Recorded videos have audio description of important visual information not conveyed in the soundtrack. | No |
| 1.3.1 Info and Relationships | A | Headings, lists, tables, form labels and groups are marked up so their structure is available to assistive technology. | Partly |
| 1.3.2 Meaningful Sequence | A | With styles off or at narrow widths, content still reads in a sensible order. | No |
| 1.3.3 Sensory Characteristics | A | Instructions don't rely only on shape, colour, size, position or sound ("click the round button on the right"). | No |
| 1.3.4 Orientation | AA | The page works in both portrait and landscape unless one orientation is essential. | No |
| 1.3.5 Identify Input Purpose | AA | Fields asking for the user's own data (name, email, address, phone) carry the right autocomplete value. | Partly |
| 1.4.1 Use of Color | A | Colour is never the only way information is shown: links in text, errors and chart series have another cue. | No |
| 1.4.2 Audio Control | A | Audio that plays automatically for more than 3 seconds can be paused or muted. | Partly |
| 1.4.3 Contrast (Minimum) | AA | Text has a contrast ratio of at least 4.5:1, or 3:1 for large text, against its background. | Partly |
| 1.4.4 Resize Text | AA | Zooming text to 200% loses no content or function; pinch zoom is not blocked. | Partly |
| 1.4.5 Images of Text | AA | Text is real text, not pictures of text, except logos or where the presentation is essential. | No |
| 1.4.10 Reflow | AA | At 320 CSS px wide (400% zoom) content reflows with no two-way scrolling, except for maps, tables and similar. | No |
| 1.4.11 Non-text Contrast | AA | Control borders, focus indicators and meaningful graphics have at least 3:1 contrast against adjacent colours. | No |
| 1.4.12 Text Spacing | AA | Increasing line height, paragraph, letter and word spacing to the WCAG values loses no content. | No |
| 1.4.13 Content on Hover or Focus | AA | Tooltips and pop-ups shown on hover or focus can be dismissed, hovered and stay until dismissed. | No |
2. Operable
| Criterion | Level | What to check | Automated here |
|---|---|---|---|
| 2.1.1 Keyboard | A | Everything can be done with the keyboard alone, with no specific timing. | No |
| 2.1.2 No Keyboard Trap | A | Focus can always be moved away from any component with the keyboard. | No |
| 2.1.4 Character Key Shortcuts | A | Single-key shortcuts can be turned off, remapped, or work only when the component has focus. | No |
| 2.2.1 Timing Adjustable | A | Time limits can be turned off, adjusted or extended, and pages don't refresh or redirect on a timer. | Partly |
| 2.2.2 Pause, Stop, Hide | A | Moving, blinking, scrolling or auto-updating content that lasts over 5 seconds can be paused, stopped or hidden. | Partly |
| 2.3.1 Three Flashes or Below Threshold | A | Nothing flashes more than three times in any one second. | No |
| 2.4.1 Bypass Blocks | A | There is a skip link, landmarks or headings that let users bypass repeated navigation. | Partly |
| 2.4.2 Page Titled | A | Each page has a title that describes its topic or purpose. | Partly |
| 2.4.3 Focus Order | A | Tabbing moves through the page in an order that keeps meaning and operation intact. | Partly |
| 2.4.4 Link Purpose (In Context) | A | Each link's purpose is clear from its text, or from its text together with its sentence, list item or table cell. | Partly |
| 2.4.5 Multiple Ways | AA | There is more than one way to find a page in a set: navigation, search, sitemap or links. | No |
| 2.4.6 Headings and Labels | AA | Headings and labels describe the topic or purpose of the content they introduce. | Partly |
| 2.4.7 Focus Visible | AA | The keyboard focus is always visible. | Partly |
| 2.4.11 Focus Not Obscured (Minimum)New in 2.2 | AA | A focused component is never entirely hidden by sticky headers, footers, cookie banners or other content. | No |
| 2.5.1 Pointer Gestures | A | Anything done with a multi-point or path gesture (pinch, swipe) can also be done with a single tap or click. | No |
| 2.5.2 Pointer Cancellation | A | Actions fire on release (up event), or can be aborted or undone. | No |
| 2.5.3 Label in Name | A | A control's accessible name contains the text visibly shown on it. | Partly |
| 2.5.4 Motion Actuation | A | Anything triggered by shaking or tilting the device can also be done with a control, and motion can be turned off. | No |
| 2.5.7 Dragging MovementsNew in 2.2 | AA | Anything done by dragging (sliders, reordering, maps) can also be done with single clicks or taps. | Partly |
| 2.5.8 Target Size (Minimum)New in 2.2 | AA | Click and tap targets are at least 24 by 24 CSS pixels, or have enough spacing, unless an exception applies. | Partly |
3. Understandable
| Criterion | Level | What to check | Automated here |
|---|---|---|---|
| 3.1.1 Language of Page | A | The page's main language is set in the html lang attribute. | Partly |
| 3.1.2 Language of Parts | AA | Passages in another language are marked with their own lang attribute. | Partly |
| 3.2.1 On Focus | A | Moving focus to a component doesn't open a new window, submit a form or move focus elsewhere. | No |
| 3.2.2 On Input | A | Changing a setting (select, checkbox, radio) doesn't cause an unexpected change of context without warning. | No |
| 3.2.3 Consistent Navigation | AA | Navigation repeated across pages appears in the same relative order. | No |
| 3.2.4 Consistent Identification | AA | Components with the same function are labelled the same way across pages. | No |
| 3.2.6 Consistent HelpNew in 2.2 | A | Help options (contact details, chat, FAQ link) appear in the same relative place on every page that has them. | No |
| 3.3.1 Error Identification | A | Input errors are detected, the field is identified and the error is described in text. | No |
| 3.3.2 Labels or Instructions | A | Fields have visible labels or instructions, including required formats. | Partly |
| 3.3.3 Error Suggestion | AA | When an error is detected and a fix is known, the fix is suggested in text. | No |
| 3.3.4 Error Prevention (Legal, Financial, Data) | AA | Legal, financial or data-changing submissions can be reversed, are checked, or are confirmed before final submission. | No |
| 3.3.7 Redundant EntryNew in 2.2 | A | Information already entered in the same process is filled in or selectable, not asked for again. | No |
| 3.3.8 Accessible Authentication (Minimum)New in 2.2 | AA | Logging in doesn't require a cognitive test (remembering, transcribing, puzzles) unless an alternative or aid exists; paste and password managers work. | Partly |
4. Robust
| Criterion | Level | What to check | Automated here |
|---|---|---|---|
| 4.1.2 Name, Role, Value | A | Custom controls expose a name, role, state and value to assistive technology. | Partly |
| 4.1.3 Status Messages | AA | Status messages (results, errors, progress) are announced by screen readers without moving focus. | No |
"Partly" means the free checker tests some failures of that criterion; none of the 55 can be fully confirmed by a tool alone.