How to use this library

Start with the highest-severity findings in a report. Open the matching issue page, fix the obvious code or content problem, then keep the manual review note in your QA checklist. These pages are practical guidance, not legal advice, WCAG certification, or a guarantee of conformance.

Page structure

major Page structure

Missing page title

The browser title does not clearly identify the page.

major Page structure

Missing language

The html element does not declare the page language.

major Page structure

Zoom restricted

Viewport settings may prevent users from zooming comfortably.

notice Page structure

No skip link

The page does not appear to have an obvious skip link.

notice Page structure

No statement link

The page does not appear to link to an accessibility statement.

Headings

major Headings

Missing H1

The page does not have a main heading.

moderate Headings

Multiple H1s

The page uses more than one H1 heading.

moderate Headings

Skipped headings

A heading jumps over a level, such as H2 to H4.

major Headings

Empty heading

A heading element is present but has no readable text.

moderate Headings

Generic heading

A heading uses text that is generic, vague, or repeated across multiple headings.

notice Headings

Long heading

A heading is over 180 characters long, which may make it harder to use as a navigation signal.

Images and alt text

moderate Images and alt text

Missing image alt

An image does not have an alt attribute.

major Images and alt text

Linked empty alt

An image used as a link is marked decorative.

major Images and alt text

Weak linked image alt

An image used as a link has generic or filename-like alt text.

notice Images and alt text

Empty alt text

The image is marked as decorative with alt="".

moderate Images and alt text

Filename alt

The alt text appears to be a file name or asset label.

notice Images and alt text

Repeated alt

Several images use the same alt text.

moderate Images and alt text

Generic alt

The image alt text says only something like image, photo, graphic, banner, screenshot, icon, or logo.

Forms

critical Forms

Unlabeled field

A visible form field does not appear to have a usable label.

major Forms

Placeholder label

A form field has placeholder text but no persistent label detected.

major Forms

Missing legend

A group of radio buttons or checkboxes shares a name but does not appear to be wrapped in a fieldset with a legend.

moderate Forms

Unclear required

A form control uses aria-required but it is not obvious that a visible required indicator is present.

major Forms

Missing error association

A form field uses aria-invalid but does not appear to have an error message connected through aria-describedby.

notice Forms

Missing autocomplete

A form field that appears to be a contact detail does not have an autocomplete attribute.

Links and buttons

major Links and buttons

Empty link

A link appears to have no readable name.

moderate Links and buttons

Generic link

The link text is vague, such as click here or read more.

critical Links and buttons

Unnamed button

A button appears to have no readable label.

ARIA and IDs

moderate ARIA and IDs

Duplicate IDs

The same id value appears more than once on the page.

major ARIA and IDs

Empty aria-label

An element has aria-label, but the value is empty.

moderate ARIA and IDs

Invalid role

An element uses an ARIA role this checker does not recognize.

critical ARIA and IDs

Hidden focusable content

A container hidden from assistive technology appears to include focusable controls.

Embedded content

major Embedded content

Untitled iframe

An embedded frame does not have a title.

Colour contrast

moderate Colour contrast

Low contrast

Inline styles suggest text may not have enough contrast.

Related starting points