Skip to main content

The WCAG 2.2 guide: levels, criteria and common failures

What the Web Content Accessibility Guidelines actually require, what each conformance level means, what 2.2 added, and which of it a machine can check for you.

Last updated

What WCAG is

The Web Content Accessibility Guidelines are published by the World Wide Web Consortium. They are not law in themselves; they are the technical standard that accessibility law, procurement policy and litigation all end up pointing at, because they are the only widely agreed, testable definition of what accessible means.

WCAG 2.2 is the current Recommendation, published in October 2023. It is backwards compatible: meeting 2.2 means meeting 2.1 and 2.0 as well. Regulations differ on which version they name — some still cite 2.0 or 2.1 — so check the rule that applies to you rather than assuming. This product tests against 2.2 Level AA.

The standard is organised as four principles, each holding guidelines, each holding numbered success criteria that are individually testable and assigned a level of A, AA or AAA. When someone says “4.1.2”, that is a success criterion.

The World Health Organization estimates that about 1.3 billion people — roughly 16% of the world — live with a significant disability. Accessibility work is not a minority accommodation, and most of it improves the interface for everybody.

The four principles

Every success criterion lives under one of these four. The numbers below are the guidelines inside each principle.

  • P

    Perceivable

    Information and interface components must be presentable in ways people can perceive — if it can only be seen, or only be heard, someone is shut out.

    • 1.1 Text alternatives for non-text content
    • 1.2 Captions, transcripts and audio description for media
    • 1.3 Structure and relationships that survive being re-presented
    • 1.4 Distinguishable — contrast, resize, reflow, audio control
  • O

    Operable

    Every control must be operable by every input method — including a keyboard alone, which is how a screen-reader user drives a page.

    • 2.1 Keyboard accessible, with no traps
    • 2.2 Enough time to read and act
    • 2.3 Nothing that flashes into a seizure
    • 2.4 Navigable — skip links, titles, focus order, visible focus
    • 2.5 Input modalities — pointer, motion, target size, dragging
  • U

    Understandable

    Content and behaviour must be predictable. A page that changes under you, or reports an error without saying what to do, fails people well beyond its target audience.

    • 3.1 Readable — language of the page and of passages
    • 3.2 Predictable — no surprise context changes
    • 3.3 Input assistance — identify errors, suggest fixes, prevent loss
  • R

    Robust

    Markup must survive contact with assistive technology it was never tested against. This is the principle a custom component breaks first.

    • 4.1 Compatible — valid name, role and value for every control

Conformance levels

Three levels, each inclusive of the one below. They are not a quality scale, which is why they are not colour-coded here.

  • Level

    A

    The floor. Fail one of these and a whole group of people is locked out rather than inconvenienced.

    1.1.1
    Non-text content has a text alternative
    2.1.1
    Everything works from the keyboard
    2.1.2
    No keyboard trap
  • Level

    AA

    What regulation and procurement generally ask for, and what this product tests against by default.

    1.4.3
    Contrast of at least 4.5:1 for body text
    2.4.7
    Focus is visible
    3.3.3
    Errors suggest a correction
  • Level

    AAA

    A higher bar for specific content. W3C does not recommend it as a site-wide target, because some criteria cannot be met by some kinds of content at all.

    1.4.6
    Enhanced contrast of 7:1
    1.2.6
    Sign language for prerecorded audio
    1.2.7
    Extended audio description

Aim for AA. It is the level regulation and procurement generally ask for. Conforming to it is not the same as being legally compliant — that depends on which rule applies to you and on things no standard measures — but it is the thing everyone agrees to measure.

What 2.2 added

Nine success criteria arrived with 2.2 in October 2023. Six are A or AA, so they are inside the bar most teams are already aiming at.

Success criteria added in WCAG 2.2, with their conformance level and what each requires.
CriterionLevelWhat it requires
2.4.11Focus Not Obscured (Minimum)AAA sticky header must not cover the element you just tabbed to.
2.5.7Dragging MovementsAAAnything draggable needs a single-pointer alternative — a reorder that only works by drag excludes a lot of people.
2.5.8Target Size (Minimum)AAControls are at least 24 by 24 CSS pixels, or spaced as though they were.
3.2.6Consistent HelpAIf help is offered, it sits in the same place on every page that offers it.
3.3.7Redundant EntryADo not ask twice for the same information in one process.
3.3.8Accessible Authentication (Minimum)AANo cognitive function test — puzzles, transcription, recall — without an alternative. This is the one that catches a lot of sign-in flows.
2.4.12Focus Not Obscured (Enhanced)AAANo part of the focused element is covered.
2.4.13Focus AppearanceAAAA minimum size and contrast for the focus indicator itself.
3.3.9Accessible Authentication (Enhanced)AAAThe same rule, without the object-recognition exception.

2.2 also removed one: 4.1.1 Parsing is obsolete, because the parsing failures it described no longer break assistive technology in the way they did when it was written.

Common failures

The ones that come up again and again, what they do to somebody, and the fix.

  • Images with no text alternative

    A screen reader announces the filename, or nothing at all.

    Give every meaningful image an alt attribute; mark decorative ones alt="".

  • Contrast below the threshold

    Text disappears for low-vision users and in bright light for everyone.

    Measure it. 4.5:1 for body text, 3:1 for large text and for UI component boundaries.

  • Inputs with no associated label

    The field announces as “edit, blank” and cannot be told from the one beside it.

    Associate a <label for> with the input, or give it an aria-label.

  • No way to skip repeated navigation

    Keyboard users tab through the same menu on every page before reaching content.

    Put a skip link first in the DOM and give the target tabindex="-1".

  • Controls that are not focusable

    A div with a click handler does not exist for anyone not using a mouse.

    Use a real button or link. If you cannot, add role, tabindex and key handling.

  • Focus that disappears

    A keyboard user loses their place entirely and has to start over.

    Never remove the focus outline without drawing a replacement with real contrast.

What a scanner can and cannot check

Automated rule checking is genuinely useful and genuinely partial. Knowing which half you are looking at is most of the skill.

A machine can decide this

  • Missing alt attributes
  • Contrast below threshold
  • Inputs with no accessible name
  • Invalid ARIA roles and attributes
  • Missing document language
  • Duplicate element IDs

A person has to decide this

  • Whether alt text describes the image usefully
  • Whether focus order matches the visual order
  • Whether an error message tells you what to do
  • Whether a workaround for a broken control actually works
  • Whether the reading sequence makes sense
  • Whether a task can be completed end to end

More than half of the success criteria fall in the right-hand column. A page that passes every automated rule can still be impossible to check out of — which is the specific gap journey simulation exists to close, and why a clean scan is never sold here as proof of anything more than a clean scan.

WCAG 2.2 success criteria, one at a time

What each criterion requires, whether automated testing can check it, common failures, and how to test it by hand.

See which criteria your site already passes.

Scan every URL you own against WCAG 2.2 Level AA, unmetered on every paid plan, or check a single page free. The half a scanner cannot judge is what journey simulation is for.