Website Accessibility
Conformance is decided by testing, not by a widget on the page
Accessibility is a property of the pages themselves — how they behave with a keyboard, a screen reader, at 200 per cent zoom, and without colour as the only signal. We audit against WCAG 2.2 success criteria, fix what fails, and retest.
The audit
What actually gets tested, by a person
This is the part that decides whether a site is usable. A scanner runs first because it is cheap, but nothing on this list is settled by a scanner.
- Every interactive element reached and operated with a keyboard alone, in an order that matches the visual layout
- A visible focus indicator on every focusable element, not obscured by sticky headers or cookie banners
- Custom components — menus, tabs, accordions, modals, comboboxes — announcing their name, role and current state
- Modals and drawers that trap focus while open and return it sensibly when closed
- Forms where every control has a label, errors are identified in text, and the error can be reached and understood
- Text contrast against its actual background, including text over images and disabled or placeholder states
- Information never conveyed by colour alone — required fields, status, chart series, validation
- Reflow at a 320 pixel viewport width and readability at 200 per cent zoom without horizontal scrolling
- Alternative text that describes purpose, with decorative images correctly marked as decorative
- Headings that describe structure in order, and landmarks that let a screen reader user skip navigation
- Video captions and audio transcripts, and media that does not play automatically
- Motion and animation respecting a reduced-motion preference
- Page titles that identify the page, and a declared language for the document and for any passages in another language
- Target sizes for touch, and an alternative to any drag-based interaction
- Timeouts that can be extended, and no loss of entered data when a session ends
The standard
What WCAG 2.2 is, in numbers
- Success criteria at Level A, the minimum conformance level
31
Success criteria at Level A, the minimum conformance level
- Further criteria added at Level AA, the level most commonly required
24
Further criteria added at Level AA, the level most commonly required
- Success criteria in total across Levels A, AA and AAA
86
Success criteria in total across Levels A, AA and AAA
Conformance is claimed at a level, and it is all or nothing at that level: a page conforms to Level AA when it satisfies every Level A and Level AA criterion, not when it satisfies most of them. There is no percentage and no score, which is why an accessibility rating out of a hundred should be treated as a vendor’s invention rather than as a result.
WCAG 2.2 added nine criteria to the previous version, covering focus visibility, dragging alternatives, target sizes, consistent help, redundant entry and authentication that does not depend on a cognitive test. Sites that were assessed against the older version have not necessarily been assessed against these.
How we work
What we test, and what we will not claim
We will
- Test with a keyboard and with at least one screen reader on each platform in scope
- Report against named success criteria with severity and reproduction steps
- Fix the component rather than the page, so the failure stops recurring
- Say plainly which findings are certain and which are a matter of judgement
- Retest after remediation and date the result, so the statement reflects reality
We will not
- Install an overlay widget or present one as conformance
- Tell you that this work makes you legally compliant in any jurisdiction
- Issue a percentage score, because conformance at a level is not partial
- Sign an accessibility statement that claims more than the testing supports
- Deliver a scanner export as an audit, or bill for the export as if it were one
What we find
The failures that turn up on almost every site
- The focus outline was removed by a stylesheet reset.
- A single line early in the stylesheet removes the browser default because a designer disliked it, and nothing replaced it. Anyone navigating by keyboard now cannot see where they are. It is one of the most common failures and one of the cheapest to fix.
- Interactive things were built from generic elements.
- A dropdown made from nested containers with a click handler looks correct and announces nothing. It has no role, no state and no keyboard behaviour unless every part is added by hand. Using the native element, or a well-tested pattern, is nearly always less work than reproducing it.
- Alternative text describes the file, not the picture.
- Image names, dimensions and the word image itself all appear as alternative text on the average site. Meanwhile genuinely decorative images have descriptions that interrupt a screen reader for no reason. Both directions are wrong, and both come from treating the attribute as a box to fill.
- Brand colours fail contrast at the sizes they are used.
- A palette signed off in a brand document rarely gets checked against small text, disabled states, placeholder text or text over photography. The fix belongs in the design system — an accessible pairing for each brand colour — rather than in a hundred individual corrections.
- Errors are shown in red and nothing else.
- The field turns red, no text appears, and focus does not move. Someone who cannot see the colour, or who is using a screen reader, receives no indication that anything went wrong. Forms are where accessibility failures cost the most, because that is where the money is.
Two audiences
Where accessibility and search engines want the same thing
The overlap is real and worth knowing about, but it is partial. Plenty of accessibility work does nothing for search, and it is still work worth doing.
| Dimension | Why accessibility requires it | Why search engines use it |
|---|---|---|
| Headings in a logical order | Screen reader users navigate a page by its headings rather than by reading it linearly | Headings communicate structure and the subject of each part of the page |
| Meaningful alternative text | It is the only description of an image available to someone who cannot see it | It is how image content is understood and how images become findable |
| Descriptive link text | Links are read out of context in a list, so "read more" tells the listener nothing | Anchor text describes what is at the other end of the link |
| Semantic landmarks and elements | They allow navigation to be skipped and regions to be identified | They distinguish primary content from navigation and boilerplate |
| Captions and transcripts | They make audio and video content available without hearing it | They make the content of media readable at all, since the media itself is not |
| A declared page language | It tells a screen reader which pronunciation rules to use | It helps confirm which audience the page is written for |
Method
How an audit and remediation runs
Agree the scope and the sample
Every distinct template plus the complete journeys that matter commercially. We write down what is in scope and what is not, because a conformance claim only means something alongside the scope it was tested against.
You get: A written scope and sample list
Run the automated pass
Across the sample, to clear the mechanical failures cheaply and to give the manual testing a cleaner starting point. This is a first pass and it is described as one.
You get: Automated findings, triaged
Test manually
Keyboard-only traversal, focus order and visibility, zoom and reflow, contrast in real states, forms and error handling, and a check that nothing depends on colour alone.
You get: Manual findings against named criteria
Test with assistive technology
At least one screen reader per platform in scope, checking that components announce their name, role and state, that dynamic changes are communicated, and that nothing traps the user.
You get: Assistive technology findings with recordings where useful
Report so developers can act
Each finding carries the criterion, the severity, where it occurs, how to reproduce it and a suggested fix. Findings are grouped by component, because one component usually explains many pages.
You get: An audit report organised by component and severity
Remediate and retest
Fixes go into the design system and the component library wherever possible, then the affected criteria are retested and dated. An accessibility statement is drafted from what the retest actually showed.
You get: Retest results and a drafted accessibility statement
Questions
What people ask about accessibility work
Do accessibility overlay widgets work?
They cannot create conformance. Conformance describes the pages as delivered, and a script that adjusts appearance at runtime does not change the underlying markup, structure or component behaviour that testing examines.
They are also widely criticised by disabled users and by accessibility practitioners, in part because they can interfere with the assistive technology people already use and have configured. We do not install them, and where one exists we test the site with it disabled.
Does conformance make us legally compliant?
Not automatically, and we are not lawyers. Conformance to a WCAG level is a technical result produced by testing against published success criteria. Legal obligations vary by country, sector and contract, and some legislation references a standard while adding requirements of its own.
What conformance work gives you is evidence: a dated record of what was tested, what was found, and what was fixed. Take that to a qualified adviser for the legal question.
How much can automated testing find?
Some of it, and it is a useful first pass because it is cheap and repeatable. Scanners are good at things expressible as rules: a missing alternative text attribute, a contrast ratio below threshold, a form control with no associated label.
They cannot judge whether alternative text is meaningful, whether a custom component announces its state, whether the focus order matches the visual order, or whether an error message is actually reachable. That is why a scan reporting no errors tells you very little.
Which level should we aim for?
Level AA is the common target and the one most procurement documents and public-sector requirements reference. Level A alone leaves substantial barriers in place.
Level AAA is not intended as a whole-site target, and the guidelines themselves say it is not achievable for all content. Individual AAA criteria are still worth adopting where they matter to your audience.
Do you test the whole site?
Very rarely, and it usually would not be a good use of your money. We agree a representative sample: every distinct template, plus complete journeys such as search to purchase, or booking from start to confirmation.
A sample that covers every template catches nearly everything, because failures are usually produced by components rather than by individual pages.
Will fixing this help our search visibility?
Some of it overlaps, and we would not oversell that. Headings in a sensible order, descriptive link text, genuine alternative text, semantic landmarks, captions and transcripts are all read by search engines as well as by assistive technology.
Other parts — focus visibility, target sizes, drag alternatives, timing controls — do nothing for search at all. They are worth doing because people need them.
Find out how your site behaves without a mouse
Send us two or three key pages and we will tell you what fails on a keyboard and a screen reader, and whether you are looking at a handful of component fixes or something larger.
If we don't deliver the work we agreed to deliver for reasons within our control, you don't pay for the undelivered work. Read our guarantee
Related
Where to go next
- our own accessibility statementWritten to the same standard we apply to client work.
- design research and interface workMost accessibility failures begin as design decisions.
- fixing it during a rebuildRemediation is far cheaper inside a redesign than after one.
- our published standards
- the semantics search engines read
- how the site performs for real visitors
Last updated · Reviewed by Zubair Afzal