A scanner built to find what
plaintiffs' firms actually look for.
axe-core — the industry standard — covers about 57% of WCAG 2.1 AA issues. Sturdly runs five layers of analysis to reach ~97%. Here's exactly what each layer catches, what tools power it, and what the combined system still can't detect.
The five-layer scanning stack
Each layer runs on every scan, every page. The results are deduplicated so you never see the same issue twice. Coverage percentages are based on the WCAG 2.1 AA criterion distribution in WebAIM's Million report and Deque's internal research.
Automated rule engine
Every page is loaded in a real Chromium browser and analyzed with axe-core — the same engine used by Google, Microsoft, and Deque to test their own products. This catches all machine-verifiable WCAG violations: missing alt text, insufficient color contrast, form labels, landmark regions, ARIA attribute errors, and more.
- ✓Images missing alt text (WCAG 1.1.1)
- ✓Color contrast below 4.5:1 / 3:1 ratio (WCAG 1.4.3)
- ✓Form inputs without programmatic labels (WCAG 1.3.1)
- ✓Missing skip navigation (WCAG 2.4.1)
- ✓Duplicate or invalid ARIA attributes (WCAG 4.1.1)
- ✓Interactive elements without accessible names (WCAG 4.1.2)
- —Whether alt text is actually descriptive
- —Whether link text makes sense out of context
Behavioral interaction testing
After loading each page, Sturdly simulates real keyboard-only navigation using Tab, Shift+Tab, Enter, Escape, and arrow keys. This catches focus management failures that are invisible to static analysis but immediately apparent to keyboard users and screen reader users.
- ✓Focus traps — modals and menus that keyboard users cannot exit (WCAG 2.1.2)
- ✓Focus order that doesn't match visual reading order (WCAG 2.4.3)
- ✓Focus indicators hidden or suppressed by CSS (WCAG 2.4.7)
- ✓Interactive elements unreachable via keyboard (WCAG 2.1.1)
- ✓Form errors not announced to assistive technology (WCAG 3.3.1)
- ✓Dynamic content updates not reflected in the accessibility tree
- —Complex widget patterns require manual expert review
Advanced structural analysis
Sturdly validates WCAG 2.2 criteria, structural patterns, and rendering behavior that no rule engine checks. This includes viewport-constrained reflow testing, text spacing injection, ARIA widget pattern validation (tabs, accordions, carousels), and touch target measurements on mobile viewports.
- ✓Content that breaks at 320px width without horizontal scroll (WCAG 1.4.10)
- ✓Layout that breaks when letter/word/line spacing is overridden (WCAG 1.4.12)
- ✓Touch targets smaller than 24×24px (WCAG 2.5.8)
- ✓Orientation locked to portrait or landscape only (WCAG 1.3.4)
- ✓Missing lang attribute — screen readers can't select the right voice (WCAG 3.1.1)
- ✓ARIA widget patterns that violate APG design patterns (tabs, accordions, dialogs)
- ✓Content that flashes more than 3 times per second (WCAG 2.3.1)
- —Subjective content quality judgments
AI content quality review
The hardest WCAG failures to catch are the ones that require reading comprehension. Sturdly sends extracted page content — all alt text, link text, headings, button labels, and error messages — to Claude for qualitative review. Claude evaluates whether content is genuinely accessible, not just syntactically correct.
- ✓Alt text that is a filename, URL, or says 'image of' (WCAG 1.1.1)
- ✓Link text like 'click here', 'read more', or 'learn more' (WCAG 2.4.4)
- ✓Heading hierarchies that skip levels or use headings decoratively (WCAG 1.3.1)
- ✓Buttons labeled 'Submit' or 'Go' with no contextual aria-label (WCAG 4.1.2)
- ✓Error messages that don't tell users how to fix the problem (WCAG 3.3.3)
- ✓Body content written at a reading level inappropriate for the audience (WCAG 3.1.5)
- —Complex multi-page form flows require end-to-end testing
Third-party widget audit
Chat widgets, cookie banners, feedback tools, and marketing pop-ups are consistently among the most accessible-inaccessible components on any site — and they're completely invisible to most scanners because they live in iframes. Sturdly inspects known third-party components and flags patterns associated with ADA litigation.
- ✓Chat widgets (Intercom, Drift, Zendesk) with inaccessible trigger buttons
- ✓Cookie consent banners that trap keyboard focus
- ✓Overlay accessibility widgets — which are themselves a leading cause of ADA lawsuits
- ✓Marketing pop-ups that disable body scroll and cannot be dismissed without a mouse
- ✓Status messages not announced by assistive technology (WCAG 4.1.3)
- —Proprietary third-party content inside closed iframes
What no scanner can catch — and how we handle it
The remaining ~3% of WCAG 2.1 AA issues require a human expert: live video captioning quality, complex custom widget interaction patterns, and cognitive accessibility judgments. We're honest about this.
We document the gap
Every Sturdly report includes a clear statement of what was tested automatically and what was not. Your VPAT reflects this honestly — which is exactly what regulators and plaintiffs' counsel expect.
We prioritize by litigation risk
The 3% we can't automate is almost never what triggers ADA litigation. We focus on the issues that plaintiff firms actually look for — alt text, keyboard access, contrast — and rank everything by legal exposure.
Expert audit partners
If you need a full manual audit — for a government contract, enterprise client, or pre-litigation defense — we can connect you with certified CPACC/WAS practitioners from our partner network.
Daily monitoring covers the rest
The biggest accessibility risk isn't what's wrong today — it's what breaks tomorrow when a developer pushes a change. Daily automated monitoring catches regressions immediately, before a plaintiff's investigator does.
What happens during a scan
A full site scan takes 5–15 minutes depending on page count. Free scans cover one page. Paid plans crawl every page on your site, every day.
- 1
Crawl
Sturdly navigates your site using a real Chromium browser, following internal links in breadth-first order. It respects robots.txt, skips binary assets, and handles authentication for protected pages.
- 2
Analyze each page — 5 layers
For each page: run axe-core, simulate keyboard navigation, test reflow and text spacing, check third-party widgets, then send content to Claude for qualitative review.
- 3
Deduplicate and rank
Issues are fingerprinted across pages so the same violation doesn't appear 50 times. Severity is calibrated to litigation risk — not WCAG impact level alone.
- 4
Generate documentation
Sturdly automatically produces: a VPAT (Voluntary Product Accessibility Template), a timestamped audit trail, and a public accessibility statement. These are your legal defense.
- 5
Diff against last scan
Every scan is compared to the previous one. New issues are flagged immediately. Fixed issues are marked and archived. You see the trend, not just the snapshot.
See all five layers in action on your site
Free scan · No signup required · Results in 60 seconds
Start a free scan →