Who this affects
Data table cells are not associated with headers, so a screen reader reads values without saying which column they belong to.
How to fix it
Use <th scope="col"> / <th scope="row"> in data tables.
Effort Low · ~20 min per table
Where this sits in the standard
| WCAG success criterion | Level | EN 301 549 clause |
|---|---|---|
| 1.3.1 Info and Relationships | A | 301-549, 9.1.3.1 |
EN 301 549 clause 9 applies these criteria to web content. The published version referenced by the European Accessibility Act is V3.2.1, which incorporates WCAG 2.1 level A and AA. More on the standard.
How to check it by hand
Move cell by cell with the screen reader's table commands. Each cell should announce its row and column headers. If it reads only the value, the association is missing.
Automated testing settles roughly a third of the WCAG success criteria. This rule is one an automated tool detects reliably — but a clean automated result is not proof of conformance.
Reference
Deque's technical write-up for this rule: td-headers-attr
See whether your site trips this rule
Paste a URL. We open it in a real browser, dismiss the cookie wall and run the full EN 301 549 rule set. No account, no card.