Skip to main content
Perceivly: Perceivly home

2.4.4 Link Purpose (In Context)

Level A · added in WCAG 2.0

You must be able to tell where a link goes from its text alone, or from its text plus its programmatic context. That context is the same sentence, paragraph, list item or table cell.

Who it helps

Screen reader users often pull up a list of all links on a page, where "Read more" repeated ten times means nothing. Keyboard users and people with cognitive disabilities also benefit when link text is clear.

How to meet it

Examples

Fails:Repeated "Read more" links with no context in the link or its container
<h3>Spring sale starts Monday</h3>
<p>Save on outdoor gear this week.</p>
<a href="/news/spring-sale">Read more</a>

<h3>New store in Denver</h3>
<a href="/news/denver-store">Read more</a>
Fails:An icon link with no accessible name
<a href="/cart">
  <svg aria-hidden="true" width="24" height="24"><use href="#icon-cart"></use></svg>
</a>
Passes:Link text that explains each destination
<h3>Spring sale starts Monday</h3>
<p>Save on outdoor gear this week.</p>
<a href="/news/spring-sale">Read more about the spring sale</a>

<h3>New store in Denver</h3>
<a href="/news/denver-store">Read more about the Denver store</a>
Passes:The icon link gets a name with visually hidden text
<a href="/cart">
  <svg aria-hidden="true" width="24" height="24"><use href="#icon-cart"></use></svg>
  <span class="visually-hidden">Shopping cart</span>
</a>

Can a scanner detect this?

Partly

Automated tools flag links and image map areas that have no accessible name at all. They cannot tell whether a name like "Read more" or "Details" makes sense in context, so a person must review link text.

axe-core rules that test it

Common mistakes

Official W3C explanation of 2.4.4

Check your own page

See which automated WCAG checks your page fails, with the failing elements and how to fix them.

Enter a page address, for example example.com/shop.

Reviewed November 2, 2026