It’s extremely useful to have a WCAG checklist to hand when you’re working through the guidelines. A WCAG checklist helps you to check your web accessibility progress, record how far you’ve come and set your targets out for the future.

Wuhcag is all about holistic web accessibility – that means taking everything about your website into account. That’s why I don’t rush you to make every web accessibility change at once – it’s too much for you to do and so it’s bad for your users. I love a structured approach to everything in life, and your website is no exception.

I’ve created a three checklists for you below, with links to articles about each guideline. You can get three free PDFs checklists when you join my free newsletter, where the Wuhcag community focuses on one guideline every week.

Get Your Free WCAG Checklists

Join over 3,700 subscribers who've used my WCAG checklists to make their projects more accessible, plus get my weekly web accessibility newsletter.

I won't share your details and you can unsubscribe any time. Powered by ConvertKit

Over 600 developers like you have learned more about the Web Content Accessibility Guidelines with my guidebook.

Learn more >

I’ve organised my WCAG checklists by level (read more about WCAG levels here). If you’re attacking the guidelines in order (and I suggest you do), you’ll move from Level A (Beginner) through Level AA (Intermediate) and on to Level AAA (Advanced).

WCAG Checklist Level A (Beginner)

1.1.1Non-text ContentProvide text alternatives for non-text content that serves the same purpose.
1.2.1Audio-only and Video-only (Pre-recorded)Provide an alternative to video-only and audio-only content.
1.2.2Captions (Pre-recorded)Provide captions for videos with audio.
1.2.3Audio Description or Media Alternative (Pre-recorded)Provide audio description or text transcript for videos with sound.
1.3.1Info and RelationshipsContent, structure and relationships can be programmatically determined.
1.3.2Meaningful SequencePresent content in a meaningful order.
1.3.3Sensory CharacteristicsInstructions don’t rely solely on sensory characteristics.
1.4.1Use of ColourDon’t use presentation that relies solely on colour.
1.4.2Audio ControlDon’t play audio automatically.
2.1.1KeyboardAll functionality is accessible by keyboard with no specific timings.
2.1.2No Keyboard TrapUsers can navigate to and from all content using a keyboard.
2.1.4Character Key ShortcutsAllow users to turn off or remap single-key character shortcuts.
2.2.1Timing AdjustableProvide user controls to turn off, adjust or extend time limits.
2.2.2Pause, Stop, HideProvide user controls to pause, stop and hide moving and auto-updating content.
2.3.1Three Flashes or Below ThresholdNo content flashes more than three times per second.
2.4.1Bypass BlocksProvide a way for users to skip repeated blocks of content.
2.4.2Page TitledUse helpful and clear page titles.
2.4.3Focus OrderComponents receive focus in a logical sequence.
2.4.4Link Purpose (In Context)Every link’s purpose is clear from its text or context.
2.4.7Focus VisibleKeyboard focus is visible when used.
2.4.3Page Break NavigationProvide a way to navigate between page break locators.
2.5.1Pointer GesturesMulti-point and path-based gestures can be operated with a single pointer.
2.5.2Pointer CancellationFunctions don’t complete on the down-click of a pointer.
2.5.3 Label in NameWhere a component has a text label, the name of the component also contains the text displayed.
2.5.4Motion ActuationFunctions operated by motion can also be operated through an interface and responding to motion can be disabled.
3.1.1Language of PageEach webpage has a default human language assigned.
3.2.1On FocusElements do not change when they receive focus.
3.2.2On InputElements do not change when they receive input.
3.2.6Consistent HelpHelp options are presented in the same order.
3.3.1Error Identificationidentify and describe input errors for users.
3.3.2Labels or InstructionsProvide labels or instructions for user input.
3.3.7Redundant EntryAuto-fill or provide information that’s required more than once in the same process.
4.1.1ParsingNo major code errors
4.1.2Name, Role, ValueThe name and role of user components can be understood by technology.

WCAG Checklist Level AA (Intermediate)

