Resources · Accessibility

The WCAG 2.2 AA checklist,in plain English.

All 55 Level A and AA success criteria in WCAG 2.2, grouped by the four principles. Each one says what it asks for, and whether ProCurveUX checks it automatically or it needs a person to test.

success criteria at A and AA
55
checked automatically
7
partly automatic
18
need a person
30
Principle 1 of 4

Perceivable

People can see or hear the content, whatever senses they use.

  • 1.1.1Non-text ContentLevel AImages, icons and controls have a text alternative that serves the same purpose.ProCurveUX checks: Informative image missing alt text · Decorative image announced to screen readers · Icon-only control without accessible namePartly automatic
  • 1.2.1Audio-only and Video-only (Prerecorded)Level ARecorded audio has a transcript; silent video has a transcript or audio track.Needs a person
  • 1.2.2Captions (Prerecorded)Level ARecorded video with sound has captions.Needs a person
  • 1.2.3Audio Description or Media Alternative (Prerecorded)Level AWhat happens on screen in a video is described in audio or in text.Needs a person
  • 1.2.4Captions (Live)Level AALive video with sound has captions.Needs a person
  • 1.2.5Audio Description (Prerecorded)Level AARecorded video has an audio description of important visual detail.Needs a person
  • 1.3.1Info and RelationshipsLevel AHeadings, lists, labels and regions are marked up, not just styled to look that way.ProCurveUX checks: Input missing programmatic label · Heading level skipped · Missing or duplicate h1 · Landmark regions missingPartly automatic
  • 1.3.2Meaningful SequenceLevel AThe reading order in the code matches the order that makes sense on screen.ProCurveUX checks: DOM order does not match visual orderPartly automatic
  • 1.3.3Sensory CharacteristicsLevel AInstructions do not rely only on shape, position or sound ("click the round button on the right").Needs a person
  • 1.3.4OrientationLevel AAThe page works in both portrait and landscape.Needs a person
  • 1.3.5Identify Input PurposeLevel AAFields for personal details say what they are for (autocomplete), so browsers can fill them.Needs a person
  • 1.4.1Use of ColorLevel AColour is never the only way information is shown, such as links or errors.ProCurveUX checks: Information conveyed by color alonePartly automatic
  • 1.4.2Audio ControlLevel AAudio that plays by itself for more than 3 seconds can be paused or turned down.ProCurveUX checks: Autoplaying media without controlPartly automatic
  • 1.4.3Contrast (Minimum)Level AAText has a contrast ratio of at least 4.5:1, or 3:1 for large text.ProCurveUX checks: Body text contrast below minimum · Large text contrast below minimum · Text over image without contrast protectionChecked automatically
  • 1.4.4Resize TextLevel AAText can be zoomed to 200% without losing content or function.ProCurveUX checks: Zoom disabledPartly automatic
  • 1.4.5Images of TextLevel AAText is real text, not a picture of text, except logos.Needs a person
  • 1.4.10ReflowLevel AAAt 320 CSS pixels wide, content fits without scrolling sideways.ProCurveUX checks: Page scrolls sideways on a phonePartly automatic
  • 1.4.11Non-text ContrastLevel AAField borders, controls, focus rings and meaningful graphics have at least 3:1 contrast.ProCurveUX checks: UI component boundary contrast below minimum · Focus indicator contrast insufficientPartly automatic
  • 1.4.12Text SpacingLevel AANothing breaks when people increase line, letter and word spacing.Needs a person
  • 1.4.13Content on Hover or FocusLevel AATooltips and pop-ups shown on hover can be dismissed, hovered over, and stay until moved away from.Needs a person
Principle 2 of 4

Operable

