How a shop is tested, and against which standards

Validiscan tests a shop against WCAG 2.2 AA with automated rules and with a manual checklist that a person works through. The results are stated as conformance with WCAG 2.1 AA and WCAG 2.2 AA success criteria as evaluated on the listed pages and dates, never as a compliance percentage.

Last updated:

Which standards does Validiscan test against?

Validiscan tests against WCAG 2.2 AA: every finding and every fix has that target. The results are reported against WCAG 2.1 AA and WCAG 2.2 AA, and each success criterion is shown with its clause in EN 301 549, the European standard for the accessibility of ICT products and services.

WCAG and EN 301 549 versions and their status as of 6 October 2026
Standard Published Status
WCAG 2.1 5 June 2018, by the W3C Adopted at levels A and AA by EN 301 549 V3.2.1 for web content. Every Remediation Evidence Package reports against WCAG 2.1 AA.
WCAG 2.2 5 October 2023, by the W3C Validiscan’s target for every finding and every fix. The web requirements of EN 301 549 V4.1.1 are aligned with it.
EN 301 549 V3.2.1 March 2021, by ETSI Its reference is published in the Official Journal of the EU under the Web Accessibility Directive (Directive (EU) 2016/2102), by Commission Implementing Decision (EU) 2021/1339.
EN 301 549 V4.1.1 September 2026, by ETSI Prepared under the European Commission’s standardisation request for the European Accessibility Act. Its reference is not published in the Official Journal of the EU.

Source: W3C, WCAG 2.1 and WCAG 2.2; ETSI, EN 301 549 V3.2.1 and V4.1.1; Commission Implementing Decision (EU) 2021/1339

Details: who publishes WCAG and EN 301 549, and how EN 301 549 numbers the criteria

The W3C publishes the Web Content Accessibility Guidelines (WCAG 2.1, WCAG 2.2). ETSI publishes EN 301 549. Its clause 9 adopts the WCAG success criteria at levels A and AA as requirements for web content, numbered 9 followed by the criterion’s number: criterion 1.1.1 is clause 9.1.1.1. A criterion added by WCAG 2.2, such as 2.5.8 Target Size (Minimum), has a clause only in V4.1.1, the version whose web requirements are aligned with WCAG 2.2.

Is EN 301 549 a harmonised standard under the European Accessibility Act?

ETSI publishes EN 301 549 as a harmonised European standard, but as of 6 October 2026 Validiscan found no reference to it, or to any other harmonised standard, published in the Official Journal of the EU under the European Accessibility Act (EAA, Directive (EU) 2019/882). Under Article 15 of the EAA, products and services that conform to harmonised standards whose references are published in the Official Journal are presumed to meet the EAA’s accessibility requirements, as far as those standards cover them.

The reference to EN 301 549 V3.2.1 is published under a different law: the Web Accessibility Directive (Directive (EU) 2016/2102), which covers the websites and mobile applications of public sector bodies, by Commission Implementing Decision (EU) 2021/1339.

EN 301 549 V4.1.1 was prepared under the Commission’s standardisation request for the EAA, C(2022) 6456. Its Annex ZB relates its clauses to the requirements of the EAA, and the standard says that conformity with its normative clauses gives a presumption of conformity with the corresponding requirements of the EAA once its reference is cited in the Official Journal under that directive.

Validiscan keeps the status of each standard in one place, with the date it was last checked. A Remediation Evidence Package records the standards as they stood on the day it is built, so a later change in their status does not rewrite a package already issued. Which standard a law requires of a particular shop is a legal question that this page does not answer. The guides on the European Accessibility Act for online shops and on WCAG 2.2 AA and EN 301 549 set out what the primary sources say.

Why WCAG 2.2 AA, and why does the report also name WCAG 2.1 AA?

Validiscan works to WCAG 2.2 AA because it is the newer version, the one EN 301 549 V4.1.1 is aligned with. The results are also stated against WCAG 2.1 AA, the level adopted by EN 301 549 V3.2.1, whose reference is published in the Official Journal under the Web Accessibility Directive.

