Platform checklist

EAA checklist for Shopify stores

Running on Shopify does not make a store accessible. Shopify controls its hosted checkout and publishes conformance reports for it; your theme, your apps and your content are yours. Shopify home pages also average more detectable errors than the web as a whole. This checklist covers the parts you control, in the order customers hit them.

Facts checked on . Sources are linked inline.

What Shopify covers and what you cover

Shopify publishes separate accessibility conformance reports for its checkout, admin and some themes rather than one claim for the platform (Shopify accessibility). Its checkout report, dated March 2026 and tested against WCAG 2.2 A and AA, lists criteria the checkout only partially supports (Shopify checkout report), including:

  • focus order (the primary button and the "Return" link do not follow the visual order);
  • contrast of some text, input borders and focus rings;
  • focus visibility, which "may be inconsistent, difficult to see, or non-existent";
  • error messages that "may not be immediately brought to the user's attention";
  • small touch targets on some tooltips, and third-party payment controls that may not convey their state.

Themes in the Shopify Theme Store must reach an average Lighthouse accessibility score of at least 90 on the home, product and collection pages (Shopify theme requirements). That is a useful floor, not conformance: Lighthouse runs a subset of automated checks.

Everything you add on top is your responsibility under the EAA: theme customisations, sections, apps that inject widgets (reviews, chat, popups, upsells, cookie banners), and every product image and description.

How Shopify stores score

The WebAIM Million 2026 scan found an average of 75.1 detectable errors on 42,516 Shopify home pages, against 56.1 for all one million pages tested. The shopping category as a whole averaged 71.0. In the Netherlands, the consumer authority ACM tested about 100 large webshops in March 2026 and found that in 61% a disabled customer could not complete an order at all, citing keyboard-unreachable order buttons and inaccessible CAPTCHAs (ACM).

The checklist

Theme basics

  • The page language matches each storefront locale (the lang attribute on the html element).
  • Every page has one clear h1 and a logical heading order; sections do not skip levels for styling.
  • A skip link jumps to the main content, and the header, navigation, main and footer use landmark elements.
  • Text and icon colours meet contrast: 4.5:1 for normal text, 3:1 for large text, input borders and focus indicators.
  • Every interactive element shows a visible focus ring, and sticky headers or cookie bars do not hide the focused element (WCAG 2.4.11).
  • Layout works at 400% zoom without horizontal scrolling on a 1280 pixel window (reflow).

Navigation and search

  • The menu opens and closes with the keyboard, and Escape closes it.
  • Icon-only buttons (menu, search, cart, account) have accessible names.
  • The search field has a real label, and predictive search results can be reached and chosen with the keyboard.

Collection pages

  • Filters and sort controls are real form controls with labels; applying a filter announces the new result count (status messages).
  • A filter drawer moves focus inside when opened, keeps it there, and returns it to the trigger when closed.
  • Pagination or load more is keyboard operable and keeps focus in a sensible place.

Product pages

  • Every product image has alt text that describes what matters (colour, cut, what is in the box). Decorative images have empty alt.
  • Variant swatches are real radio buttons or buttons with names such as "Colour: forest green", not coloured divs. Sold out variants say so in text, not only by greying out.
  • Quantity steppers have labels on the plus and minus buttons and on the number field.
  • Price, sale price and unit price are readable as text, not only by strike-through styling.
  • Image galleries and carousels can be paused, are keyboard operable, and do not autoplay without a stop control (pause, stop, hide).
  • "Add to cart" confirms the result to screen reader users.

Cart drawer and cart page

  • The cart drawer behaves as a dialog: focus moves in, stays in, Escape closes it, and focus returns to the cart button (dialog pattern).
  • Quantity changes and removals announce the updated total.
  • Touch targets are at least 24 by 24 CSS pixels (target size).

Forms and accounts

  • Every field has a visible label, not just a placeholder.
  • Name, email, address and phone fields use autocomplete attributes (identify input purpose).
  • Errors are shown in text next to the field, identify the problem, and are announced.
  • Login does not depend on solving a puzzle; avoid CAPTCHAs that block assistive technology.

Apps and third-party widgets

  • Test every app that injects markup: reviews, chat, loyalty, popups, upsells, countdown timers, cookie consent.
  • Popups can be closed with the keyboard and do not trap focus.
  • Remove accessibility overlay apps rather than counting on them. See overlays vs code fixes.

