Skip to main content

WCAG 2.2 Card Deck

Browse all WCAG 2.2 Level A, AA and AAA success criteria as interactive cards

Deck by Johannes LehnerFigmaGitHub
Principle:
Level:

Showing 87 of 87 criteria

WCAG 1.1.1 Non-text content - Level A
Perceivable

All images and other non-text content (like icons, charts, audio, CAPTCHAs, or controls) must have a descriptive text alternative that conveys their meaning. Purely decorative content can be hidden from assistive technologies (e.g. using an empty **_alt_** attribute).

All non-text content needs text alternatives so screen readers and assistive technologies can convey their meaning. This includes images, icons, charts, form controls, and audio CAPTCHAs. Decorative images should be marked so they're ignored by assistive technology.

WCAG 1.2.1 Audio-only and video-only (prerecorded) - Level A
Perceivable

Prerecorded audio-only content must have a text transcript. Prerecorded video-only content must have a text or audio description.

WCAG 1.2.2 Captions (prerecorded) - Level A
Perceivable

Prerecorded videos with audio must have synchronized captions that include * all speech * relevant sound effects (like music, alarms, or laughter).

WCAG 1.2.3 Audio description or media alternative (prerecorded) - Level A
Perceivable

Important visual content in prerecorded videos must be described using * an audio description or * a text-based alternative.

WCAG 1.3.1 Info and relationships - Level A
Perceivable

Visual information and relationships (like labels, headings, or groupings) must also be conveyed in the code using: * semantic HTML (e.g. **_<label for="">_**, **_<ul>_**, **_<h1>_**), or * ARIA attributes (e.g. **_aria-describedby_**, **_role="group"_**), so that assistive technologies can understand the structure.

WCAG 1.3.2 Meaningful sequence - Level A
Perceivable

Content must follow a logical and meaningful order in the code so it can be understood correctly by assistive technologies even if the visual layout differs.

WCAG 1.3.3 Sensory characteristics - Level A
Perceivable

Instructions and descriptions must not rely on sensory features alone, like color, shape, size, visual location, or sound. Always provide additional text to clarify meaning.

WCAG 1.4.1 Use of color - Level A
Perceivable

Color must not be the only way to convey information. Always provide an additional visual cue, like icon, text label, underline, shape, or pattern (e.g. striped, solid).

WCAG 1.4.2 Audio control - Level A
Perceivable

If audio plays automatically for more than 3 seconds, it must be possible to * pause the audio, * stop the audio, or * adjust the volume, without using system-wide controls.

WCAG 1.2.4 Captions (live) - Level AA
Perceivable

Live video with audio must include real-time captions that cover * speech and * important sound effects (like music, alarms, or laughter).

WCAG 1.2.5 Audio description (prerecorded) - Level AA
Perceivable

Important visual content in prerecorded videos with audio must be described using * an audio description, unless it is already explained in the main audio track.

WCAG 1.3.4 Orientation - Level AA
Perceivable

Content must remain readable and usable in both portrait and landscape orientation, unless a specific one is essential (e.g. in a piano app that requires landscape to show the full keyboard).

WCAG 1.3.5 Identify input purpose - Level AA
Perceivable

The purpose of common form fields (like name, email, or address) must be defined in the code so that browsers and assistive technologies can offer input support, such as autocomplete.

WCAG 1.4.3 Contrast (minimum) - Level AA
Perceivable

Text contrast against its background must be at least * 4.5:1 for normal text, or * 3:1 for large text (over 24px, or bold and over 19px).

Sufficient color contrast ensures text is readable for users with low vision, color blindness, or viewing in bright conditions. The contrast ratio is calculated based on the relative luminance of text and background colors.

WCAG 1.4.4 Resize text - Level AA
Perceivable

Text remains readable and usable when * zoomed to 200%.

WCAG 1.4.5 Images of text - Level AA
Perceivable

Text must be actual text, not images of text, unless a specific visual presentation is absolutely necessary (e.g. logo).

WCAG 1.4.10 Reflow - Level AA
Perceivable

Content remains functional and easy to read when * zoomed to 400% or * viewed at 320px width, without needing to scroll in two directions (except for tables, maps, and similar content).

WCAG 1.4.11 Non-text contrast - Level AA
Perceivable

Interactive controls (e.g. buttons, form fields, focus indicators) and graphics that convey meaning (e.g. icons, charts, graph lines) must have a contrast ratio of at least 3:1 against adjacent colors.