Added by WCAG 2.2 at levels A and AA
6 criteria
Removed by WCAG 2.2
4.1.1 Parsing
Evaluated
Once per criterion; the Remediation Evidence Package shows the results in two tables, for WCAG 2.1 AA and WCAG 2.2 AA

Source: W3C, WCAG 2.2; ETSI, EN 301 549 V3.2.1 and V4.1.1; Commission Implementing Decision (EU) 2021/1339

Details: the W3C’s recommendation, the criteria WCAG 2.2 adds and removes, and how the package shows both versions

Validiscan works to WCAG 2.2 AA because it is the newer version and the one that EN 301 549 V4.1.1, published by ETSI in September 2026, is aligned with. The W3C’s Accessibility Guidelines Working Group, which writes WCAG, recommends that sites adopt WCAG 2.2 as their new conformance target, even if formal obligations mention previous versions (WCAG 2.2). The results are also stated against WCAG 2.1 AA, because that is the level EN 301 549 V3.2.1 adopts, the version whose reference is published in the Official Journal under the Web Accessibility Directive.

The two versions overlap almost completely. Every WCAG 2.1 success criterion at levels A and AA is also in WCAG 2.2, except 4.1.1 Parsing, which WCAG 2.2 removed. WCAG 2.2 adds six criteria at those levels:

  • 2.4.11 Focus Not Obscured (Minimum), level AA
  • 2.5.7 Dragging Movements, level AA
  • 2.5.8 Target Size (Minimum), level AA
  • 3.2.6 Consistent Help, level A
  • 3.3.7 Redundant Entry, level A
  • 3.3.8 Accessible Authentication (Minimum), level AA

Each criterion is evaluated once. The Remediation Evidence Package then shows the results twice, in one table for WCAG 2.1 AA and one for WCAG 2.2 AA. For 4.1.1 Parsing, which only the WCAG 2.1 table lists, the package records the criterion as supported, with the basis “Always satisfied for HTML content (WCAG 2.1 errata)”.

The package describes what it covers in this sentence: “Conformance with WCAG 2.1 AA and WCAG 2.2 AA success criteria as evaluated on the listed pages and dates.” It also says: “This package is evidence of an evaluation and of remediation work. It is not a certificate and does not state legal compliance.”

What the Remediation Evidence Package contains

What does the scan test automatically?

Validiscan’s scanner loads each page in a real browser, Chromium driven by Playwright, and runs two kinds of rules: the rules of axe-core and Validiscan’s own checks for barriers typical of online shops. 102 of the rule catalogue’s 128 entries run in a scan.

entries in the rule catalogue
128
run in a scan
102
of them axe-core rules
79
of them Validiscan checks
23
axe-core rules superseded and switched off
11
entries not run
15

Source: Deque Systems, axe-core, source code and licence

Details: the browser, and what each finding names

Validiscan’s scanner loads each page in a real browser, Chromium driven by Playwright, and runs two kinds of rules on it: the rules of axe-core, an open-source accessibility testing engine, and Validiscan’s own checks for barriers typical of online shops. Each finding names its rule, the elements and pages where it fails, and the WCAG criteria and EN 301 549 clauses of that rule.

What is axe-core, and how does the scan run it?

axe-core is developed by Deque Systems and published under the Mozilla Public License 2.0 (axe-core’s source code on GitHub). Validiscan uses axe-core 4.13.0. On every page and at each screen size, the scanner runs axe-core with its rules for WCAG levels A and AA and, by default, a second time with its best-practice rules. Best-practice findings are reported, but they count neither in the conformance tables nor in remediation progress.

What do Validiscan’s own checks test?

Validiscan has 23 checks of its own. Among other things, they look at cookie banners, carousels, target size, visible focus, focus order and keyboard traps, focus hidden behind sticky headers and bars, reflow at a narrow width, text spacing, checkout, address and login forms, the text alternatives of product images, and live updates of price and stock when a product variant is chosen. Several of them operate the page instead of only reading it: they move through it with the Tab key, check it at a narrow width, apply wider text spacing, and on a product page choose another variant and then restore the original.

