WCAG 2.2 AA checklist in plain English
To meet WCAG 2.2 Level AA a page must pass 55 success criteria: 31 at Level A and 24 at Level AA (W3C, current version dated 12 December 2024). The full list is below, each with a plain-English line and a quick test. Six of them are new in 2.2, marked 'new in 2.2', and the old 4.1.1 Parsing rule was removed.
All 55 WCAG 2.2 Level A and AA success criteria
| # | Criterion | Level | In plain words | Quick test |
|---|---|---|---|---|
| 1.1.1 | Non-text Content | A | Meaningful images, icons and image buttons have a text alternative; decoration is hidden | Check each image's alt text says what it shows or does |
| 1.2.1 | Audio-only and Video-only (Prerecorded) | A | Audio-only has a transcript; silent video has a text or audio description | Look for a transcript link next to podcasts |
| 1.2.2 | Captions (Prerecorded) | A | Recorded videos with sound have accurate captions | Turn captions on; read along for errors |
| 1.2.3 | Audio Description or Media Alternative (Prerecorded) | A | Important visual information in videos is described in audio or text | Listen without watching: is anything lost? |
| 1.2.4 | Captions (Live) | AA | Live video streams have captions | Check the live player for a captions option |
| 1.2.5 | Audio Description (Prerecorded) | AA | Recorded videos have audio description of key visuals | Look for an audio-described version or track |
| 1.3.1 | Info and Relationships | A | Headings, lists, tables and form labels are real HTML, not just bold or big text | View the heading outline (browser extension or screen reader) |
| 1.3.2 | Meaningful Sequence | A | Reading order in the code makes sense | Tab and read with a screen reader: does the order match the screen? |
| 1.3.3 | Sensory Characteristics | A | Instructions do not rely only on shape, colour, size or position | Search the text for 'click the green button' or 'on the right' |
| 1.3.4 | Orientation | AA | The page works in both portrait and landscape | Rotate a phone |
| 1.3.5 | Identify Input Purpose | AA | Personal fields (name, email, phone) use the right autocomplete setting | Check that the browser offers to autofill the fields |
| 1.4.1 | Use of Color | A | Colour is never the only way to show meaning (errors, links, charts) | View the page in greyscale |
| 1.4.2 | Audio Control | A | Sound that plays by itself for over 3 seconds can be paused or muted | Load the page with sound on |
| 1.4.3 | Contrast (Minimum) | AA | Text contrast at least 4.5:1, large text 3:1 | Contrast checker on the lightest text |
| 1.4.4 | Resize Text | AA | Text can be enlarged to 200% without losing content | Zoom the browser to 200% |
| 1.4.5 | Images of Text | AA | Real text is used instead of pictures of text (logos are fine) | Try to select the words with the mouse |
| 1.4.10 | Reflow | AA | Content fits a 320-pixel-wide screen without sideways scrolling | On a 1280-pixel laptop screen, zoom to 400% (= 320 px) |
| 1.4.11 | Non-text Contrast | AA | Buttons, field borders, focus rings and chart parts have 3:1 contrast | Contrast checker on a field border |
| 1.4.12 | Text Spacing | AA | Nothing breaks when users increase line, letter and word spacing | Apply a text-spacing bookmarklet |
| 1.4.13 | Content on Hover or Focus | AA | Tooltips and pop-ups can be dismissed, hovered and stay open | Hover a tooltip, press Esc, move the mouse onto it |
| 2.1.1 | Keyboard | A | Everything works with a keyboard | Put the mouse away and complete one task |
| 2.1.2 | No Keyboard Trap | A | Keyboard focus never gets stuck | Tab into every widget and out again |
| 2.1.4 | Character Key Shortcuts | A | Single-letter shortcuts can be turned off or changed | Press letter keys outside text fields |
| 2.2.1 | Timing Adjustable | A | Time limits can be turned off, adjusted or extended | Let a form or session sit idle |
| 2.2.2 | Pause, Stop, Hide | A | Moving, blinking or auto-updating content can be paused | Look for a pause button on carousels |
| 2.3.1 | Three Flashes or Below Threshold | A | Nothing flashes more than 3 times a second | Watch animations and videos |
| 2.4.1 | Bypass Blocks | A | A way to skip repeated blocks such as the menu (skip link or headings) | Press Tab once on load: is there a 'skip to content' link? |
| 2.4.2 | Page Titled | A | Each page has a clear, unique title | Read the browser tab |
| 2.4.3 | Focus Order | A | Tab order follows a logical path | Tab through the page |
| 2.4.4 | Link Purpose (In Context) | A | Link text (with its sentence) says where it goes | Search for 'click here' and 'read more' |
| 2.4.5 | Multiple Ways | AA | More than one way to find pages (menu, search, sitemap) | Check for search or a site map |
| 2.4.6 | Headings and Labels | AA | Headings and labels describe their topic or purpose | Read the headings alone: do they make sense? |
| 2.4.7 | Focus Visible | AA | You can always see which element has keyboard focus | Tab and watch for the focus ring |
| 2.4.11 | Focus Not Obscured (Minimum) | AA | The focused element is not fully hidden by sticky bars or pop-ups (new in 2.2) | Tab down the page with a cookie banner open |
| 2.5.1 | Pointer Gestures | A | Pinch, swipe or multi-finger actions also work with a single tap | Try maps and sliders with one finger |
| 2.5.2 | Pointer Cancellation | A | Actions fire on release, so a mistaken press can be cancelled by sliding away | Press a button, slide off, release |
| 2.5.3 | Label in Name | A | A control's spoken name includes its visible text | Use voice control: 'click Search' |
| 2.5.4 | Motion Actuation | A | Shake or tilt features also have a button and can be turned off | Look for shake-to-undo features |
| 2.5.7 | Dragging Movements | AA | Anything you drag can also be done with simple taps or clicks (new in 2.2) | Try sliders and drag-and-drop lists with taps only |
| 2.5.8 | Target Size (Minimum) | AA | Tap targets at least 24 x 24 CSS pixels, or spaced apart (new in 2.2) | Measure small icons in browser developer tools |
| 3.1.1 | Language of Page | A | The page states its main language in the code | Check for lang='en' (or similar) on the html tag |
| 3.1.2 | Language of Parts | AA | Passages in another language are marked | Check a Hindi or French quote has its own lang |
| 3.2.1 | On Focus | A | Moving focus onto something does not change the page by surprise | Tab onto fields and menus |
| 3.2.2 | On Input | A | Changing a setting does not trigger a surprise change unless warned | Pick an option in each dropdown |
| 3.2.3 | Consistent Navigation | AA | Menus appear in the same order on every page | Compare the menu on 3 pages |
| 3.2.4 | Consistent Identification | AA | The same function has the same name everywhere | Compare search and cart labels across pages |
| 3.2.6 | Consistent Help | A | Help options (contact, chat, FAQ) are in the same place on each page (new in 2.2) | Compare where 'Contact' sits on 3 pages |
| 3.3.1 | Error Identification | A | Errors are described in text | Submit the form empty |
| 3.3.2 | Labels or Instructions | A | Fields have visible labels or instructions | Look for fields that rely on placeholder text only |
| 3.3.3 | Error Suggestion | AA | Error messages suggest how to fix the problem | Type a wrong email format |
| 3.3.4 | Error Prevention (Legal, Financial, Data) | AA | Purchases and legal or data submissions can be checked, corrected or reversed | Look for a review step before payment |
| 3.3.7 | Redundant Entry | A | People are not asked to type the same information twice in one process (new in 2.2) | Go through checkout: is the address asked for twice? |
| 3.3.8 | Accessible Authentication (Minimum) | AA | Logging in does not require a memory or puzzle test; paste and password managers work (new in 2.2) | Paste a password into the login field |
| 4.1.2 | Name, Role, Value | A | Custom controls tell assistive technology what they are and their state | Screen reader on menus, tabs and toggles |
| 4.1.3 | Status Messages | AA | Messages like 'added to cart' are announced without moving focus | Screen reader while adding an item or submitting |
How to use this checklist
- Pick 3-5 key pages (home, a content page, a form, checkout).
- Run a free automated tool first - WAVE, axe DevTools or Lighthouse - to catch the easy failures such as contrast, missing alt text and missing labels.
- Work down the table by hand for the rest: keyboard, zoom, screen reader and form tests.
- Mark each row pass, fail or not applicable (for example 1.2.x if there is no video).
A page meets Level AA only when every applicable A and AA row passes. Our 30-minute self-check covers the quickest tests first.
Why automated tools are not enough
When the UK Government Digital Service tried 10 free tools on a deliberately broken page in 2017, 29% of the barriers it had planted were missed by every tool. Rows such as 1.3.2, 2.4.3, 2.4.6 and 3.3.3 need a person to judge.
Australia
The Disability Discrimination Act 1992 covers websites. The Australian Human Rights Commission's advisory notes (version 4.1, 2014, being updated) point to WCAG as the reference standard. This is general information, not legal advice.
Questions
- How many success criteria are in WCAG 2.2?
- 86 in total: 31 Level A, 24 Level AA and 31 Level AAA. Level AA conformance means passing all 55 A and AA criteria.
- Is WCAG 2.2 backwards compatible with 2.1?
- Yes. A page that meets 2.2 AA also meets 2.1 AA; 4.1.1 Parsing was removed in 2.2 because modern browsers made it obsolete.
- What does 'zoom to 400%' have to do with 320 pixels?
- On a 1280-pixel-wide laptop screen, 400% zoom leaves 320 CSS pixels of width - the same as a small phone. That is how the Reflow rule (1.4.10) is usually tested.
Sources
- W3C: Web Content Accessibility Guidelines (WCAG) 2.2, W3C Recommendation 12 December 2024
- W3C: What's new in WCAG 2.2
- Australian Human Rights Commission: World Wide Web Access advisory notes
- GOV.UK Accessibility blog (24 Feb 2017): testing 10 free tools on a deliberately broken page
See the WCAG 2.2 check
An automated WCAG 2.2 AA check on desktop and phone, then a person reviews every finding.