WCAG 1.4.12 Text spacing - Level AA
Perceivable

Text remains readable and usable when spacing is changed using custom styles to at least * 1.5× line height, * 2× spacing after paragraphs, * 0.12× letter spacing, * 0.16× word spacing, without content being hidden, cut off, or broken.

WCAG 1.4.13 Content on hover or focus - Level AA
Perceivable

When additional content appears on hover or keyboard focus (including long press on touch), it must * stay visible until dismissed or no longer valid, * be dismissible (e.g. using the **[esc]** key), and * remain visible when hovered or focused.

WCAG 1.2.6 Sign language (prerecorded) - Level AAA
Perceivable

All prerecorded videos with audio must include a sign language interpretation.

WCAG 1.2.7 Extended audio description (prerecorded) - Level AAA
Perceivable

Prerecorded videos must include extended audio descriptions if important visual content like * important visual details, * on-screen text not spoken aloud, or * scenes without natural audio breaks can't be described during normal playback.

WCAG 1.2.8 Media alternative (prerecorded) - Level AAA
Perceivable

Prerecorded videos must have a full text alternative that includes: * all speech, * relevant sound effects (like music, alarms, or laughter), and * important visual content, even if captions and audio descriptions are already available.

WCAG 1.2.9 Audio-only (live) - Level AAA
Perceivable

Live audio-only content must include a real-time text alternative, such as * captions, or * live transcripts.

WCAG 1.3.6 Identify purpose - Level AAA
Perceivable

The purpose of regions and common elements must be defined in the code using semantic HTML or ARIA attributes, so that * assistive technologies can communicate their meaning, and * browsers can adapt or simplify the interface (e.g. hide non-essential content).

WCAG 1.4.6 Contrast (enhanced) - Level AAA
Perceivable

Text contrast against its background must be at least * 7:1 for normal text, or * 4.5:1 for large text (over 24px, or bold and over 19px).

WCAG 1.4.7 Low or no background audio - Level AAA
Perceivable

For prerecorded audio with speech, any background sound must be * at least 20dB lower than the speech, or * there must be a way to turn it off.

WCAG 1.4.8 Visual presentation - Level AAA
Perceivable

Blocks of text (like paragraphs) must * have a line height of at least 1.5, * not be justified, and * stay within 80 characters (or 40 for CJK scripts). * allow users to adjust spacing and colors using custom styles.

WCAG 1.4.9 Images of text (no exception) - Level AAA
Perceivable

Text must be actual text, not images of text (no exception, not even for design or aesthetic reasons).

WCAG 2.1.1 Keyboard - Level A
Operable

All functionality must be operable using a keyboard alone, unless the task requires freehand input (e.g. drawing).

Users who cannot use a mouse—including those with motor disabilities, blind users with screen readers, and power users—must be able to operate all functionality with a keyboard. This includes navigation, form controls, custom widgets, and interactive elements.

WCAG 2.1.2 No keyboard trap - Level A
Operable

It must always be possible to move focus into and out of any component using a keyboard alone (e.g. **[tab]**, **[shift]**+**[tab]**, **[enter]**, **[esc]**), without getting stuck.

WCAG 2.1.4 Character key shortcuts - Level A
Operable

Keyboard shortcuts should use modifier keys like **[ctrl]**, **[cmd]**, or **[alt/option]**. If single-key shortcuts are used (e.g. 'S' for save), it must be possible to * turn them off, * remap them with a modifier key, or * restrict them to when the relevant element is focused.

WCAG 2.2.1 Timing adjustable - Level A
Operable

Time limits must be avoided unless essential for the task (e.g. exams, auctions). If time limits are used, it must be possible to * turn them off, * adjust them to at least 10× the default, or * extend them by at least 10×.

WCAG 2.2.2 Pause, stop, hide - Level A
Operable

If content moves, scrolls, blinks, or updates automatically for more than 5 seconds, it must be possible to * pause it, * stop it, or * hide it.

WCAG 2.3.1 Three flashes or below threshold - Level A
Operable

Content must not flash, blink, or flicker more than three times per second, unless it stays within safety limits designed to avoid visual overload and reduce the risk of seizures.

WCAG 2.4.1 Bypass blocks - Level A
Operable

It must be possible to skip repeated blocks of content (e.g. navigation, header) and jump directly to the main part of the page.

WCAG 2.4.2 Page titled - Level A
Operable