Which rules run, and which do not?

Validiscan’s rule catalogue has 128 entries: 105 rules of axe-core and 23 Validiscan checks. 102 of them run in a scan: 79 axe-core rules and all 23 Validiscan checks. The other entries never produce a finding:

  • Superseded. 11 axe-core rules test something that one of Validiscan’s checks also tests. The scanner switches these axe-core rules off, so that one element never gives two findings for the same failure. For example, axe-core’s target-size gives way to Validiscan’s vs-target-size.
  • Not run. 15 entries are marked experimental or deprecated in axe-core, which leaves such rules out of its runs, or they test only level AAA, which is outside the target.

Not every rule that runs can report a finding today: a few of them can only mark a result for review, and the scanner does not keep those results yet. The limits at the end of this page explain this.

The rule catalogue lists every entry with its status. The criteria matrix shows, for each WCAG 2.2 criterion at levels A and AA, the running rules that test it and the manual check for it, where the checklist has one.

What has to be checked by hand?

Every WCAG 2.2 criterion at levels A and AA that no running rule tests, and some that rules test only in part, such as keyboard operation, focus order and captions. Validiscan’s manual checklist has 35 items; 22 of the 55 criteria are covered only by it.

WCAG 2.2 success criteria at levels A and AA
55
tested by at least one running rule
33
tested by no running rule, covered only by the manual checklist
22
items on the manual checklist, worked through by a person
35
Details: the counts, what the checklist asks for, the screen readers, and how each result is recorded

Many WCAG success criteria need a person’s judgement. Validiscan’s manual checklist has 35 items, each for one success criterion at level A or AA that automated checks cannot fully prove. Of the 55 WCAG 2.2 success criteria at levels A and AA, 22 are tested by no rule that runs and are covered only by this checklist. The other 33 are tested by at least one running rule. For some of them, such as keyboard operation, focus order and captions, the checklist has an item as well, because a rule tests them only in part. For the rest, it has none.

The checklist asks, among other things, for these checks:

  • the way to the basket with a keyboard alone: the menus, a product page, choosing a variant, adding to the basket, then changing a quantity and removing an item;
  • every modal and the cookie banner by keyboard: focus moves in, Escape closes, focus comes back;
  • search, product variants, the basket and the checkout fields with a screen reader;
  • form errors: announced when they appear, naming the field and saying how to correct it;
  • the page zoomed to 400 percent;
  • videos: captions and audio description.

The checklist names the screen readers for these passes: NVDA with Chrome on Windows, and VoiceOver with Safari on a Mac. For each item, Validiscan records pass, fail or not applicable, with notes and evidence. The result decides how the criterion is reported in the Remediation Evidence Package.

Which pages and screen sizes does a scan cover?

A full scan loads a sample of each kind of page, up to 150 sampled pages by default, with the cart, the first checkout step and some other pages on top when it finds them. By default, each page is loaded and checked at desktop and at phone size.

Sampled pages, by default
up to 150
Desktop size, by default
1440 by 900 pixels
Phone size, by default
390 by 844 pixels, with touch input
On top, when the scan finds them
the cart, the first checkout step, search results, the login or registration page, the contact page and the legal pages
Checkout
One product in stock added to the cart; never a completed purchase, never payment data
Details: which pages, how the cart and checkout are reached, and cookie banners and blocked services

A full scan, which is the baseline scan of a project, loads a sample of each kind of page in the shop, up to 150 sampled pages by default: the home page, product lists, product pages and the other kinds of page it finds, with the cart, the first checkout step, search results, the login or registration page, the contact page and the legal pages on top when the scan finds them. By default, every page is loaded at desktop size (1440 by 900 pixels) and at phone size (390 by 844 pixels, with touch input), and all checks run at both sizes.

To reach the cart and the checkout, the scan adds one product that is in stock to the cart, opens the cart and opens the first checkout step. It never completes a purchase and never enters payment data.

