Reference
WCAG 2.2 level A success criteria
WCAG 2.2 has 31 success criteria at level A, the minimum level of conformance. They cover text alternatives, captions for prerecorded media, structure that software can read, keyboard operation, no keyboard traps, time limits, flashing, page titles, focus order, link purpose, pointer and motion input, page language, predictable behaviour, consistent help, error identification, labels, redundant entry, and name, role and value. Two of them, 3.2.6 Consistent Help and 3.3.7 Redundant Entry, are new in 2.2.
| Criterion | Name | What it requires | In a scan |
|---|---|---|---|
| 1.1.1 | Non-text Content | Non-text content has a text alternative that serves the same purpose; controls and inputs have a name that describes their purpose. | Partial — accessibility.image_alt checks that images carry an alt attribute, not that the text is accurate. |
| 1.2.1 | Audio-only and Video-only (Prerecorded) | Prerecorded audio-only and video-only content has an alternative that presents equivalent information. | Not tested. |
| 1.2.2 | Captions (Prerecorded) | Prerecorded audio in synchronized media has captions. | Not tested. |
| 1.2.3 | Audio Description or Media Alternative (Prerecorded) | Prerecorded video in synchronized media has an audio description or a full text alternative. | Not tested. |
| 1.3.1 | Info and Relationships | Information, structure and relationships shown by presentation can be determined programmatically or are available in text. | Partial — accessibility.semantic_landmarks checks the document landmarks. |
| 1.3.2 | Meaningful Sequence | When the order of content affects its meaning, a correct reading order can be determined programmatically. | Not tested. |
| 1.3.3 | Sensory Characteristics | Instructions do not rely only on shape, colour, size, visual location, orientation or sound. | Not tested. |
| 1.4.1 | Use of Color | Colour is not the only visual means of conveying information, indicating an action or distinguishing an element. | Not tested. |
| 1.4.2 | Audio Control | Audio that plays automatically for more than 3 seconds can be paused, stopped, or its volume controlled independently. | Not tested. |
| 2.1.1 | Keyboard | All functionality can be operated through a keyboard interface, without specific timings for keystrokes. | Partial — accessibility.interactive_elements finds click handlers on static elements; keyboard traversal itself needs a browser and is not tested. |
| 2.1.2 | No Keyboard Trap | Keyboard focus that can move into a component can move out of it using the keyboard alone. | Not tested — traps need a browser; accessibility.keyboard_navigation says so instead of issuing a verdict. |
| 2.1.4 | Character Key Shortcuts | Single-character keyboard shortcuts can be turned off, remapped, or are active only on focus. | Not tested. |
| 2.2.1 | Timing Adjustable | Each time limit can be turned off, adjusted or extended, with listed exceptions. | Not tested. |
| 2.2.2 | Pause, Stop, Hide | Moving, blinking, scrolling or auto-updating content can be paused, stopped or hidden. | Not tested. |
| 2.3.1 | Three Flashes or Below Threshold | Nothing flashes more than three times in any one-second period, or flashes stay below the flash thresholds. | Not tested. |
| 2.4.1 | Bypass Blocks | A mechanism is available to bypass blocks of content repeated on several pages. | Partial — accessibility.skip_link looks for a skip link; landmarks are read by accessibility.semantic_landmarks. |
| 2.4.2 | Page Titled | Pages have titles that describe their topic or purpose. | Partial — seo.title checks for a non-empty title, not whether it describes the page. |
| 2.4.3 | Focus Order | Focusable components receive focus in an order that preserves meaning and operability. | Partial — accessibility.tabindex flags positive tabindex values that override the natural order. |
| 2.4.4 | Link Purpose (In Context) | The purpose of each link can be determined from its text, or its text and programmatically determined context. | Partial — accessibility.interactive_elements flags links with no text, aria-label or title. |
| 2.5.1 | Pointer Gestures | Multipoint or path-based gestures have a single-pointer alternative, unless the gesture is essential. | Not tested. |
| 2.5.2 | Pointer Cancellation | Single-pointer actions can be aborted or undone; the down-event alone does not complete a function. | Not tested. |
| 2.5.3 | Label in Name | The accessible name of a component with a visible text label contains that text. | Not tested. |
| 2.5.4 | Motion Actuation | Functions triggered by device or user motion can also be operated through the interface, and the motion response can be disabled. | Not tested. |
| 3.1.1 | Language of Page | The default human language of each page can be determined programmatically. | Partial — seo.lang checks that the lang attribute is declared. |
| 3.2.1 | On Focus | Receiving focus does not by itself cause a change of context. | Not tested. |
| 3.2.2 | On Input | Changing a setting does not cause a change of context unless the user was told beforehand. | Not tested. |
| 3.2.6 | Consistent Help | Help mechanisms repeated across pages appear in the same relative order. | Not tested. |
| 3.3.1 | Error Identification | A detected input error is identified, and described to the user in text. | Partial — accessibility.form_errors looks for error wiring in the served HTML; forms are never submitted. |
| 3.3.2 | Labels or Instructions | Labels or instructions are provided when content requires user input. | Not tested. |
| 3.3.7 | Redundant Entry | Information already entered in a process is filled in or selectable rather than asked for again, with listed exceptions. | Not tested. |
| 4.1.2 | Name, Role, Value | User interface components expose a name and role that can be determined programmatically, and their states and values can be set and notified. | Partial — ARIA attribute and role validity, broken ARIA references, hidden focusable elements, unnamed buttons and links, and untitled frames. |
What level A means
WCAG defines three levels. Level A is the floor: a page that fails a level A criterion has a barrier that blocks some users outright — an image with no alternative, a control that cannot be reached with a keyboard, a form field with no label.
Conformance is all-or-nothing per level. A page conforms at level A only when it satisfies every level A criterion, or provides a conforming alternate version; there is no partial level A.
Four criteria apply to every part of a page, even content that is not otherwise relied on for conformance, because failing them can make the whole page unusable: 1.4.2 Audio Control, 2.1.2 No Keyboard Trap, 2.2.2 Pause, Stop, Hide and 2.3.1 Three Flashes or Below Threshold.
WCAG 2.2 removed 4.1.1 Parsing, which was level A in earlier versions: its requirements are now handled by browsers and assistive technologies, and it no longer needs to be tested.
Why most of this list cannot be tested by a crawler
Many level A criteria ask for judgement a program does not have: whether an alternative text serves the same purpose as the image, whether instructions depend on colour or position, whether captions are accurate, whether a focus change alters the context.
Others need the page to run and be operated: moving through it with a keyboard, triggering a time limit, making an input error, performing a gesture. A scan that reads the HTML a server returned sees none of that behaviour.
What remains automatable is structural: an image with no alt attribute, a page with no title or no lang attribute, a positive tabindex, an ARIA attribute that does not exist, a reference to an id that is not there, a button with no name. Those are real failures, and finding them is useful — but a scan that finds none of them has not shown that the page conforms.
How to read the scan column
"Partial" means a check examines one mechanical part of the criterion. `accessibility.image_alt` finds images without an alt attribute; it cannot say whether the alternatives present are good ones, so it covers one failure of 1.1.1 and not the criterion.
"Not tested" means no check addresses the criterion. For 2.1.2, the scan's keyboard check exists but reports explicitly that keyboard behaviour needs a browser, instead of issuing a verdict it cannot support.
The accessibility findings of a report are therefore a list of defects to fix, never a conformance claim. Conformance at level A is established by testing every criterion, most of them by a person.
Frequently asked questions
- How many success criteria are at level A in WCAG 2.2?
- 31. WCAG 2.2 removed 4.1.1 Parsing and added two new level A criteria, 3.2.6 Consistent Help and 3.3.7 Redundant Entry.
- Is level A enough?
- Level A removes the most severe barriers, but most policies and standards that reference WCAG ask for level AA, which includes every level A criterion plus 24 more, among them colour contrast and resize text.
- Can an automated tool certify level A conformance?
- No. Automated checks find some mechanical failures of some criteria. Most level A criteria need human judgement or interaction with the running page, so conformance requires manual testing.
Sources
Related
- Missing image alt text
- No skip link
- Positive tabindex
- Missing lang attribute
- Iframes without titles
- WCAG
- Alt text
- Skip link
- tabindex
- lang attribute
- Keyboard trap
- Accessible name
- Keyboard navigation checker
- ARIA validity checker
- Automated testing limits
- Accessibility overlays
- WCAG 2.2 level AA criteria
- ARIA states and properties
- Public-sector and regulated websites
VeriFixScan crawls a site and applies its checks to every page it reaches, keeping the evidence behind each finding. Scanning one website is free.
Scan a website