Notes
140 UK charity home pages, one automated accessibility check each
To see whether an automated accessibility check is useful on real sites rather than test pages, we ran Web MOT Check over the home pages of 140 UK charities, picked at random from the Charity Commission's public register: registered, incorporated, with annual income between £250k and £5M. One page each, loaded in a real browser at desktop and 320px width, checked against 13 of the WCAG 2.2 AA success criteria that can be tested by software.
The limits first. Automated testing catches roughly a third of WCAG failures. It cannot judge whether alt text is accurate, whether reading order makes sense, or whether a custom widget works with a screen reader. "Passed" below means passed the automated part, nothing more. Heading order, landmarks and vague link text were recorded separately as best-practice notes, because WCAG does not fail a page for those on their own, and they are not in the failure counts.
138 of the 140 home pages had at least one WCAG failure. The median page had 5 distinct faults; 78 pages had five or more, 20 had ten or more.
What fails most
| Criterion | What it means | Pages |
|---|---|---|
| 1.4.3 | Text colour contrast below 4.5:1 | 79% |
| 2.4.4 | A link with no accessible text at all | 69% |
| 4.1.1 | Duplicate ids on the page | 64% |
| 2.4.7 | Keyboard focus not visible on some elements | 39% |
| 3.3.2 | A form field with no label | 26% |
| 1.1.1 | An image with no alt attribute | 25% |
| 1.4.10 | Page does not reflow at 320px, sideways scrolling | 24% |
| 4.1.2 | A button with no accessible name | 11% |
| 1.4.4 | Pinch zoom disabled | 11% |
| 3.1.1 | No page language declared | 2% |
| 2.4.2 | No page title | 1% |
Detail on the top ones
Contrast. 418 distinct contrast faults across the 140 pages, median ratio 2.85:1 against the 4.5:1 threshold. 243 of them were below 3:1, which is grey-on-white body text, not a near miss. Only 63 were in the 4.0 to 4.5 band where a designer could reasonably say the tool is being pedantic.
Links with no accessible text. 1,025 of them in total. Almost all are icon links: the social media row in the footer and a magnifying glass for search, with an SVG inside and no aria-label. A screen reader announces each as "link" and nothing else.
Duplicate ids. Weight this one lightly. It is common in CMS themes and only bites when a label or an aria attribute points at the duplicated id. It is on the table because it is a real 4.1.1 failure, not because it is the biggest problem on the page.
Keyboard focus. On the 55 pages with the problem, 414 of 1,696 elements reached by pressing Tab showed no visible change at all when focused. Usually it is a single line of CSS, outline set to none, applied to everything.
Reflow. 34 pages needed horizontal scrolling at 320px, typically a fixed-width table or a hero image with a hard pixel width. Anyone who zooms a desktop browser to 400% hits the same wall.
Pinch zoom. Disabled on 15 pages. It is a single meta tag, and removing it costs nothing.
The two clean pages
Simple templates, system fonts, dark text on white, no icon-only links. Not a design trend, just fewer places to go wrong.
What no automated tool can measure honestly
124 of the 140 home pages have text sitting over a background photograph. The checker records those as unmeasured rather than failed, because there is no single colour behind the text to measure against. A person has to look. It is the single most common visual pattern on charity home pages.
Method
- Charity Commission public register, random sample from the income band, incorporated charities only.
- Home page only, real Chromium, desktop and 320px viewports, the rendered DOM rather than the fetched HTML so client-rendered sites are measured as visitors see them.
- 13 WCAG 2.2 AA criteria that can be automated; the coverage list is generated from the checker itself.
- 150 sites selected; 10 excluded because the site blocked the browser or the domain did not resolve.
- Per-site results are available on request to anyone who wants to check the method: hello@webmotcheck.com.
Check any public page the same way, free: webmotcheck.com. Each finding comes with the code that fixes it.