A cookie banner is tested as part of the page first. By default, the scan then accepts it, so that the rest of the page can be tested. Known analytics, advertising, chat and review services are blocked during a scan by default, so that the results do not depend on them. Consent tools are not blocked, because the cookie banner is part of what is tested.

ValidiscanBot: how the scanner identifies itself and how to block it

When may Validiscan scan a shop?

Validiscan scans a shop in full only with its owner’s written permission, recorded in Validiscan’s application; verification scans and regression protection runs need it too. The free check runs without it, within fixed limits: at most 15 pages, nothing added to a cart, the checkout never opened.

A full scan and the free check, compared
Question Full scan Free check
Does it need the owner’s permission? Yes: written, recorded in Validiscan’s application with the time and the name of the person who recorded it. A verification scan and a regression protection run need it too. No. It runs within fixed limits.
Does it follow robots.txt? Yes, by default. It can be set to ignore robots.txt only for a shop whose owner’s permission is recorded. Yes, the robots.txt of the shop’s host, with known exceptions.
How many pages? Up to 150 sampled pages by default, with some pages on top At most 15 pages
Cart and checkout? Adds one product in stock to the cart and opens the first checkout step. Never completes a purchase or enters payment data. Never adds anything to a cart and never opens the checkout.
Details: how the permission is recorded, robots.txt, and the free check’s limits and exceptions

Validiscan scans a shop in full only with its owner’s permission. A full scan, a verification scan and a regression protection run need the shop owner’s written permission, recorded in Validiscan’s application with the time and the name of the person who recorded it. Without that record, the application refuses to queue the scan, and a scheduled regression protection run is skipped.

A full scan follows the shop’s robots.txt by default. It can be set to ignore robots.txt only for a shop whose owner’s permission is recorded.

The free check runs without that permission, within fixed limits. It loads at most 15 pages, never adds anything to a cart and never opens the checkout. It follows the robots.txt of the shop’s host and leaves at least 1 s between the requests it starts itself, with known exceptions: its first request, for the home page, is made before robots.txt is read, and when the shop answers a page load in the browser with a redirect, the browser follows it at once, without that gap and without checking robots.txt. The free check page describes every limit and exception.

How are the results counted, and why is there no compliance percentage?

Validiscan gives no compliance percentage: conformance is decided criterion by criterion, some criteria need a person’s check, and a scan covers sampled pages on given dates. Results are counts of findings by impact and status, a conformance result per WCAG criterion and one single number, remediation progress, always shown with its formula.

What a single percentage would hide

  • Conformance is decided criterion by criterion

    Each WCAG criterion at levels A and AA gets one of five results.

  • Some criteria need a person’s check

    A criterion with an item on the manual checklist is shown as supported only when that manual check passed.

  • A scan covers sampled pages on given dates

    The results describe the pages it loaded on the dates it ran.

How are findings counted?

The same failure on many pages is one finding with an instance count: instances of one rule on the same element pattern are grouped together. Each finding has an impact (critical, serious, moderate or minor) and a status, from open through fixed to verified.

How is conformance decided for each criterion?

Each WCAG criterion at levels A and AA gets one of five results: supports, partially supports, does not support, not applicable or not evaluated. A criterion that has an item on the manual checklist is shown as supported only when that manual check passed; while it has no manual result and no failure was found, it is not evaluated. A criterion without a checklist item is shown as supported when a running rule tests it and no failure is left that is unresolved or awaiting verification. For these criteria, among them 1.1.1 Non-text Content and 2.4.4 Link Purpose (In Context), a result of supports rests on automated checks alone. The page on the Remediation Evidence Package gives the rule behind each of the five results.

How is remediation progress calculated?

Remediation progress is the sum of the impact weights of the findings that are fixed, verified or resolved externally, divided by the sum of the impact weights of all findings. Findings marked as a false positive or as won’t fix, and best-practice findings, are left out of both sums. Each finding counts with the weight of its impact, so a critical finding moves the number more than a minor one.

Impact weights in the remediation progress formula
Impact Weight
Critical 10
Serious 5
Moderate 2
Minor 0.5

