- Where
- /pricing — the "Choose plan" button, .plan-card > button.cta
- What fails
- Label #8fb8c4 on #ffffff measures 2.3:1. Level AA requires 4.5:1 for 16 px text.
- How to reproduce it
- Open /pricing at 1280×800, inspect the button, and read the contrast ratio in the colour picker beside color.
- Suggested fix
- Darken to #3d6f7d (4.6:1). The same token appears in the secondary navigation, so check both together.
- Effort estimate
- Under 30 minutes if it is a design token; half a day if the value is inline across templates.
Everything on this page is illustrative. The site, the findings and the numbers are invented to show the format. No customer report, customer name, customer URL or customer result is reproduced here, and we do not publish client work.
1. Cover and scope
Every report opens with exactly what was tested, so the boundaries are not in dispute later.
| Domain | example.com |
|---|---|
| Pages tested | /, /pricing, /features, /contact, /signup |
| Standard | WCAG 2.2 Level AA |
| Test date | Stated to the day |
| Browser and viewport | Chromium 1280×800, plus 320 px reflow check |
| Out of scope | Anything behind a login; PDFs; third-party embeds we cannot control |
2. Summary
A short plain-language section for whoever is deciding what to do, not what to type. It says what is worst, what is cheapest, and what we would fix first — and it names the number of findings by severity rather than inventing a score out of a hundred.
3. Findings
One block per finding, in the format below. A real report typically runs to between eight and thirty of these across five pages, though we have issued reports with very few.
Illustrative finding 1 of 2
Illustrative finding 2 of 2
- Where
- /signup — the country selector, div.select-shim
- What fails
- The control is a div with a click handler and no tabindex or role. Tabbing through the form skips it entirely, so the form cannot be completed without a mouse.
- How to reproduce it
- Load /signup, click into the first field, then press Tab repeatedly. Focus moves from "Postcode" straight to "Create account", never landing on the country selector.
- Suggested fix
- Replace the shim with a native <select>. If the custom control must stay, it needs role="combobox", keyboard handlers for arrow keys, Enter and Escape, and a visible focus style.
- Effort estimate
- One to two hours for the native replacement. One to two days to make the custom control correct, which is why we suggest the native element.
4. Method and limitations
The same limitations shown on the main page are restated in full in every report, alongside the exact tool versions used. A developer should be able to repeat the work and check our results.
Read the full method · Get a free one-page scan · Request the £249 review