Link name
Moderate effortFound on 36% of audited stores.
Add a descriptive, screen-reader-accessible label to every link on your store so assistive technologies can announce where each link leads.
What it is
Every hyperlink on a webpage must have a meaningful text label that screen readers can announce to blind or low-vision users. A link's accessible name can come from the visible text inside it, an image's alt text, an `aria-label` attribute, or an `aria-labelledby` reference. When a link contains only an icon, an image with no alt text, or an empty `<a>` tag, screen readers have nothing meaningful to say — they may just announce "link" or skip it entirely. WCAG Success Criterion 2.4.4 ("Link Purpose – In Context") requires that every link's purpose can be determined from its label alone or from its surrounding context.
Why it matters
Links without accessible names fail WCAG 2.4.4 (Level AA), which is the legal accessibility standard referenced in the ADA, Section 508 (US), EN 301 549 (EU), and similar laws worldwide — exposing your store to demand letters, complaints, and lawsuits that are increasingly common in ecommerce. Beyond legal risk, screen-reader users (estimated at 7–8 million in the US alone) simply cannot navigate your store's menus, product cards, or checkout links, costing you real customers and revenue. Search engines also use link anchor text as a ranking signal; unnamed links are dead weight that dilutes your internal linking strategy and can suppress category and product page rankings. Fixing this issue improves accessibility, SEO, and conversion simultaneously.
How to fix it
- Audit your site for links that contain only an icon, an image, or are completely empty — common culprits are social-media icon links, 'Read More' buttons without context, image-only banners, and navigation icon buttons (hamburger menus, cart icons, close buttons).
- For text links that are too vague (e.g. 'Click here', 'Read more'), rewrite the visible anchor text to describe the destination or action, e.g. 'Read more about our return policy'.
- For icon-only or image-only links, add an aria-label attribute to the <a> tag that describes the destination, e.g. <a href='/cart' aria-label='View your shopping cart'>…icon…</a>.
- For linked images, ensure the <img> tag inside the <a> has a descriptive alt attribute that conveys the link destination, e.g. alt='Shop Women's Running Shoes'. If the image is purely decorative and text nearby already names the link, use alt='' so screen readers skip the image and read the surrounding text instead.
- If you want the label text to exist in the DOM but stay visually hidden, wrap it in a visually-hidden CSS class (position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap;) rather than display:none or visibility:hidden, which hide it from screen readers too.
- After making changes, re-test with a free tool (axe DevTools browser extension, NVDA + Chrome, or VoiceOver + Safari) to confirm every link now announces a clear, unique purpose.
<a href="/collections/shoes" aria-label="Shop Women's Running Shoes">
<!-- icon or image with no visible text -->
<img src="shoes-banner.jpg" alt="">
</a>
<!-- OR: visually-hidden text technique -->
<a href="/pages/returns">
<svg aria-hidden="true" focusable="false">…</svg>
<span class="visually-hidden">View our return policy</span>
</a>
/* Visually-hidden utility class */
.visually-hidden {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}Fix it on your platform
Pick your platform for the exact steps.
How to fix link name on Shopify
- Go to Online Store → Themes → (your active theme) → Actions → Edit code.
- Search for the offending link in the relevant Liquid template (e.g. sections/header.liquid for nav/cart icons, snippets/icon-*.liquid for SVG icons, or sections/footer.liquid for social links).
- For icon-only links (e.g. cart, search, account), add aria-label to the <a> tag: <a href='/cart' aria-label='Shopping cart'>…</a>.
- For social icon links in the footer snippet, locate each <a> and add aria-label='Follow us on Instagram' (or the relevant network).
- For linked product images in theme sections, open the relevant section file and ensure every <img> inside an <a> has a descriptive alt attribute — Shopify's Dawn theme uses {{ product.featured_image | image_tag: alt: product.title }}, so check that alt values are not blank.
- Save changes and verify with the axe DevTools browser extension or Shopify's built-in Theme Inspector.
How to fix link name on Shopify Plus
- Same as Shopify above; additionally audit any custom checkout scripts in Settings → Checkout → Additional scripts and any Launchpad or Script Editor customisations that inject links.
- For headless storefronts using the Storefront API, fix aria-label and alt attributes in your front-end component files (React/Vue/etc.) in your repository and redeploy.
How to fix link name on WooCommerce
- In the WordPress admin, go to Appearance → Theme File Editor (or use a child theme via FTP/SSH).
- Open the template file containing the problematic link — common locations: header.php or inc/navigation.php for nav icons; woocommerce/loop/loop-start.php or archive-product.php for product card links; footer.php for social icons.
- Add aria-label or a visually-hidden <span> to each unnamed link as shown in the code example above.
- For the WooCommerce cart icon in the nav, many themes render it via a widget or shortcode — check Appearance → Widgets or Appearance → Customize → Header and look for a 'Cart Icon' option that may expose an alt/label field.
- Install the free 'WP Accessibility' plugin (Accessibility → Settings) for automatic fixes to common unlabeled links (e.g. adding skip links and labelling icon-font navigation items).
- Test with the axe DevTools browser extension after saving.
How to fix link name on BigCommerce
- Go to Storefront → My Themes → (active theme) → Advanced → Edit Theme Files.
- Locate the template containing the unnamed link — typical files: templates/components/common/navigation.html for nav icons, templates/components/products/card.html for product cards, templates/layout/base.html for header/footer links.
- Add aria-label to icon-only <a> tags or add alt text to linked <img> tags directly in those Handlebars (.html) template files.
- For social share icons, check templates/components/common/share.html.
- Click Save & Apply and re-test with the axe DevTools extension.
How to fix link name on Wix
- Open the Wix Editor for your site.
- Click on the element containing the unnamed link (e.g. an image, button, or icon).
- In the panel that appears, look for 'Settings' or the accessibility/tooltip option; for image links, click 'What's in the image?' (alt text field) and enter a descriptive label.
- For icon buttons (social icons, cart icon), click the element → Settings → 'Tooltip' or 'Accessibility' and enter the accessible label.
- For links added via the Wix Editor's 'Add Link' dialog, ensure the linked text is descriptive rather than 'Click here'.
- In Wix Studio (the developer-facing editor), you can directly edit HTML properties via Custom Code or Dev Mode — add aria-label attributes to <a> elements in your custom components.
How to fix link name on Wix Studio
- Open your project in Wix Studio and switch to Dev Mode (toggle in the top toolbar).
- Select the unnamed link element on the canvas; in the Properties & Events panel, add an aria-label property with a descriptive value.
- For image elements inside links, select the image, open its Settings panel, and fill in the Alt Text field.
- For custom coded components (using Velo/JavaScript), open the relevant .js or JSX file in the code panel and add aria-label or alt attributes programmatically.
- Publish and verify with the axe DevTools browser extension.
How to fix link name on Squarespace
- For linked images: click the image block → Edit → Content tab → fill in 'Alt Text' with a description of the link destination.
- For navigation icon links (social icons in the footer): go to Pages → Not Linked → Footer, or visit Design → Style Editor → Social Links; Squarespace auto-generates aria-labels for built-in social icons — if they are missing, report via Squarespace support as this is a platform-level template issue.
- For Button blocks with vague labels ('Read More'): click the button → Edit → Button Text and change the label to something descriptive.
- For custom code blocks (Settings → Advanced → Code Injection, or individual page Code Blocks): manually add aria-label attributes to any <a> tags you have written.
- Use CSS injection (Design → Custom CSS) to add a .visually-hidden utility class if you want to include hidden text inside links added via code blocks.
How to fix link name on Webflow
- Open the Webflow Designer and select the unnamed link element in the Navigator panel.
- In the right-hand Settings panel (gear icon), find the 'Aria Label' field and enter a descriptive label (e.g. 'View shopping cart').
- For linked images, select the image element inside the link, open its Settings panel, and fill in the 'Alt Text' field.
- For CMS-driven links (e.g. product cards), open the Collection List item, select the link wrapper, and bind its Aria Label to a CMS field (e.g. the product name field) using dynamic binding.
- Publish the site and verify with the axe DevTools browser extension in the published URL.
How to fix link name on Adobe Commerce (Magento)
- SSH into your server (or use your IDE) and locate the PHTML or HTML template file responsible for the problematic link — common paths: app/design/frontend/<Vendor>/<theme>/Magento_Theme/templates/html/header.phtml (for header icons), Magento_Catalog/templates/product/list.phtml (for product card links), Magento_Theme/templates/html/footer.phtml (for footer/social links).
- Add aria-label='<descriptive text>' to the <a> tag, or for linked images ensure the <img> tag has a non-empty alt attribute.
- If using a third-party theme, create a template override in your custom theme directory rather than editing vendor files directly.
- Run bin/magento cache:clean && bin/magento cache:flush after saving.
- Re-test with the axe DevTools browser extension on the front end.
How to fix link name on Magento Open Source
- Follow the same template-override approach as Adobe Commerce above.
- Locate templates under app/design/frontend/<Vendor>/<theme>/ and add aria-label or alt attributes to the relevant <a> or <img> tags.
- Flush the Magento cache with bin/magento cache:flush after changes.
- Verify with axe DevTools.
How to fix link name on PrestaShop
- In the back office, go to Design → Theme & Logo → (your active theme) → Use this theme.
- Via FTP or your hosting file manager, navigate to themes/<your-theme>/templates/ and open the template file containing the unnamed link (e.g. _partials/header.tpl for the header, catalog/listing/product-list.tpl for product cards).
- Add aria-label='<descriptive text>' to the relevant <a> tag or a descriptive alt attribute to the <img> inside it.
- If using a child theme or theme override, place edits in the child theme to survive updates.
- Clear the PrestaShop cache in Advanced Parameters → Performance → Clear cache, then re-test.
Does your site have this issue?
Run a free SEOLZ audit to find link name — and every other issue — across your whole site in minutes.
Scan my site freeFrequently asked questions
What is Link name?
Every hyperlink on a webpage must have a meaningful text label that screen readers can announce to blind or low-vision users. A link's accessible name can come from the visible text inside it, an image's alt text, an `aria-label` attribute, or an `aria-labelledby` reference. When a link contains only an icon, an image with no alt text, or an empty `<a>` tag, screen readers have nothing meaningful to say — they may just announce "link" or skip it entirely. WCAG Success Criterion 2.4.4 ("Link Purpose – In Context") requires that every link's purpose can be determined from its label alone or from its surrounding context.
Why does link name matter?
Links without accessible names fail WCAG 2.4.4 (Level AA), which is the legal accessibility standard referenced in the ADA, Section 508 (US), EN 301 549 (EU), and similar laws worldwide — exposing your store to demand letters, complaints, and lawsuits that are increasingly common in ecommerce. Beyond legal risk, screen-reader users (estimated at 7–8 million in the US alone) simply cannot navigate your store's menus, product cards, or checkout links, costing you real customers and revenue. Search engines also use link anchor text as a ranking signal; unnamed links are dead weight that dilutes your internal linking strategy and can suppress category and product page rankings. Fixing this issue improves accessibility, SEO, and conversion simultaneously.
How do I fix link name?
Add a descriptive, screen-reader-accessible label to every link on your store so assistive technologies can announce where each link leads.
Authoritative references
- How to fix this specific rule — Deque/axe (rule reference)
- WCAG 2 overview — W3C WAI
- Web accessibility tutorials — W3C WAI
- ARIA basics — MDN