WCAG 2.4.9: Link purpose (link only)
Introduction
WCAG Success Criterion 2.4.9, titled “Link Purpose (Link Only),” is a Level AAA criterion focusing on the clarity and descriptiveness of link text. This criterion stipulates that the purpose of each link must be identifiable from its link text alone, without requiring users to refer to surrounding content or context.
While WCAG 2.4.4 (Link Purpose (In Context), Level A) allows for the purpose of a link to be determined from the link text together with its programmatically determined link context, 2.4.9 sets a much higher bar. For 2.4.9, the link text itself (or its accessible name, which includes alternatives like alt
text for image links or aria-label
) must be sufficiently descriptive on its own, independent of its surrounding paragraph, list item, or heading.
Why This Criterion Matters
Ensuring that link purpose is clear from the link text alone significantly enhances accessibility for a wide range of users:
- Screen Reader Users: Many screen reader users navigate web pages by tabbing between links or by generating a list of all links on a page. When links are generic (e.g., “click here,” “read more”), these users lose critical context and cannot determine where a link leads without navigating to its surrounding content, which can be time-consuming and disorienting.
- Users with Cognitive Disabilities: Clear, explicit link text reduces cognitive load, making it easier for users to understand what will happen when they activate a link. Ambiguous links can lead to confusion, frustration, and navigation errors.
- Users with Motor Disabilities: Users who rely on switch controls or voice input may find it easier to target and activate links with distinct and descriptive labels, as it reduces the cognitive effort required to confirm the link’s destination.
- Users with Low Vision: Users who magnify parts of a screen may only see a small portion of the page at once. If link context is outside their current magnified view, they face similar challenges to screen reader users in discerning purpose.
- Predictability and Efficiency: Clear link text makes navigation more predictable and efficient for all users, improving the overall user experience.
- Search Engine Optimization (SEO): Descriptive link text can also contribute positively to SEO, as search engines use link text to understand the content of the linked page.
WCAG Success Criterion 2.4.9: Link Purpose (Link Only) (AAA)
2.4.9 Link Purpose (Link Only): A mechanism is available to allow the purpose of each link to be identified from link text alone, except where the purpose of the link would be ambiguous to users in general. (Level AAA)
The key phrase here is “link text alone.” This means that if a user encounters the link out of its original context (e.g., in a screen reader’s list of links, or if they only see the link without its surrounding paragraph), they should still be able to understand its destination or function.
The exception, “except where the purpose of the link would be ambiguous to users in general,” is rarely applicable to common web content. It refers to situations where even with full context, the purpose would remain unclear (e.g., a link to a generic download for which no specific descriptive text exists anywhere). In most cases, it’s best to assume this exception does not apply and strive for explicit link text.
Understanding the Requirements
-
“Link text alone”: This refers to the programmatically determined accessible name of the link. This accessible name can be derived from:
- The visible text content of the
<a>
element. - The
alt
attribute of an<img>
element within the link. - An
aria-label
attribute on the<a>
element. - An
aria-labelledby
attribute referencing other descriptive text. - A
title
attribute (though less reliably supported by all assistive technologies thanaria-label
for conveying the accessible name).
For 2.4.9, this accessible name must, by itself, convey the link’s purpose.
- The visible text content of the
- “Purpose”: What action activating the link will perform, or what content the link will lead to. It should clearly indicate the nature of the linked resource or the result of clicking it.
- Ambiguity Clause: As mentioned, this exception is rare. For typical content, authors should always aim to provide a clear purpose. For instance, a link labeled “Download” is ambiguous for 2.4.9 unless its accessible name is something like “Download the Annual Report PDF.”
Practical Guidelines for Compliance
To meet WCAG 2.4.9, consider the following guidelines:
1. Be Explicit and Descriptive
The primary text of the link should clearly indicate its destination or function. Think about what a user would need to know if they only saw the link text and nothing else.
2. Avoid Generic Phrases
Phrases like “click here,” “read more,” “learn more,” “download,” or “view details” are almost always problematic for this criterion when used as standalone link text. Instead, incorporate the destination into the link text itself.
3. Unique Links, Unique Purpose
If you have multiple links on a page that lead to different destinations, ensure their link text is distinct and accurately reflects their individual purposes. This avoids confusion when users encounter them out of context.
4. Considerations for Image Links
When an image is used as a link, its alt
attribute serves as its accessible name. Therefore, the alt
text must be descriptive of the link’s purpose. If the image itself already conveys the purpose, the alt
text should describe the image and implicitly the link’s purpose.
5. Dynamic Content and JavaScript Links
Ensure that links generated or manipulated by JavaScript (e.g., in single-page applications, accordions, or tabs) still adhere to descriptive link text principles. The accessible name should update appropriately if the link’s purpose changes.
6. Using `aria-label` or `aria-labelledby`
While the best practice for 2.4.9 is to have the *visible* link text be descriptive, aria-label
or aria-labelledby
can be used to provide a descriptive accessible name if the visual design constraints prevent fully explicit visible text. However, rely on this sparingly and always prioritize visible descriptive text for the broadest user benefit, especially for users with cognitive disabilities or low vision who don’t use screen readers.
Examples
Correct Implementations
These examples demonstrate how link purpose can be clear from the link text alone:
Text Link with Descriptive Text
The link text explicitly states the destination.
<p>For detailed information about our company's mission and values, please visit our <a href="/about-us.html">About Us page</a>.</p>
Image Link with Descriptive `alt` Text
The alt
attribute provides the clear purpose for the image link.
<a href="/contact">
<img src="mail-icon.png" alt="Contact us by email" />
</a>
Text Link Enhanced with `aria-label`
While the visible text is concise, the aria-label
provides a complete description of the link’s purpose, making its accessible name fully descriptive. This satisfies 2.4.9, but visible descriptive text is generally preferred.
<p>Download the report in PDF format: <a href="/annual-report-2023.pdf" aria-label="Download the 2023 Annual Report in PDF format">Download (PDF)</a>.</p>
Incorrect Implementations
These examples violate WCAG 2.4.9 because the link purpose is not clear from the link text alone:
Generic “Click Here” Link
The link text “Click Here” provides no information about its destination or purpose without relying on the preceding paragraph.
<p>To learn more about our company's mission and values, <a href="/about-us.html">click here</a>.</p>
Image Link Without Descriptive `alt` Text
The alt
attribute is missing or non-descriptive, making the image link’s purpose unclear.
<a href="/contact">
<img src="mail-icon.png" alt="" /> <!-- Alt text is empty -->
</a>
<a href="/contact">
<img src="mail-icon.png" /> <!-- Alt attribute is missing -->
</a>
Generic “Read More” Link (Even with context)
Even though there’s surrounding context, the link text “Read More” alone doesn’t convey what will be read. This fails 2.4.9.
<div class="article-preview">
<h3>New Product Launch</h3>
<p>We are excited to announce our latest product. It features innovative technology and improved user experience.</p>
<a href="/new-product">Read More</a>
</div>
Best Practices and Common Pitfalls
Best Practices
- Prioritize Visible Descriptive Text: While
aria-label
can technically satisfy 2.4.9, making the actual visible link text descriptive is the most robust and universally beneficial approach for all users, including those without assistive technologies. - Test in Isolation: To check for compliance, try reading your links out of context. Use a screen reader’s “list of links” feature, or simply copy-paste all links into a plain text editor to see if their purpose is clear.
- Contextualize Verbally (if necessary): If visual design absolutely requires a concise link, provide context in the *full link text* or its accessible name, rather than relying on surrounding paragraphs. For example, instead of “Details,” use “Product A Details.”
- Provide Programmatic Alternatives: For icon-only links, ensure the
alt
attribute (for image links) oraria-label
(for SVG/font icons) is descriptive and conveys the purpose.
Common Pitfalls
- Over-reliance on Visual Cues: Assuming that visual design (e.g., a link being next to a specific heading or within a certain paragraph) is sufficient to convey purpose. WCAG 2.4.9 strictly prohibits this.
- Generic Link Text: The most common failure, using phrases like “Click Here,” “More,” “Read More,” without further qualification within the link’s accessible name.
- Missing or Empty `alt` Attributes: For image links, a missing or empty
alt
attribute means the link has no accessible name, failing 2.4.9. - Insufficient `title` Attributes: While a `title` attribute can contribute to the accessible name, its support across assistive technologies is inconsistent compared to
aria-label
. It should not be the sole mechanism for providing a descriptive purpose if the visual text is generic. - Repetitive Link Text for Different Destinations: Using the same generic link text (e.g., “View Article”) for multiple different articles. Each link should be distinct.
Conclusion
WCAG 2.4.9 “Link Purpose (Link Only)” is a crucial Level AAA criterion that significantly impacts the navigability and usability of web content for all users, especially those relying on assistive technologies or with cognitive limitations. By consistently applying descriptive and explicit link text (or accessible names), developers and content creators can ensure that every user can understand where a link leads, regardless of how they access the information. Adhering to this criterion leads to a more robust, intuitive, and accessible web experience.