How to fix role img alt on Shopify

Add a meaningful aria-label (or aria-labelledby) to every element with role="img" so screen readers can announce what the image represents.

Steps for Shopify

  1. In Shopify Admin, go to Online Store → Themes → click 'Customize' on your active theme.
  2. For SVG icons or icon-font spans in your theme code: click 'Edit code' (three-dot menu next to the theme name) to open the theme code editor.
  3. Search for 'role="img"' across all Liquid files (use the search box at the top of the file tree).
  4. On each matching element, add aria-label="[description]" as an attribute, e.g. <span role="img" aria-label="Free shipping"> or on an SVG: add a <title id="icon-title">Free shipping</title> as the first child and set aria-labelledby="icon-title" on the <svg role="img"> element.
  5. For third-party sections or apps that inject HTML you cannot edit, contact the app developer or use a theme.liquid script injection to patch the rendered DOM after page load as a last resort.
  6. Save and preview with a screen reader (VoiceOver on Mac, NVDA on Windows) or re-run an axe browser extension audit to verify.
Official Shopify documentation ↗

What is role img alt?

When a developer uses the HTML attribute `role="img"` on an element that isn't a native `<img>` tag — for example, an icon font character, an SVG group, a `<div>` containing a decorative graphic, or an emoji used as meaningful content — they are telling browsers and assistive technologies "treat this as an image." However, unlike a real `<img>` tag which has an `alt` attribute, these elements have no built-in place to put a text description. The `aria-label` attribute fills that gap: it provides the invisible text label that a screen reader will read aloud instead of the visual graphic. If `aria-label` (or an equivalent like `aria-labelledby`) is missing or empty, the element is announced to blind or low-vision users as an unlabelled image — or skipped entirely — making it meaningless.

WCAG 2.1 Success Criterion 1.1.1 (Level A — the most basic accessibility level) requires that all non-text content has a text alternative. Failing this criterion means your store is inaccessible to the roughly 7–8 million people in the US alone who use screen readers, exposing you to legal risk under the ADA, Section 508, and equivalent laws in the EU (EAA 2025), UK, Australia, and Canada — accessibility lawsuits against ecommerce stores have increased sharply year-over-year. Beyond legal risk, unlabelled icons and graphics mean blind shoppers cannot understand product badges, trust seals, star ratings rendered as icon fonts, or navigation icons — directly harming conversions and checkout completion rates. Google also uses accessibility signals as part of its overall quality assessment, so a deeply inaccessible site can experience reduced crawl quality over time.

See the complete Role img alt guide for every platform and the full background.

Not sure if your Shopify store has this?

Run a free SEOLZ scan — we’ll find role img alt and every other issue across your whole site.

Scan my site free

Fix role img alt on another platform