Link text alone should describe the link’s purpose
Rule
link-purpose-link-only· Deeper checks · impact minor · Static + live
Why it matters
At Level AAA the purpose of every link must be identifiable from its link text ALONE. This is the key difference from Level A (2.4.4, covered by the name-quality rules): there, a generic link like "Read more" passes when the enclosing sentence or paragraph disambiguates it — here it warns even with perfectly clear surrounding context, because screen-reader users navigating a list of the page’s links hear only the link text, stripped of that context. Hidden links, non-link roles, and symbol-only names (covered by name-quality checks) are skipped.
How to fix
Rewrite the link text to name its destination or action ("Read more about the 2026 pricing changes", "Download the annual report (PDF)"). aria-label can extend the visible text, but keep the visible words inside it (2.5.3 Label in Name).
Example
<p>Our pricing changed on 1 May. <a href="/pricing">Read more</a></p>
<p>Our pricing changed on 1 May. <a href="/pricing">Read more about the 2026 pricing changes</a></p>
At Level A the sentence context makes the bad example pass; at AAA the link text alone must carry the purpose.
Example
<p><a href="/annual-report.pdf">Click here</a> to download the annual report.</p>
<p><a href="/annual-report.pdf">Download the 2025 annual report (PDF)</a></p>
WCAG success criteria
2.4.9 Link Purpose (Link Only) — Level AAA
The purpose of each link must be identifiable from its link text alone — unlike Level A (2.4.4), surrounding sentence or paragraph context may not be relied on to disambiguate it.
Standards
This rule contributes to the following standards:
WCAG AAA