link-name
Web validation
Every <a> element with an href or any element given role="link" needs an accessible name that tells users where the link leads. Screen-reader users rely on that name to build link lists, voice-control users speak it to activate the link, and sighted keyboard users recognise it through the visible focus indicator.
Pass Patterns
Accessible name via text content
Visible text describes the destination.
<a href="/about-us">About us</a>Using aria-label
Icon-only link named with aria-label.
<a href="/contact" aria-label="Contact us">
<img src="phone.svg" alt="" />
</a>Fail Patterns
Missing name
Custom link role without a name.
<div role="link" tabindex="0" onclick="goHome()"></div>Link with a non-text content
Icon-only link has no accessible name.
<a href="/contact">
<img src="phone.svg" alt="" />
</a>WCAG techniques
Sufficient techniques
- ARIA16: Using aria-labelledby to provide a name for user interface controls
- ARIA14: Using aria-label to provide an accessible name where a visible label cannot be used
ACT Rules
Try It Yourself
Using a screen reader
New to screen reader testing, or need a refresher?
Review this article first: Practical guides for using screen readers
- Load the page, open a screen reader.
- Move to the link with Tab.
- Listen to what the screen reader announces.
Expected result: It speaks the link’s name (“About us,” “Chart,” and so on).
Actual result: It announces “link”, “unnamed link” or it reads the URL from the href attribute.
Inspecting the browser dev-tools
- Open the Accessibility Tree panel.
- Select the link element.
Expected result: The Name field shows the text you provided.
Actual result: If unnamed, Name is empty.
FAQ
How does this issue relate to 4.1.2 Name, role, value?
SC 4.1.2 requires user-interface components to expose an accessible name and role. A link without a discernible name violates this requirement because assistive technologies cannot identify or announce its purpose.
Why is this issue marked as Serious?
Links are fundamental navigation elements. When a link lacks an accessible name, screen-reader and voice-control users cannot locate or activate it, and keyboard-only users may lose orientation. These barriers significantly impede independent navigation, so the impact is classified as serious.
Standards and Regulations
| Standard | Success Criterion | Reference |
|---|---|---|
| WCAG 2.2 | 4.1.2 Name, Role, Value (A) | For all user interface components, the name and role can be programmatically determined; states, properties, and values that can be set by the user can be programmatically set; and notification of changes to these items is available to assistive technologies. |
| EN 301 549 | 9.4.1.2 Name, Role, Value | Same as the WCAG text. |
| Section 508 | 1194.22(a) | A text equivalent for every non-text element shall be provided (e.g., via “`alt`”, “`longdesc`”, or in-element content). |
| 508 Trusted Tester | 2.4.4-link-purpose, 6.A | The purpose of each link or button can be determined from any combination of the link/button text, accessible name, accessible description, and/or programmatically determined link/button context. |