Checkout

  • You cannot change Shopify's hosted checkout code, but you control its branding: check the contrast of your checkout colours and button styles.
  • Test any checkout extensions, custom fields and payment apps you add with a keyboard and a screen reader.
  • Note the gaps Shopify itself reports in your own accessibility statement, so customers know where to get help.

Statement and feedback

How to test it

  1. Run an automated scan of the home page, a collection, a product with variants, the cart and the account pages. Our free scan covers up to 10 pages.
  2. Unplug the mouse and buy something with the keyboard alone, from the home page to the payment step.
  3. Repeat with a screen reader: VoiceOver on a Mac or iPhone, NVDA on Windows.
  4. Zoom to 200% and 400% and check nothing overlaps or disappears.
  5. Re-test after every theme update and every new app.

Fix it in the theme, then keep it fixed

Most items above are changes to Liquid templates, section schema, CSS and a few lines of JavaScript in your theme. A Fix Sprint makes those changes in a copy of your theme, has a person review each one, and proves them with a before and after re-scan. It starts at EUR 1,500.

The Directive exempts microenterprises that provide services: fewer than 10 staff and an annual turnover or balance sheet total of EUR 2 million or less (Article 4(5)). Both conditions have to hold. Everyone above that line who sells to consumers online is in scope from 28 June 2025.

The Act itself describes outcomes (perceivable, operable, understandable, robust) rather than naming WCAG. In practice authorities and courts measure websites against the harmonised European standard EN 301 549, whose web chapter in version 3.2.1 maps to WCAG 2.1 level AA. Working to WCAG 2.2 AA covers those criteria plus the six new level A and AA criteria WCAG 2.2 added.

Questions people ask

Does the European Accessibility Act apply to Shopify stores?

It applies to the business, not the platform. If you sell to consumers in the EU and you are not a microenterprise (fewer than 10 staff and EUR 2 million or less turnover or balance sheet), your store is in scope, whatever plan you are on.

Is Shopify checkout accessible?

Shopify's own March 2026 report, tested against WCAG 2.2 AA, lists several criteria the checkout only partially supports, including focus order, focus visibility, contrast and error announcements (Shopify). You cannot edit the hosted checkout code, but you control its colours and any extensions you add.

Is an accessible Shopify theme enough?

No. Theme Store themes must reach an average Lighthouse accessibility score of 90 (Shopify), but that is an automated subset. Your customisations, apps and product content add most of the issues we see.

Should I install an accessibility app from the Shopify App Store?

Not an overlay. The FTC made accessiBe pay USD 1 million over claims its widget made sites compliant (FTC). Fix the theme instead. See overlays vs code fixes.

How do I find out what fails on my own shop?

Start with an automated scan of your main templates, then test checkout with a keyboard and a screen reader. Our free scan checks up to 10 pages against WCAG 2.2 AA and lists each failure with the page and element. It finds the mechanical issues only; the manual part is in a Fix Sprint.

Find out what fails on your own site

A free scan of up to 10 pages lists the WCAG 2.2 AA failures a script can verify, ranked by severity, with the page and element for each. A Fix Sprint then fixes them in your own code, reviewed by a person and proven with a re-scan. No overlay.

Sources

  1. Shopify, accessibility and conformance reports
  2. Shopify, checkout accessibility conformance report (March 2026)
  3. Shopify, Dawn theme conformance report
  4. Shopify, Theme Store requirements
  5. WebAIM Million 2026 report (February 2026, updated 30 March 2026)
  6. ACM, research into large webshops (24 March 2026)
  7. W3C, Understanding 1.3.5 Identify Input Purpose
  8. W3C, Understanding 2.4.11 Focus Not Obscured
  9. W3C, Understanding 2.5.8 Target Size (Minimum)
  10. W3C, Understanding 2.2.2 Pause, Stop, Hide
  11. W3C, Understanding 4.1.3 Status Messages
  12. W3C, Understanding 1.4.10 Reflow
  13. W3C, ARIA dialog (modal) pattern
  14. FTC, final order requiring accessiBe to pay USD 1 million (22 April 2025)
  15. Directive (EU) 2019/882, the European Accessibility Act (EUR-Lex)
  16. ETSI EN 301 549 V3.2.1, the harmonised standard (PDF)

All links read on 1 October 2026. Spotted something out of date? Email hello@codebetter.ai.