Redundant Link: What the Warning Means and Fix
Also called: Adjacent links go to same URL, Duplicate adjacent link, Repeated link
Definition
A redundant link is a link placed directly next to another link with the same destination – typically an image link and a text link in a product or blog card. Keyboard and screen reader users meet the same target twice in a row.
A redundant link is a link that points to the same page as the link right next to it – most often a product image and a product title that are linked separately. Scanners report it as "Redundant link" or "Adjacent links go to the same URL". It is a best-practice alert rather than a hard WCAG failure, but it doubles the work for everyone who navigates by keyboard or screen reader.
What it means
Sighted mouse users see one card and click anywhere on it. A keyboard user has to press Tab twice to get past the card, and a screen reader announces two links in a row, often "Link, blue sneakers" followed by "Link, Blue sneakers". On a category page with 24 products, that is 24 extra tab stops and 24 repeated announcements.
The related rule is WCAG 2.4.4 Link Purpose (In Context), a Level A criterion of WCAG 2.2: the purpose of each link must be clear from its text or its programmatic context. Two adjacent links to the same page usually do have a clear purpose, so the criterion is not failed. That is why W3C lists the fix – technique H2, "Combining adjacent image and text links for the same resource" – as an advisory technique, not a required one.
There is one important exception. If the image link has no alt text, it is not merely redundant: it becomes an empty link, which fails 2.4.4 and 4.1.2 (failure F89).
| Pattern | Result |
|---|---|
| Image link (no alt) + text link, same URL | Empty link – WCAG failure |
| Image link (alt = product name) + text link, same URL | Redundant link – heard twice, best practice |
One link around image + text, image alt="" |
Passes – one stop, one announcement |
Examples
<!-- Redundant link: two tab stops, same destination -->
<a href="/shoes/blue-sneaker"><img src="sneaker.jpg" alt="Blue sneaker"></a>
<a href="/shoes/blue-sneaker">Blue sneaker</a>
<!-- Fixed (W3C H2): one link, image alt is empty because the text names the link -->
<a href="/shoes/blue-sneaker">
<img src="sneaker.jpg" alt="">
Blue sneaker
</a>
<!-- Alternative: keep the image link but take it out of the tab order and hide it -->
<a href="/shoes/blue-sneaker" tabindex="-1" aria-hidden="true">
<img src="sneaker.jpg" alt="">
</a>
<a href="/shoes/blue-sneaker">Blue sneaker</a>The empty alt="" in the combined link is intentional: the link text already says where it goes, so repeating it in the alt text would make the screen reader say the name twice.
Wrap image and text in one link, give the image an empty alt when the text names the target, and keep a single "Read more" style link per card only if its text says what it leads to.
Link the image, the title and a "View" button to the same URL as three separate tab stops, or remove the alt text from a standalone image link to "avoid duplication".
How to fix a redundant link
Shop templates are the most common source. If you run Shopify, check collection pages and "related products" first.
Questions
What is a redundant link in accessibility?
A link placed directly next to another link with the same destination, such as an image link and a text link in one card. Keyboard and screen reader users meet the same target twice.
Is a redundant link a WCAG violation?
Usually not. WCAG 2.4.4 is met when each link's purpose is clear, and both links typically are. W3C treats combining them (technique H2) as advisory. It becomes a failure when the image link has no accessible name at all.
Why does the image need an empty alt after merging the links?
Because the link text already names the destination. An alt text with the same words would be announced right after it, so the screen reader would read the product name twice.
How do I find redundant links on my site?
Look at repeating templates – product grids, teaser lists, headers with logo and site name. Then run the free WCAG scanner on one page per template to see which link issues it produces.
Related terms
Empty Link: What the Error Means and How to Fix It
An empty link is a link element that has no accessible name – no text, no alt text on an image inside it and no aria-label. Screen readers can only announce it as a bare link, so users cannot tell where it leads.
Read definition: Empty Link: What the Error Means and How to Fix ItAlt text
Alt text is a short written description of an image. Screen readers read it aloud, and browsers show it when the image can't load – so people who can't see the image still get its meaning.
Read definition: Alt textIcon Button: How to Give It an Accessible Name
An icon button is a button that shows only a symbol – a magnifier, a cross, three lines – and no visible text. To be accessible it needs an accessible name in code that tells assistive technology what the button does.
Read definition: Icon Button: How to Give It an Accessible Name