Won’t fix takes a finding out of remediation progress, not out of conformance. In the conformance tables it still counts as a failure, because the barrier is still there.

What can this method not prove?

Automated checks find only part of all accessibility barriers, and a scan describes the pages it loaded on the dates it ran. The failures a scan reports are a floor, not a total. This page also names gaps that Validiscan has recorded in its scanner and not yet closed.

The limits

  • Automated checks prove only part of WCAG.

  • Pages are sampled.

  • A scan is a point in time.

  • The checkout ends at its first step.

  • Other frames and closed shadow DOM.

  • Blocked services are not tested.

  • Results that need review are not reported yet.

  • Screenshots show the first screen.

Details: each limit, and what Validiscan does until a gap is closed

Automated checks find only part of all accessibility barriers, and a scan describes the pages it loaded on the dates it ran. The Remediation Evidence Package prints its own limitations. The list below also names gaps that Validiscan has recorded in its scanner and not yet closed.

  • Automated checks prove only part of WCAG. A rule cannot judge whether a text alternative describes its image, whether an error message makes sense when it is read aloud, or whether captions are right. The manual checklist covers the last two. The quality of text alternatives has no checklist item today, so a result of supports for 1.1.1 Non-text Content rests on automated checks alone. The failures a scan reports are a floor, not a total.
  • Pages are sampled. A scan checks a sample of each kind of page. Other pages built from the same templates are expected to behave alike, but they are not checked one by one.
  • A scan is a point in time. The results describe the shop on the dates of the scans. Later changes to the theme, apps or content are not covered until the next scan; regression protection re-scans the shop on a schedule.
  • The checkout ends at its first step. No order is placed and no payment data is entered, so the later steps of the checkout are not tested automatically.
  • Other frames and closed shadow DOM. Content inside cross-origin frames and closed shadow DOM, such as payment fields and some consent tools and widgets, is not evaluated automatically. Validiscan’s cookie banner check does not evaluate a banner that sits in shadow DOM or in a cross-origin frame.
  • Blocked services are not tested. The analytics, advertising, chat and review services that a scan blocks are not tested. Fixing third-party embeds, such as payment and chat, is not part of a project either.
  • Results that need review are not reported yet. When axe-core or one of Validiscan’s checks cannot decide a result, it marks the result for review instead of reporting a failure. The scanner does not keep these results today, so they do not appear as findings. This affects links to PDF and other documents, which Validiscan’s documents check only marks for review, and cookie banner, focus, keyboard and form results that a check could not settle. A few rules that run therefore cannot produce a finding today. Until the scanner keeps these results, Validiscan checks the cookie banner by hand and records the result in the manual checklist. PDFs themselves are not part of a project.
  • Screenshots show the first screen. The scanner captures each page at the size of the screen, not its full length. A screenshot for a finding further down a page shows the top of the page. Until the scanner captures full pages or single elements, Validiscan checks the figures of each Remediation Evidence Package by hand before the package is issued.

Sources

8 sources, each checked for this page on 6 October 2026.

Standards 4
  1. Web Content Accessibility Guidelines (WCAG) 2.1 · W3C ·  · checked
  2. Web Content Accessibility Guidelines (WCAG) 2.2 · W3C ·  · checked
  3. EN 301 549 V3.2.1 (2021-03) · ETSI · checked
  4. EN 301 549 V4.1.1 (2026-09) · ETSI · checked
EU law 3
Tools 1
  1. axe-core, source code and licence · Deque Systems · checked

Start with a free check of your shop.

Send your shop’s address. Validiscan scans it and replies with every failure the scan can prove, with the page and the code.

Request a free check

Or write to info@validiscan.com.

What the free check covers, and what it leaves out
You send
your shop’s address
Pages scanned
up to 15
You get
every failure the scan can prove, with the page and the code
On your shop
public pages only; no login, nothing bought, no forms sent
What it is not
a full audit

Write to Validiscan

For a free check, give the address of your shop and its platform.

Validiscan uses what you send to answer you. Privacy notice