People can use every control, with a mouse, a keyboard, touch or assistive technology.

  • 2.1.1KeyboardLevel AEverything can be done with a keyboard alone.ProCurveUX checks: Hover-dependent content on touch-capable viewportPartly automatic
  • 2.1.2No Keyboard TrapLevel AKeyboard focus can always move out of any element it enters.ProCurveUX checks: Keyboard trapChecked automatically
  • 2.1.4Character Key ShortcutsLevel ASingle-key shortcuts can be turned off or remapped.Needs a person
  • 2.2.1Timing AdjustableLevel ATime limits can be turned off, adjusted or extended.ProCurveUX checks: Timeout or auto-dismiss too short to readPartly automatic
  • 2.2.2Pause, Stop, HideLevel AMoving, blinking or auto-updating content can be paused, stopped or hidden.ProCurveUX checks: Autoplaying media without controlPartly automatic
  • 2.3.1Three Flashes or Below ThresholdLevel ANothing flashes more than three times a second.ProCurveUX checks: Flashing contentPartly automatic
  • 2.4.1Bypass BlocksLevel APeople can skip repeated blocks, such as with a skip link or landmarks.ProCurveUX checks: Skip link missing · Landmark regions missingChecked automatically
  • 2.4.2Page TitledLevel AEach page has a title that says what it is.ProCurveUX checks: Non-descriptive page titleChecked automatically
  • 2.4.3Focus OrderLevel AKeyboard focus moves in an order that keeps meaning.ProCurveUX checks: DOM order does not match visual orderPartly automatic
  • 2.4.4Link Purpose (In Context)Level AEach link says where it goes, alone or with its sentence.ProCurveUX checks: Non-descriptive link textPartly automatic
  • 2.4.5Multiple WaysLevel AAThere is more than one way to find a page, such as navigation and search.Needs a person
  • 2.4.6Headings and LabelsLevel AAHeadings and labels describe the topic or purpose.Needs a person
  • 2.4.7Focus VisibleLevel AAKeyboard focus is always visible.ProCurveUX checks: Focus indicator suppressedChecked automatically
  • 2.4.11Focus Not Obscured (Minimum)Level AANew in 2.2A focused element is never fully hidden behind sticky headers, banners or pop-ups.Needs a person
  • 2.5.1Pointer GesturesLevel AAnything done with a multi-finger or path gesture also works with a single tap.Needs a person
  • 2.5.2Pointer CancellationLevel AActions fire when the finger or button is released, so a slip can be undone.Needs a person
  • 2.5.3Label in NameLevel AA control’s accessible name contains the words on it, so voice control works.Needs a person
  • 2.5.4Motion ActuationLevel AAnything triggered by shaking or tilting also has a button, and can be turned off.Needs a person
  • 2.5.7Dragging MovementsLevel AANew in 2.2Anything done by dragging can also be done with single taps or clicks.Needs a person
  • 2.5.8Target Size (Minimum)Level AANew in 2.2Targets are at least 24×24 CSS pixels, or have enough space around them. Inline links in text are exempt.ProCurveUX checks: Target size below minimum · Tap targets too small for a thumbChecked automatically
Principle 3 of 4

Understandable

People can understand the content and predict what the interface will do.

  • 3.1.1Language of PageLevel AThe page declares its language, so screen readers pronounce it correctly.ProCurveUX checks: Missing or incorrect lang attributeChecked automatically
  • 3.1.2Language of PartsLevel AAPassages in another language are marked as such.Needs a person
  • 3.2.1On FocusLevel AFocusing an element does not change the page or context on its own.Needs a person
  • 3.2.2On InputLevel AChanging a field does not cause an unexpected change of context.Needs a person
  • 3.2.3Consistent NavigationLevel AARepeated navigation appears in the same order on every page.Needs a person
  • 3.2.4Consistent IdentificationLevel AAThings that do the same job are labelled the same way everywhere.Needs a person
  • 3.2.6Consistent HelpLevel ANew in 2.2Help, such as contact details or chat, is in the same place on every page that has it.Needs a person
  • 3.3.1Error IdentificationLevel AErrors are described in text and the field at fault is identified.Needs a person
  • 3.3.2Labels or InstructionsLevel AFields have visible labels or instructions.ProCurveUX checks: Input missing programmatic label · Placeholder used as the only label · Required and optional fields not distinguishedPartly automatic
  • 3.3.3Error SuggestionLevel AAError messages say how to fix the problem when that is known.ProCurveUX checks: Error message states the problem without the correctionPartly automatic
  • 3.3.4Error Prevention (Legal, Financial, Data)Level AALegal, financial or data-changing submissions can be checked, corrected or reversed.ProCurveUX checks: Destructive action without confirmation or undoPartly automatic
  • 3.3.7Redundant EntryLevel ANew in 2.2People are not asked to type the same information twice in one process.Needs a person
  • 3.3.8Accessible Authentication (Minimum)Level AANew in 2.2Logging in does not depend on a memory or puzzle test, unless an alternative or help is offered.Needs a person
Principle 4 of 4

Robust

The code works with today’s browsers and assistive technology, and tomorrow’s.

  • 4.1.2Name, Role, ValueLevel AEvery control exposes its name, role and state to assistive technology.ProCurveUX checks: Icon-only control without accessible name · Input missing programmatic labelPartly automatic
  • 4.1.3Status MessagesLevel AAStatus messages, such as "Added to basket", are announced without moving focus.Needs a person
Before you rely on it

What this checklist is, and isn’t.

Automated checks are a first pass

Software can measure contrast, target sizes, labels and page structure. It cannot tell whether alt text is accurate, whether captions match the audio, or whether a form makes sense with a screen reader. Most criteria above need a person for at least part of the test.

Not a legal certification

Passing ProCurveUX’s checks does not certify a site as accessible or compliant with any law. For why that matters, see what the ADA website lawsuit numbers show.

What’s left out

Level AAA criteria are not listed. 4.1.1 Parsing is also left out: WCAG 2.2 marks it obsolete and removed. The full standard is at w3.org/TR/WCAG22.

Find the accessibility failures a machine can catch, in a minute.

Paste a URL. Every finding comes with the element, the rule behind it and the fix.

Free first audit. Just your email. No card, no install.