2.4.4 Link Purpose (In Context)
The purpose of each link can be determined from the link text alone or from the link text together with its programmatically determined link context.
Last reviewed: September 9, 2026
Understanding 2.4.4
Screen readers let users pull up a list of all links on a page, but more commonly links are encountered in the flow of reading surrounding content such as a paragraph, list item, or table cell. This criterion exists so that vague link text like 'click here' or 'read more' is acceptable as long as the enclosing sentence, list item, or table row programmatically supplies enough context for a user to understand where the link leads before activating it.
How to Meet It
Code Examples
<p>Our Q3 earnings report is now available.</p>
<a href="/reports/q3-2026.pdf">Click here</a><p>Our Q3 earnings report is now available.
<a href="/reports/q3-2026.pdf">Read the Q3 2026 earnings report</a>
</p>Frequently Asked Questions
Can I rely on surrounding text alone, without changing the link text?
Yes, this criterion explicitly allows it: 'link text together with its programmatically determined link context' is sufficient. The key word is programmatic: the context must be structurally associated with the link (same sentence, same list item, same table cell), not just nearby on the screen, since a screen reader user pulling up a links-only list will not hear surrounding paragraph text that isn't structurally tied to the link.
How is this different from repeated 'Read more' links used across a list of article cards?
It's acceptable at Level A as long as each 'Read more' link sits within the same card/container as that article's heading, so the accessible context differs per link even though the visible text repeats. If you want link text to be understandable in total isolation (e.g. in a links-only list with no surrounding context), that stricter requirement is covered by the AAA criterion 2.4.9, Link Purpose (Link Only).
Related Success Criteria
Quick Facts
- Criterion2.4.4
- LevelA
- IntroducedWCAG 2.0
Automate Compliance
AccessiSight automatically scans and identifies 2.4.4 issues in your codebase.
Try Scanner Free