WCAG 2.1 SC 4.1.2: Name, Role, Value (Level A)
4.1.2 Name, Role, Value (Level A) — what it requires, a common failure example, and how to fix it. Part of WCAG 2.1's 4.1 Compatible guideline under the Robust principle.
WCAG 2.1 guidelines hub → Robust → 4.1 Compatible
4.1.2 Name, Role, Value (Level A)
Compatible means your markup works correctly with the range of user agents and assistive technologies people actually use — current browsers, screen readers, voice control software, switch devices — including tools you didn’t test against directly, because they all rely on standards-compliant, well-formed markup to do their job.
This page is educational technical reference material, not legal advice. Meeting WCAG 2.1 does not by itself determine legal compliance with the ADA or any other law — consult qualified counsel for legal risk questions.
Plain-language explanation: This is one of the most consequential single criteria in all of WCAG for real-world screen-reader usability. Every interactive UI component needs an accessible name (what it’s called), a role (what kind of control it is — button, checkbox, link, slider), and, where applicable, a value/state (checked, expanded, selected) that assistive technology can read programmatically — and any state changes need to be announced automatically, without the user having to move focus to notice them.
Common failure: A <div> styled to look exactly like a button, with a click handler attached via JavaScript, has no role="button", no keyboard handler, and no accessible name — a screen reader announces it as plain, unlabeled text, and it’s invisible to keyboard-only navigation entirely, even though it’s fully clickable with a mouse.
Remediation: Use native HTML elements (<button>, <a>, <input>) wherever possible — they get correct name/role/value behavior for free. Where a custom widget is unavoidable, follow the WAI-ARIA Authoring Practices Guide patterns for that widget type, and verify state changes (like a toggle’s checked state) fire an accessible state-change notification, not just a visual one.
In this guideline — 4.1 Compatible: 4.1.1 Parsing (A) · 4.1.2 Name, Role, Value (A) · 4.1.3 Status Messages (AA)
← Previous: 4.1.1 Parsing (A) · Next: 4.1.3 Status Messages (AA) →
↑ Back to the Robust overview · Full WCAG 2.1 wiki
See a sample report or check pricing — $890 one-time, $99/month for ongoing re-checks after fixes ship.
This page is educational content about technical accessibility practice, not legal advice. Meeting WCAG 2.1 does not guarantee legal compliance with the ADA or any other law. Consult qualified counsel for legal risk questions.
This page was drafted with AI assistance and reviewed by a person for accuracy before publication.