0 min read

Reviewing EqualWeb Accessibility Widget

PRODUCT DESIGN

b2b2c

The short version

I was the founding designer on EqualWeb's accessibility widget, there from its earliest days. This audit is a full UX/UI review I ran end to end - expert review, real users, benchmarked against competing solutions.

It was not fully implemented. What it shows is the quality of the diagnostic: structured, evidence-based, and specific about what needed to change and why.

Expected outcomes if implemented:

Reduced user errors on critical controls, particularly for low-vision and elderly users

Reduced user errors on critical controls, particularly for low-vision and elderly users

Faster time to first successful action for new users

Faster time to first successful action for new users

Lower support load from navigation and interaction confusion

Lower support load from navigation and interaction confusion

Clearer competitive positioning in a market where accessibility widget UX had become a real differentiator

Clearer competitive positioning in a market where accessibility widget UX had become a real differentiator

The context

EqualWeb's accessibility widget is embedded across websites to let visitors adjust text size, contrast, navigation, and screen reader behavior. The people who install it are website owners buying compliance. The people who actually use it are their visitors - often elderly, low-vision, or otherwise impaired users who never chose the product and encounter it cold.

That gap is a known structural problem in B2B2C products: the paying customer and the end user are not the same person, and feedback rarely travels in the right direction. For a product whose entire purpose is usability for people who need it most, that gap had real consequences.

The widget had grown steadily since its earliest days - each new WCAG requirement built in as the standard evolved. At a certain point, that growth called for a full UX audit. This was it.

The story

What was broken

The more serious problems were in the interaction layer. The widget's logo toggled "Accessibility Mode" - a master on/off switch for all accessibility functions - with nothing to indicate it did anything at all when clicked. Logos are branding. Placing a control that disables the entire widget behind one means users either trigger it accidentally or never find it intentionally. The icon used to snooze the widget had the same problem from the other direction: it read as "close" or "disable," when its actual function was to temporarily hide the accessibility button from the page entirely. Users trying to pause the widget had no reliable way to do it without second-guessing what they were about to turn off.

The absence of onboarding made both problems worse. The widget launched with no introduction - no indication of what it was, what it did, or how to start. For website visitors encountering it for the first time, that's a cold start into a wall of controls. Given the B2B2C model - where website owners install and move on, and their visitors arrive with no prior context - there was no other channel to fill that gap. The widget itself was the only place that introduction could happen.

The visual layer had its own issues. The original icon set had been designed as a coherent system. As features were added over the years, new icons from different sources were placed alongside the originals - different styles, different stroke weights, some at incorrect scale. The result was a mixed visual language with no consistent logic. For a user relying on fast shape recognition rather than reading, that inconsistency adds friction at exactly the wrong moment. On top of that, some controls gave feedback when used while others stayed silent, with no pattern to explain why.

What I decided and why

The logo toggle was the clearest fix in the audit. The logo itself was redundant in the header - it already existed as a text link in the footer. Removing it and relocating the Accessibility Mode toggle to the footer freed the top of the widget for a clearly labeled toggle with proper screen reader description. Same function, placed where it made sense, labeled so it couldn't be missed.

The snooze function got a labeled button and was repositioned alongside related controls. The onboarding banner was designed with a manual dismiss and a session-based flag for returning users.

For the icon system, the right call was to replace everything - original icons included - with a properly designed, pre-made system built to scale. One that provides consistent icons for every existing feature and any planned ones, with uniform sizing, stroke weight, and style throughout. The trade-off was a moderate redesign effort for a meaningfully cleaner result - faster scanning, no visual noise, and a system the product could actually grow with.

Every recommendation was benchmarked against competing solutions and validated with real users to verify the findings were genuine gaps, not personal preference.

What the work recommended

A full set of specific, actionable changes across both clusters - interaction clarity and visual consistency - with before/after design work, WCAG references, and implementation notes. Each recommendation stood on its own. Some were quick. Some required more effort. All of them were grounded in how the actual users of this product experienced it.

As you made it so far

Visual and layout structure: Before and after: the Navigation and Color Adjustment panels annotated across three issues - inconsistent icon styles, inconsistent proportions, and text readability problems - resolved through a unified icon library, consistent sizing, and improved contrast and labeling. The Accessibility Profiles section was also redesigned: a dense vertical list of ON/OFF toggles replaced with a two-column checkbox grid, updated profile names, and a section subtitle that explains what profiles are before the user makes a selection.

Visual separation: Before and after: low-contrast section headers and no visible dividers between groups, replaced with larger high-contrast headers and increased vertical spacing. The fix makes the widget scannable at a glance rather than requiring close reading.

Layout density - Color and Font settings: Before and after: tightly packed controls with undersized touch targets and unclear grouping, replaced with segmented buttons, properly sized interactive areas, divided control sections, and clearer opt-in labeling. The redesign reduces cognitive load without removing functionality.

Interaction clarity: Before and after: the logo functioning as an unmarked Accessibility Mode toggle, the ambiguous snooze icon, and missing state feedback - replaced with a labeled toggle at the bottom of the widget, clearly positioned snooze and close controls, and consistent action feedback throughout.

Onboarding: Before and after: the widget launching cold with no introduction, replaced with a first-time banner explaining what the widget does and how to use it. Manual dismissal. Session-based flag for returning users.

Alex Dihel | Product & Marketing Design Leadership | Design Operations   www.alexdihel.com © | Privacy

Alex Dihel | Product & Marketing Design Leadership | Design Operations   www.alexdihel.com © | Privacy

Alex Dihel | Product & Marketing Design Leadership | Design Operations   www.alexdihel.com © | Privacy