An accessibility programme that outlasted the audit
Taking a retail banking app from 61 open WCAG failures to conformance — and keeping it there.
- Engagement
- 12 weeks, then retained
- Team
- 1 a11y engineer, 1 designer, 1 engineer
- Standard
- WCAG 2.2 AA
- Year
- 2024
Results
- Critical WCAG 2.2 AA failures
- 61→0
- Largest Contentful Paint, p75 mobile
- 0.9s
- Components with automated a11y tests
- 100%
Atlas came to us with a regulatory deadline and a 90-page audit from another vendor. The audit was accurate and completely unusable: a flat list of 340 issues with no sense of which ones actually stopped someone from moving money.
Ranking by consequence
We re-scored every finding by how badly it blocked a real task. A missing decorative alt attribute is a defect. A payment confirmation that never announces itself to a screen reader is a person unable to bank. Sixty-one issues fell into that second category, and those became the programme.
- Focus management rebuilt across every modal and drawer
- Live regions for balance, transfer and error announcements
- Contrast tokens regenerated to pass in both themes
- Every form control given a programmatic label and error binding
Making it stick
Audits decay. To stop the same failures reappearing, we moved the rules into the component library and the pipeline: axe checks on every component story, contrast validation on token changes, and a keyboard-only smoke test on the four critical journeys in CI.
The audit was blunt and completely right. They gave us a ranked list, then stayed and worked through the top half with our engineers.
Atlas passed their regulatory review with no findings. Eleven months on, the automated gates have caught 200-odd regressions before release, which is the number we are actually proud of.