1.2.4 – Captions (Live)Add captions to live videos.
1.2.5 – Audio Description (Pre-recorded)Provide audio descriptions for pre-recorded videos.
1.3.4 – OrientationYour website adapts to portrait and landscape views.
1.3.5 – Identify Input PurposeThe purpose of input fields must be programmatically determinable.
1.4.3 – Contrast (Minimum)Contrast ratio between text and background is at least 4.5:1.
1.4.4 – Resize TextText can be resized to 200% without loss of content or function.
1.4.5 – Images of TextDon’t use images of text.
1.4.10 – ReflowContent retains meaning and function without scrolling in two dimensions.
1.4.11 – Non-Text ContrastThe contrast between user interface components, graphics and adjacent colours is at least 3:1.
1.4.12 – Text SpacingContent and function retain meaning when users change elements of text spacing.
1.4.13 – Content on Hover or FocusWhen hover or focus triggers content to appear, it is dismissible, hoverable and persistent.
2.4.5 – Multiple WaysOffer at least two ways to find pages on your website.
2.4.6 – Headings and LabelsHeadings and labels describe topic or purpose.
2.4.11 – Focus Appearance (Minimum)Focus indicators are clearly distinguishable when active.
2.5.7 – Dragging MovementsFunctionality that uses dragging movements can be achieved with a single pointer without dragging.
2.5.8 – Target Size (Minimum)The target size for pointer inputs is at least 24 by 24 CSS pixels.
3.1.2 – Language of PartsEach part of a webpage has a default human language assigned.
3.2.3 – Consistent NavigationPosition menus and standard controls consistently.
3.2.4 – Consistent IdentificationIdentify components with the same function consistently.
3.2.7 – Visible ControlsGive users a way to identify controls without mouse hover or keyboard focus.
3.3.3 – Error SuggestionSuggest corrections when users make mistakes.
3.3.4- Error Prevention (Legal, Financial, Data)Check, confirm and allow reversal of pages that cause important commitments.
3.3.8 – Accessible AuthenticationDon’t authenticate users through memory, transcription or cognitive tests without alternatives.
4.1.3 – Status MessagesAlert users to changes in content that aren’t given focus.

WCAG Checklist Level AAA (Advanced)

1.2.6 – Sign Language (Pre-recorded)Provide sign language translations for pre-recorded videos.
1.2.7 – Extended Audio description (Pre-recorded)Provide extended audio descriptions for pre-recorded videos.
1.2.8 – Media Alternative (Pre-recorded)Provide text alternatives for pre-recorded videos.
1.2.9 – Audio Only (Live)Provide alternatives for live audio.
1.3.6 – Identify PurposeThe purpose of all components must be programmatically determinable.
1.4.6 – Contrast (Enhanced)Contrast ratio between text and background is at least 7:1.
1.4.7 – Low or No Background AudioAudio-only content is clear with no or minimal background noise.
1.4.8 – Visual PresentationOffer users a range of presentation options for blocks of text.
1.4.9 – Images of Text (No Exception)Don’t use images of text.
2.1.3 – Keyboard (No Exception)All functionality is accessible by keyboard with no exceptions.
2.2.3 – No TimingNo time limits on your website.
2.2.4 – InterruptionsUsers can postpone or supress non-emergency interruptions.
2.2.5 – Re-authenticatingSave user data when re-authenticating.
2.2.6 – TimeoutsWarn users about timeouts that cause data loss.
2.3.2 – Three FlashesNo content flashes more than three times per second.
2.3.3 – Animation from InteractionsUsers can disable motion animation.
2.4.8 – LocationLet users know where they are on your website.
2.4.9 – Link Purpose (Link Only)Every link’s purpose is clear from its text.
2.4.10 – Section HeadingsOrganise content with headings.
2.4.12 – Focus Appearance (Enhanced)Focus indicators are more clearly distinguishable when active.
2.5.5 – Target SizeThe target size for pointer inputs is at least 44 by 44 CSS pixels.
2.5.6 – Concurrent Input MechanismsNo restrictions on modes of input.
3.1.3 – Unusual WordsDefine any unusual words or phrases.
3.1.4 – AbbreviationsDefine any abbreviations.
3.1.5 – Reading LevelUsers with nine years of schooling can read your content.
3.1.6 – PronunciationDefine words where meaning is ambiguous without pronunciation. 
3.2.5 – Change on RequestElements do not change without a request.
3.3.5 – HelpProvide help to users.
3.3.6 – Error Prevention (All)Check, confirm and allow reversal of pages that require users to submit information.
3.3.9 – Accessible Authentication (Enhanced)Don’t authenticate users through memory, transcription or cognitive tests.

Find out more