Perceivable
Users must be able to sense the information — through sight, hearing or touch. If a screen reader cannot read an image, or a deaf user cannot access a podcast, your site is not perceivable to them.
A complete guide to what web accessibility is, the criteria that break most websites, how the WCAGHub Web Checker detects 77 issues across two engines, and where WCAG 2.2 is legally enforceable. Written for developers, designers and compliance leads.
Web accessibility means building websites and web applications that everyone can perceive, operate and understand — regardless of sight, hearing, mobility, cognition, age or the device they are using. It is not a feature for a small minority. Around one in six people worldwide live with a significant disability, and almost every user will experience a temporary or situational impairment at some point — a broken arm, bright sunlight, a noisy train carriage.
The technical reference is the Web Content Accessibility Guidelines (WCAG) 2.2, published by the W3C. WCAG is organised around four principles — perceivable, operable, understandable and robust — and breaks each principle down into 87 testable success criteria at three conformance levels: A (minimum), AA (the legal target in most jurisdictions) and AAA (enhanced).
Inaccessible websites exclude users, damage brand reputation, hurt SEO — and in Australia, the US, the EU, the UK and Canada, they expose you to legal complaints under the Disability Discrimination Act, ADA, European Accessibility Act, Equality Act and Accessible Canada Act respectively. The good news: most accessibility is about doing the HTML, CSS and JavaScript you already know, a little more carefully — and the WCAGHub Web Checker can find 77 distinct accessibility issues automatically so you know exactly what to fix.
Every WCAG success criterion falls under one of these four headings. Learn what each one means and you already understand the shape of the whole standard.
Users must be able to sense the information — through sight, hearing or touch. If a screen reader cannot read an image, or a deaf user cannot access a podcast, your site is not perceivable to them.
All functionality must work by keyboard alone and give the user enough time. Many disabled users never touch a mouse — if a feature needs hover, drag or precise clicks, it is not operable.
Content and interface behaviour must be predictable. Declare the page language, label your form fields, explain errors, and never surprise the user with a layout that changes on focus or selection.
Code must be parseable by current and future assistive technology. That means valid HTML, correct ARIA where native semantics are insufficient, and status messages that get announced without taking focus.
WebAIM analyses the top one million home pages every year. These 15 success criteria account for the vast majority of detected failures — fix them and you eliminate most of your risk. All 15 are detected automatically by the WCAGHub Web Checker.
Every meaningful image needs an alt attribute that conveys its purpose. Decorative images use alt="". Never leave alt missing — screen readers will read the file name instead.
Structure must be conveyed in code, not only visually. Use <h1>–<h6> in order, <label for> on inputs, <th> with scope on data tables, and real lists with <ul>/<ol>.
Normal text needs a contrast ratio of at least 4.5:1 against its background, large text 3:1. Light grey on white is the single most common failure on the web.
Content must reflow to a single column at 320 CSS pixels wide without horizontal scrolling or loss of information. Test by zooming the browser to 400 % on a 1280-pixel viewport.
Icons, form field borders, focus indicators and meaningful graphical elements need 3:1 contrast. A thin grey border on a white input almost always fails this criterion.
Every interactive element must be reachable and operable with keyboard alone. Custom components built on <div> need tabindex="0", keyboard event handlers, and an appropriate ARIA role.
Avoid “click here” and “read more” links repeated across a page. Screen-reader users pull up a list of links out of context — each one must make sense on its own.
The focused element must be clearly distinguishable. Never write outline: none without a replacement. Design a focus style that meets 3:1 non-text contrast — ideally a 2–3 px outline with offset.
The focused element must not be fully hidden by sticky headers, cookie banners or modal overlays. Leave at least part of the focused element visible at all times.
Pointer targets must be at least 24×24 CSS pixels, with limited exemptions for inline text and default browser controls. Best practice is still 44×44.
If your site offers help (contact details, FAQ link, live chat), it must appear in the same relative order on every page that includes it. Do not shuffle support links between pages.
Every form input needs a visible, programmatically associated label. Placeholder text is not a label — it disappears on focus and often fails contrast.
Information the user already entered in the same process must be auto-populated or available to select. No forcing the user to retype their email on the confirmation step.
Authentication must not rely solely on a cognitive function test (remembering, transcribing, solving puzzles). Support password managers, passkeys or object-recognition alternatives.
Every UI control must expose its accessible name, role and current state to assistive technology. Prefer native HTML (<button>, <select>); only reach for ARIA when native semantics are insufficient.
The Web Checker is not a single-pass validator — it runs 77 distinct checks across two engines, prioritises them with a smart scoring model, explains every issue in the idiom of your framework, and scores your site for three screen readers.
Parses raw HTML as served — no JavaScript required. Fast, deterministic, finds structural problems that render identically for every visitor: missing <title>, missing lang, unlabelled inputs, invalid ARIA references, table headers without scope, meta refresh traps and the new WCAG 2.2 criteria around help, redundant entry and authentication.
Headless Chrome loads your page with real CSS, JavaScript and fonts — then we inspect what a user actually sees. Catches colour contrast against computed backgrounds, focus indicators, dynamic ARIA states, modal focus traps, autoplay, small touch targets, SVGs without names, and React/Vue/Angular components that only exist after hydration.
Click Fix with AI on any issue and the Web Checker generates a correction in the idiom of the stack we detected. A React app gets a JSX component. A Vue site gets a template. A WordPress theme gets a functions.php snippet with the right hook. Not generic vanilla HTML — code you can paste straight into your repo.
Detecting 19+ frameworks and templating engines. If we recognise your stack, the fix lands in the right syntax on the first try.
Every scan includes three independent scores weighted for the actual quirks of each screen reader — not just a shared WCAG tally.
Free, open source, the most-used screen reader in WebAIM surveys. Scored on landmark nav, form labels, live regions and heading structure.
The legacy enterprise standard. Penalises table complexity, nested ARIA, unexpected role overrides, and any aria-label on non-interactive elements.
Apple's built-in screen reader. Rewards semantic HTML, clean focus order and region landmarks; penalises interactive divs and custom controls without role + tabindex.
We rank every issue by legal risk (which WCAG level + jurisdiction), user impact (blocker vs. friction), and fix cost (one-line attr vs. structural rewrite). The first five items on your list are always the ones that move the needle most.
Every issue is pinpointed on a full-page screenshot with clickable markers — red dots for errors, blue for warnings. Click a marker and you see the exact selector, the WCAG criterion, the AI fix, and screen-reader guidance in a side panel. Export to branded PDF whenever you like.
No single method catches every problem. A good audit combines automated scanning, manual testing with assistive technology, and — where budget allows — session testing with real disabled users.
Fast, consistent, repeatable. Catches missing alt, colour contrast, heading order, invalid ARIA, missing form labels and many structural issues — but cannot judge whether your alt text is meaningful or your link text makes sense.
Navigate every page and flow with the Tab key alone. Then run through with a screen reader — NVDA on Windows, VoiceOver on macOS and iOS, TalkBack on Android — to expose what the DOM actually exposes.
Automation flags issues, but only disabled users tell you whether your product is actually usable. Recruit blind, motor-impaired and cognitively impaired testers through Fable, Applause, or local disability organisations.
The technical target is the same in every country; the law and the enforcement body change. The Web Checker maps every issue to your chosen jurisdiction and labels the report with the exact statute you need to cite.
DDA + Digital Service Standard (DTA). Federal government requires WCAG 2.2 AA. Complaints handled by the Australian Human Rights Commission.
DOJ Title II rule requires WCAG 2.1 AA for state and local government web content. Section 508 refresh references WCAG 2.0 AA.
EAA applies to private-sector services from June 2025. EN 301 549 references WCAG 2.1 AA (migrating to 2.2) plus ICT-specific requirements.
Public-sector bodies bound by the 2018 Regulations: WCAG 2.2 AA plus an accessibility statement. Private sector must make reasonable adjustments.
Accessible Canada Act federal. Ontario AODA requires WCAG 2.0 AA, moving towards 2.1. Quebec LAPHO similar scope.
W3C Recommendation, superset of every regional law. Meeting WCAG 2.2 AA clears most jurisdictional requirements simultaneously.