COMPLIANCE · 3 min read · 2026-09-03

Shopify accessibility: what selling into the EU now requires

Accessibility moved from good practice to a compliance question for e-commerce in the EU. What that means for a Shopify store, and the fixes that carry most of the weight.

Shopindev Team

Accessibility used to be argued on ethics and conversion. For anyone selling into the EU it is now also a compliance question: the European Accessibility Act brings e-commerce services into scope, and the standard it points at is the familiar one — WCAG at level AA.

For a Shopify store that is less dramatic than it sounds. Most of the gap is in a small number of recurring defects, and most of them are theme-level, which means one fix covers the whole catalogue.

Where Shopify stores actually fail

Colour contrast. This is the single most common failure and the easiest to introduce accidentally — a brand palette chosen on a designer's calibrated screen, applied to small grey text on a white background. Price, product titles and form labels are the places it hurts.

Images without meaningful alternative text. Product photography needs alt text that describes the product, not the filename and not the SKU. A store with three thousand products and empty alt attributes fails at scale, and it also loses image search traffic.

Form fields without labels. Newsletter signups, search boxes and checkout-adjacent forms frequently use placeholder text as a label. Placeholders disappear on focus and are not announced reliably.

Keyboard traps in overlays. Cart drawers, filter panels and modals that can be opened by mouse but not closed by keyboard, or that let focus escape behind them. Every store with a cart drawer should test this and most have never tried.

Carousels and auto-playing motion with no way to stop them. If it moves on its own, there must be a control, and it should respect a visitor's reduced-motion preference.

The apps problem

A store can pass an audit on its own markup and still fail because of what its apps inject. Review widgets, popups, chat launchers and cookie banners are the usual sources, and they are outside the theme so they escape a theme-level fix.

Test with the apps running, not on a clean theme. If an app is the failure and the vendor will not fix it, that becomes a procurement decision rather than a development one.

How to approach it without a rebuild

Start with an automated pass to find the mechanical failures — contrast, missing labels, missing alt, heading structure. Automated tools find perhaps a third of real issues, but that third is the cheapest to fix and the most systematic.

Then do a keyboard-only run through the paths that matter: find a product, add to cart, reach checkout. Any point where you cannot proceed without a mouse is a defect that automated tools will not report.

Fix at the theme level wherever possible. A contrast token corrected once applies to every page; a per-page fix is a maintenance liability.

The part that is not compliance

Accessibility work overlaps almost entirely with things that help every visitor. Proper labels help autofill. Alt text helps image search. Reliable keyboard behaviour tends to indicate a store that is not fighting its own JavaScript.

And search engines read the same structure that assistive technology reads. A store with a coherent heading hierarchy, real labels and descriptive alt text is easier for a crawler and easier for an answer engine to parse.

Chat on WhatsApp →