Good Citizens · Usability Harness · Simulator ·
The Good Citizens check: look at what you just shipped
The best moment to catch a problem is right after you ship it, while it is still yours. This bookmark checks any live page, whatever it was designed or built with.
Every finding is said in terms of the person it affects, points to the exact elements on the page, and links to the article in the Usability Harness about who it leaves out.
I · What it checks
Four questions about every page
Can everyone use it? Was it worth the wait? Can people read it comfortably? Can machines tell what it is?
People runs axe-core, the open-source accessibility engine from Deque that Google’s Lighthouse has used since 20173, against the rules of WCAG 2.2. Speed reads the browser’s own timing for this visit: when the main content appeared, how much the layout jumped, how much was downloaded and from how many other companies, and which images were far larger than shown. Type measures the rendered text: paragraphs smaller than 16 pixels, lines longer than about 85 characters, cramped leading, and how many sizes the page uses. Structure looks at what search engines and assistants read: headings, landmarks, title, description, share cards, JSON-LD and microformats.
Nothing leaves the page. The check runs in your browser, and the report is yours to copy.
II · Its limits
A machine finds some of the problems, never all
Automatic checks are a start, never a finish.
In 2017 the UK government’s accessibility team built a page with 143 deliberate barriers and ran ten tools over it. The best single tool found 41%5; all ten together found 71%, and 42 barriers were missed by every one. Deque reports that automatic testing finds about 57%6 of issues by volume, because the common ones are so common. A perfect Lighthouse score does not mean a page is accessible.
Speed is measured once, on your machine and your connection, which are probably better than most of your readers’. And some sites forbid outside scripts; on those, the bookmark says so and stops. Use the check, then use the keyboard tool and the screen reader view, then watch real people use the page.
III · What to do
What it means for your design
- 01
Check what you shipped, not what you drew
Run it on the live page after every release. Problems are cheapest to fix while the work is still fresh.
- 02
Fix the six common failures first
Low contrast, missing image descriptions, unlabelled fields, empty links, empty buttons and missing language make up almost every error on the web.
- 03
Read “check” as “look”
Findings marked check, and the things the tool couldn’t decide, need a person to look. They are often where the real barriers are.
- 04
Budget the weight
Keep pages light enough for a cheap phone on a slow connection. Every megabyte is paid for by the reader.
- 05
Test with people
Even all the automatic tools together miss many barriers. Usability testing with disabled people finds what they cannot.
- 06
Copy the report into the work
Paste the report into your issue tracker or pull request, so fixing it is part of the job and not a separate project.
IV · Prototypes
On prototypes, in any tool
The check works out what kind of page it is on before it reports. On a live page, or a prototype built as one, it runs everything.
On a design drawn as a picture, such as a Figma prototype link, it switches to its Picture tab. Your browser asks to share the tab, once, and the check reads the pixels for text that may be too faint and colours that look the same to someone colour-blind. Both are estimates, and they are marked on the screen so you can look. Structure and type wait until it is built.
When the content is in a frame from another site, as in many app builders and Storybook, it offers to open the frame on its own. In a design tool’s editor, it suggests opening the prototype or preview link instead.
V · Myths
What people get wrong
- A 100 Lighthouse score means accessible
- Automatic tools find a minority of barriers. A perfect score is a starting line.
- An overlay or widget will fix it
- Widgets cannot repair the structure of a page, and sites using them are still sued.
- Fast on my machine means fast
- Your laptop and connection are better than most of your readers’. Test on a slow phone too.
- Accessibility is a separate project
- Most failures are small and repeated. Catching them at each release is cheaper than any audit.
Click it on any page to check it for accessibility, speed, type and structure. Each finding shows you where it is on the page and who it affects. Copy the report into your work. Click again to close it.
Works in Chrome, Safari, Firefox and Edge on a computer.
Or all 10 at once
Download the bookmarks fileOne Good Citizens folder with every tool in it. Download it, then import it:
- Chrome: Bookmarks › Import bookmarks and settings › Bookmarks HTML file
- Safari: File › Import From › Bookmarks HTML File
- Firefox: Bookmarks › Manage bookmarks › Import and Backup › Import Bookmarks from HTML
Every time you check a design against the people who will use it, you are doing what Good Citizens is for. Thank you for that.
More tools: Fovea · Colour vision · Ageing eyes · all 10
VI · Sources
The research behind this page
Every figure above comes from one of these 8 sources. The small numbers in the text point here, and each source points back.
Guidance
Introduction to LighthouseGuidance
Lighthouse accessibility scoreArticle
Google selects Deque’s axe for Chrome DevTools·
Deque blog
Reference
axe-core (Mozilla Public License 2.0)GitHub
Article
What we found when we tested tools on the world’s least-accessible webpage·
Accessibility in government blog
Vendor data
Automated testing study identifies 57 percent of digital accessibility issuesDeque blog
Report
The WebAIM Million·
Guidance
Web Vitalsweb.dev