Design & UX 9 min read

Shopify Accessibility: What the EAA Requires

Shopify accessibility is no longer only a craft question. Since 28 June 2025 the European Accessibility Act has applied to e-commerce services sold to consumers in the EU, and it reaches you on the basis of where you sell rather than where you are registered. A store run from Cairo, London or Austin that ships to Germany is in scope on the same terms as a German one.

The short answer to the question most merchants ask: no, a well-built theme does not make you compliant. Shopify hands you a reasonable starting point and then hands you the pen. Accessibility is a property of the live store — your content, your customisations, your apps — and that is the part nobody audits until someone complains. Below: what the Act asks for, why the theme baseline stops short, the failures we find on almost every store we open, and the order to fix them in.

What the European Accessibility Act actually asks of an online store

The Act (Directive (EU) 2019/882) does not itself list rules for buttons and colour. It sets out accessibility requirements for a set of products and services — e-commerce among them — and leans on a harmonised European standard, EN 301 549, for the technical detail. EN 301 549 in turn imports the Web Content Accessibility Guidelines more or less wholesale. So the working bar for a storefront is WCAG at level AA. If you are doing the work once, build to the most recent WCAG version rather than the oldest one that would satisfy an auditor — the standard has tracked WCAG’s own releases, and the newer criteria are the ones covering things like target size that modern storefronts routinely fail.

Scope is where merchants get this wrong in both directions, so it is worth being precise:

Situation In scope?
You sell to consumers in the EU, from anywhere in the world Yes — scope follows the market, not your head office
You have fewer than 10 staff and turnover or balance sheet total of €2m or less, and you provide a service No — the microenterprise exemption covers services
You are a microenterprise, but you manufacture or distribute covered products Yes — the exemption is for services only
You sell B2B only, with no consumer-facing storefront Generally outside the consumer e-commerce scope

Two caveats. Enforcement sits with individual member states, each of which transposed the directive into its own national law with its own regulator and penalties — Germany’s BFSG is the most cited, not the only one. And the microenterprise threshold is a live number: crossing ten employees changes your obligations, so a growing brand should not treat the exemption as permanent. None of this is legal advice; where the answer has money attached, it belongs with your own counsel.

Why Shopify accessibility is not a theme setting

Shopify does set a real bar for themes sold in its Theme Store. Those requirements are public, and they are not trivial: a minimum average Lighthouse accessibility score of 90 across the home, collection and product templates on both desktop and mobile; every part of the page reachable by keyboard, dropdown navigation included; a visible focus state on focusable elements; focus order that matches DOM order; text contrast of 4.5:1 for body copy and 3:1 for large text and non-text elements such as borders and icons; touch targets of at least 24×24 CSS pixels; alt attributes on images; and form labels whose IDs actually match their inputs.

That is a good foundation. It is also a statement about a theme as submitted, in its demo configuration — not about your store as published. Everything that makes the store yours happens after that snapshot.

Diagram of four stacked layers in a Shopify storefront: the Shopify-hosted checkout at the base marked as largely Shopify's code, the Theme Store baseline above it marked as tested once at submission, then your theme customisations and your content and installed apps, both marked as your responsibility and untested
The theme is audited once, in its demo state. Every layer you add above it ships untested.

The hosted checkout is the one place where this works in your favour: on Shopify’s own checkout you do not control most of the markup, and you are not the one who has to fix its focus order. That is a genuine advantage over a self-hosted stack, where checkout is entirely your problem. Everything before the checkout — and any checkout UI extensions you add on Plus — is yours.

The five failures we find most often

These are not exotic. They are what turns up when you open a live, well-tended Shopify store and start pressing Tab.

1. Contrast on the parts nobody re-checked

Themes ship compliant defaults and then a brand palette lands on top of them. The casualties are consistent: sale badges in a light accent on white, placeholder and helper text set in a muted grey, disabled-looking secondary buttons, and text laid over a lifestyle photograph whose brightness varies per product. Run the actual pairs rather than trusting the palette — our free WCAG contrast checker will tell you in seconds which of them clear 4.5:1.

2. Alt text that describes the file, not the product

Shopify supports alt text on every product image; the field is simply left empty at import, or filled by a bulk script with the product title repeated across all seven angles. For a shopper using a screen reader, seven identical descriptions are worse than one good one. Purely decorative images should carry an empty alt attribute so they are skipped rather than announced.

3. Keyboard traps in drawers and modals

Cart drawers, quick-view modals, filter panels and newsletter pop-ups are the usual offenders. The pattern is always the same: the overlay opens, focus stays behind it on the page underneath, and Escape does nothing. A keyboard user is now stranded. Open every overlay on your store using only the keyboard and confirm that focus moves into it, stays inside it while it is open, and returns to the trigger when it closes.

4. Forms held together by placeholder text

Placeholders are not labels — they disappear the moment someone types, and assistive technology treats them differently. Every input needs a real label whose for matches the input’s id, and errors need to be announced rather than only turning red. This overlaps almost exactly with conversion work: the same fields that fail an accessibility check are the ones quietly costing you sales.

5. Apps that inject markup nobody reviewed