Each page must have a unique and descriptive **_<title>_** that reflects its topic or purpose.

WCAG 2.4.3 Focus order - Level A
Operable

Focus must follow a logical and meaningful order that preserves relationships and matches how the page is naturally read, regardless of layout or language direction.

WCAG 2.4.4 Link purpose (in context) - Level A
Operable

The purpose of each link must be clear from * the link text itself, or * the surrounding context.

WCAG 2.5.1 Pointer gestures - Level A
Operable

Actions that rely on gestures (like swiping or pinching) must also be possible using a single tap, click, or button.

WCAG 2.5.2 Pointer cancellation - Level A
Operable

Actions must not trigger on press or touch down. They must only trigger on release (like mouse-up or finger lift).

WCAG 2.5.3 Label in Name - Level A
Operable

The visible text of a button, link, or form field must also be part of its accessible (programmatic) name.

WCAG 2.5.4 Motion actuation - Level A
Operable

If an action can be triggered by motion (like shaking or tilting the device), it must also * work without motion, and * be possible to turn off motion-based input.

WCAG 2.4.5 Multiple ways - Level AA
Operable

At least two different ways must be available to find pages or content (e.g. navigation menus, on-page links, site search, or a sitemap).

WCAG 2.4.6 Headings and labels - Level AA
Operable

Headings must describe what follows. Labels and buttons must clearly communicate what information is needed or what action will happen.

WCAG 2.4.7 Focus visible - Level AA
Operable

A visible indicator must show which element is currently focused when navigating with a keyboard.

WCAG 2.4.11 Focus not obscured (minimum) - Level AA
Operable

When an element receives focus, it must be at least partially visible.

WCAG 2.4.13 Focus appearance - Level AA
Operable

The visible focus indicator must * be at least 2px thick, * have a contrast ratio of 3:1 compared to the unfocused state, and * be clearly connected to the focused element.

WCAG 2.5.7 Dragging movements - Level AA
Operable

Actions that require dragging (like reordering) must also be possible using buttons or another method that does not require dragging.

WCAG 2.5.8 Target size (minimum) - Level AA
Operable

Targets must be at least 24×24px, unless they are * part of a sentence or block of text, * surrounded by enough space, or * near another target with the same function that meets the size.

WCAG 2.1.3 Keyboard (no exception) - Level AAA
Operable

All functionality must be operable using a keyboard alone (no exception, not even for tasks involving gestures like drag-and-drop or pointer-based interaction).

WCAG 2.2.3 No timing - Level AAA
Operable

Content must not include time limits for reading or interaction, unless it's part of a live event or time-based activity (e.g. auctions, broadcasts).

WCAG 2.2.4 Interruptions - Level AAA
Operable

Interruptions (like pop-ups, alerts, or notifications) must be able to be * delayed or suppressed, and * controlled, except in emergencies (e.g. critical system warnings).

WCAG 2.2.5 Re-authenticating - Level AAA
Operable

When (re-)authentication is required (e.g. after session timeout), all previously entered data must be preserved so the task can continue without starting over.

WCAG 2.2.6 Timeouts - Level AAA
Operable

If inactivity could lead to data loss, a clear warning must be shown * before the timeout, * with enough time to react, and * including an option to extend the session.

WCAG 2.3.2 Three flashes - Level AAA
Operable

Content must not flash, blink, or flicker more than three times per second (no exception, not even if it meets safety thresholds).

WCAG 2.3.3 Animation from interactions - Level AAA
Operable

Animations triggered by interaction (e.g. on click, hover, tap) must be able to be * disable through system settings (e.g. "reduce motion"), or * turn off using a site-level option.

WCAG 2.4.8 Location - Level AAA
Operable

It must be clear where you are within a set of pages (e.g. using breadcrumbs, highlighted menu items, or headings).

WCAG 2.4.9 Link purpose (link only) - Level AAA
Operable

The purpose of each link must be clear * from the link text alone * without relying on surrounding context.

WCAG 2.4.10 Section headings - Level AAA
Operable

Related content must be organized into clear sections using headings.

WCAG 2.4.12 Focus not obscured (enhanced) - Level AAA
Operable

When an element receives focus, it must be fully visible and not covered by other content.

WCAG 2.5.5 Target size - Level AAA
Operable

Targets for touch or mouse must be at least 44×44px, unless they are * part of a sentence or block of text, * near another target with the same function that meets the size, or * in a context where size can't be increased.

