Monitoring Focus Indicators After Every Theme Update

Theme updates quietly delete focus outlines more than any other change. How to monitor focus visibility so a redesign does not make keyboard navigation invisible.

The most common accessibility regression after a theme update is not dramatic. Nobody removes the alt text. What disappears is the focus outline, usually killed by a line of CSS reset that a developer copied in for a cleaner look, and keyboard users are left tabbing through a page with no idea where they are.

WCAG 2.4.7 requires focus to be visible, and 2.2 tightened the surrounding expectations with 2.4.13, focus appearance, at AAA. AA still rests on visible. A store can pass an audit in March and fail this basic test in April because a button style changed.

Why outlines keep dying

Resets and frameworks often ship with outline set to none, expecting the developer to add a replacement style. The replacement frequently never comes, or it comes as a subtle box shadow that vanishes against a busy product photo background. Focus styles that only work on white sections are not focus styles.

Colour changes do it too. A rebrand swaps the primary button colour, and the old focus ring, tuned against the previous palette, now has almost no contrast against the new one. Nobody files that as an accessibility change, so nobody tests it. That is exactly why it belongs in routine monitoring rather than in project signoff.

What to check, and where

Tab through five templates after every theme release: home, collection, product, cart, checkout. On each, record whether focus is visible on links, buttons, form fields, and the skip link, and take screenshots at the points where it is weakest. Header navigation over imagery and footer links are the usual failures.

Check the indicator against both the element and the background behind it. A two pixel outline in a colour close to the button itself can look fine in a design file and be invisible in the page. If you have to hunt for it at full size on a monitor, a shopper on a laptop in daylight will not find it.

Put it in the release checklist

Monitoring only works if the check has an owner and a slot. Add focus visibility to the same pre-release pass that checks prices and payment, because it breaks the same journeys. Keep last months screenshots so a reviewer can compare, not rely on memory.

When it fails, the fix is a shared focus style in the theme, not one off patches per template. One well tested outline, applied everywhere, with enough contrast in both states, ends the cycle of losing it again at the next update.

Related reading

If this topic is useful, these earlier guides go deeper on connected questions: Monitoring Third Party Review Widgets for Accessibility Regressions, Monitoring Cookie Banners for Focus Traps and Keyboard Dismissal, and Monitoring Live Chat Widgets for Accessibility Drift.

Frequently asked questions

Which WCAG criteria cover focus visibility?

WCAG 2.4.7, focus visible, is the AA requirement. WCAG 2.2 adds 2.4.11, focus not obscured, at AA, which covers sticky headers hiding the focused element, and 2.4.13, focus appearance, at AAA.

Can we replace the outline with a background change?

Yes, if the change is clearly visible and has enough contrast in both states. A faint colour shift usually fails in practice even when it looks acceptable in a design tool, so test it in the real page.

Why do focus outlines disappear after updates?

CSS resets and new component styles often remove the default outline, and the replacement style is forgotten or too subtle. Rebrands also break existing rings by changing the colours they sit against.

How often should focus be checked?

After every theme or component release, on the main templates, as a standing release check. It takes minutes with a keyboard and catches the single most common regression.