Review widgets, upsell blocks, cookie banners, currency switchers and chat bubbles all inject DOM into your storefront, and their accessibility is not covered by your theme’s certification. A chat launcher with no accessible name, or a cookie banner that traps focus before a visitor reaches the page, will fail an audit no matter how clean the theme underneath is. It is the same governance problem as the one your app stack creates for store speed: every install is a change to production that nobody reviewed.

What you notice What it usually is Where it gets fixed
Badge or helper text looks faint Contrast below 4.5:1 Theme settings / brand palette
Screen reader reads the same phrase seven times Duplicated or templated alt text Product media, per image
Tab key disappears behind an open drawer No focus trap, no Escape handler Theme JavaScript
Field meaning vanishes once you type Placeholder used instead of a label Theme templates and sections
Chat or cookie widget cannot be reached or dismissed Third-party injected markup The app — or removing it

Overlay widgets do not close the gap

There is a category of app that promises compliance from one script tag: a floating button offering high-contrast and larger-text modes. They appeal because the alternative is real work. They are also contested — disability advocacy groups have argued for years that overlays fail the users they claim to serve, and a script running after the fact cannot invent a missing label, restructure a heading order or fix a focus trap inside someone else’s widget. Treat an overlay as a cosmetic layer over an unfixed store, never as evidence of conformance.

A sensible order to fix things in

Accessibility work sprawls if you let it. Sequence it so that the highest-risk, highest-traffic paths are sound before anyone touches an edge case.

Five-step remediation sequence shown as connected stages: audit the buying path, fix global theme issues, repair templates, review third-party apps, then document and monitor, with the first two stages highlighted as the ones that remove the most risk
Fix in path order. The buying journey earns attention before the footer does.
  1. Audit the buying path first — home, collection, product, cart, checkout — with a keyboard and a screen reader, not only an automated scanner. Automated tools reliably catch contrast and missing attributes; they cannot tell you that your focus order is nonsense.
  2. Fix global theme issues, because they are single changes with sitewide effect: focus states, colour tokens, heading hierarchy, skip links.
  3. Then templates — product media alt text, form labels, filter and drawer behaviour.
  4. Then apps. Ask each vendor for their conformance position; replace the ones that cannot give you a straight answer.
  5. Document what you did and keep checking. Accessibility regresses with every theme edit and every install, which is why it belongs in the same routine as performance rather than in a one-off project.

If you would rather start with a read of where you stand, a free Shopify store audit will surface the structural issues alongside the speed and conversion ones. Where the findings point at the theme itself rather than at settings, our UI/UX design service handles remediation, and the Shopify store redesign cost page sets out what a rebuild rather than a repair tends to involve.

Frequently asked questions

Does the EAA apply to my store if I am not based in the EU?

Yes, if you offer your service to consumers in the EU. The Act follows the market you sell into rather than the country you are registered in, which is why non-EU brands shipping to Europe are in scope on the same terms as European ones.

Is my Shopify store compliant if I use a Theme Store theme?

No. Theme Store requirements are checked against the theme as submitted, in its demo configuration. Your palette, your content, your section arrangement and your installed apps all sit on top of that and are not covered by it.

What is the fastest thing I can do this week?

Two things, both cheap. Tab through your entire buying path and note anywhere focus vanishes or you cannot escape an overlay. Then run your brand colour pairs through a web accessibility contrast check. Those two passes surface most of what an automated scan would flag, plus the keyboard problems it would miss.

The takeaway

Shopify gives you a defensible starting point and a checkout you do not have to fix yourself. Everything above that line is yours, and the European Accessibility Act has turned it from a quality question into a market-access one for anyone selling into the EU. Start with the buying path, fix globally before you fix locally, hold your apps to the same standard as your theme, and treat it as maintenance rather than a project — because the next theme edit will undo some of it.

Share X in wa
Mohamed ElQadi
Mohamed ElQadi Tech Lead @ Qode Bites

I help business owners untangle the mess between their website and their revenue — performance, conversion, and the unglamorous fixes that move numbers. Egypt + US.

Follow QodeBites on LinkedIn →
• FREE PLAYBOOK

The E-Commerce
Growth Playbook

17 moves that turn a store into a revenue machine — the exact levers our team pulls for the brands we build and grow.

  • Convert more of the traffic you already pay for
  • Speed wins that lift revenue on every visit
  • Retention flows that make the second sale cheaper
  • Ad math so you scale in profit, not blind

Get the free PDF

Enter your details and we’ll send it straight to your screen.

No spam — the guide now, and the occasional useful email. Unsubscribe anytime.

More Insights

Discover more articles, expert perspectives, and practical insights on software development, product design, emerging technologies, and digital innovation.

Ready to light it up?

Start a Project

Your Trusted Growth Partner
For Startups And Enterprises

From first concept to final deployment, Qode Bites delivers everything needed to take your idea live — with seamless setup, performance-ready infrastructure, and expert support every step of the way. Book a free 30-minute strategy call.

What We'll Cover

  • Current store performance
  • UX and conversion bottlenecks
  • Growth opportunities
  • Recommended action plan
Book a Strategy Call

June

FriSatSunMonTueWedThu

Sat, June 2