WCAG 2.5.6 Concurrent input mechanisms - Level AAA
Operable

It must be possible to switch between input types (mouse, keyboard, touch, voice) without losing access to any functionality.

WCAG 3.1.1 Language of page - Level A
Understandable

Each page must have a **_<html lang="">_** attribute that matches the main language of the page.

WCAG 3.2.1 On focus - Level A
Understandable

No unexpected changes must happen when an element receives focus (like open a popup, move focus, submit a form).

WCAG 3.2.2 On input - Level A
Understandable

No unexpected changes must happen when a field value changes (like auto-submit, reload, open new page).

WCAG 3.3.1 Error identification - Level A
Understandable

Errors and validation must be clearly identified and described in text, not just visually (like color or highlighting).

WCAG 3.3.2 Labels or instructions - Level A
Understandable

Form fields must have clear labels or instructions to avoid confusion and help complete the input correctly.

WCAG 3.1.2 Language of parts - Level AA
Understandable

Any parts of the content in a different language must be marked with the correct lang attribute. Expressions borrowed from another language (like "déjà vu" in English) do not need this, unless pronunciation or understanding would be affected.

WCAG 3.2.3 Consistent navigation - Level AA
Understandable

Navigation elements (like menus, links, search) must appear in the same place and order across pages.

WCAG 3.2.4 Consistent identification - Level AA
Understandable

Elements with the same function must look, behave, and be labeled the same way across pages.

WCAG 3.2.6 Consistent help - Level AA
Understandable

Help options (like contact link, support widget) must appear in the same place across pages.

WCAG 3.3.3 Error suggestion - Level AA
Understandable

Errors and validation messages must show text that * explains the problem and * gives suggestions for how to fix it (like "enter at least 8 characters").

WCAG 3.3.4 Error prevention (legal, financial, data) - Level AA
Understandable

Before submitting important actions (like payments or legal forms), the form must allow * reviewing the input, * correcting mistakes, or * confirming.

WCAG 3.3.7 Redundant entry - Level AA
Understandable

Don't ask for the same information twice in the same process. Provide pre-filled fields or selection options if the information was already given.

WCAG 3.3.8 Accessible authentication (minimum) - Level AA
Understandable

Authentication must not rely on memory alone. Allow copy-paste, password managers, or other options (like email verification).

WCAG 3.1.3 Unusual words - Level AAA
Understandable

Unusual terms, jargon, or figurative language should be * avoided when possible, or * explained the first time they appear.

WCAG 3.1.4 Abbreviations - Level AAA
Understandable

Abbreviations and acronyms should be * avoided when possible, or * explained the first time they appear.

WCAG 3.1.5 Reading level - Level AAA
Understandable

If content requires reading skills above lower secondary education (around 9th grade), provide * a simpler version, * a summary, * a visual aid, or * a spoken version to help with understanding.

WCAG 3.1.6 Pronunciation - Level AAA
Understandable

If a word can be pronounced in different ways with different meanings, the intended meaning must be clarified to avoid confusion or ambiguity.

WCAG 3.2.5 Change on request - Level AAA
Understandable

Major changes (like open dialog, navigate, submit) must only happen when explicitly requested.

WCAG 3.3.5 Help - Level AAA
Understandable

Provide additional help (like text instructions, help links, or tooltips) when label alone might be ambiguous or confusing.

WCAG 3.3.6 Error prevention (all) - Level AAA
Understandable

Before submitting, all forms must allow * reviewing the input, * correcting mistakes, or * confirming.

WCAG 3.3.9 Accessible authentication (enhanced) - Level AAA
Understandable

Authentication must not rely on memory or recognition (like solving puzzles, remembering images, or using CAPTCHAs).

WCAG 4.1.1 Parsing (obsolete and removed) - Level A
Robust

This used to require HTML with proper structure and no critical markup errors (like missing tags or duplicate IDs). The requirement is removed but still helps with compatibility.

WCAG 4.1.2 Name, role, value - Level A
Robust

Interactive elements must have * a clear name (what it is), * the correct role (what it does), and * any current value or state, so that assistive technologies can interpret and interact with them correctly.

WCAG 4.1.3 Status messages - Level A
Robust

Status updates (like "form sent" or "5 items in cart") must * coded using proper roles (like **_role="status"_** or **_role="alert"_**), * be detectable by assistive technologies, and * not require moving focus.