SEO a Tag: href, rel, Anchor Text and Target Explained

Все статьи
Все статьи
Neurounit editorial team
11 July 2026
Updated August 30, 2026
Seo
SEO a Tag: href, rel, Anchor Text and Target Explained
Learn which HTML tags actually matter for SEO: title, meta description, headings, alt text, links, and canonical tags, with practical rules for each.

People type SEO a tag into Google when they want one thing: a plain list of what the anchor element does for search, which attributes matter and which are folklore. This is that list, checked against Google Search Central, the WHATWG HTML standard, MDN and the W3C accessibility guidelines.

Google reads your page as HTML, not as a screenshot. The a element is how it walks from one URL to the next and how it decides what the destination is about. Get the anchor wrong and the page behind it is never crawled.

The rule that decides whether Google sees your link

Google’s link best practices page states it without hedging: Google can only crawl your link if it is an a HTML element with an href attribute. Everything else is optimisation on top of that.

Google lists these as parseable: <a href=”https://example.com”>, the relative form <a href=”/products/category/shoes”>, an href carrying an extra onclick or class, and an anchor written properly into the DOM by JavaScript. These it files under not recommended, adding that it may still attempt to parse them:

  • <a routerLink=”products/category”>, a framework attribute with no href
  • <span href=”https://example.com”>, right attribute on the wrong element
  • <a onclick=”goto(‘…’)”> with no href, navigation handled by a script event
  • an href resolving to javascript: rather than a real web address

Do not read “may still attempt” as permission. This is where single page applications lose their category pages: a click handler on a div works for a human with a mouse and is a coin toss for a crawler.

Anchor text: how Google describes the destination

The text between the opening and closing a tags is the closest you get to writing the destination page’s summary yourself. Google’s guidance is specific:

  • Write descriptive text. Google’s own bad examples are “click here”, “read more”, and bare words such as “website” and “article”.
  • Keep it concise and stop short of keyword stuffing.
  • Make it relevant to both the page it sits on and the page it points at.
  • Space links apart instead of chaining them together.

The test Google suggests is worth stealing: read the anchor text on its own, sentence removed. If it still tells you where you are about to go, it works. “Our 2026 pricing” passes. “Here” does not.

Two edge cases. If the link text is empty, Google falls back to the title attribute. If the link wraps an image, the alt attribute becomes the anchor text.

rel=”nofollow”, rel=”sponsored” and rel=”ugc”

nofollow was the only option for nearly fifteen years, from 2005 onward. On 10 September 2019 Google added two more, so owners could say why a link should not count, not just that it should not.

Value Use it for
rel=”sponsored” Advertisements and paid placements. Google’s wording: mark links that are advertisements or paid placements, commonly called paid links, with the sponsored value.
rel=”ugc” Links inside user generated content: comments, forum posts, profile fields.
rel=”nofollow” Everything else you do not want to endorse, when neither of the other two fits.

Three details people get wrong:

  1. They are hints, not commands. Google says marked links will generally not be followed, but the destination can still be discovered through a sitemap or a link from another site. Ranking became a hint in 2019; crawling and indexing followed on 1 March 2020.
  2. You can combine them. Values go in a space or comma separated list. Google’s own examples are rel=”ugc nofollow” and rel=”ugc,nofollow”.
  3. nofollow on a paid link is still acceptable. Google notes it was previously the recommendation and remains valid, though sponsored is now preferred.

When qualifying a link stops being optional

Google’s spam policies define link spam as creating links primarily to manipulate rankings, and name the violations: buying or selling links for ranking purposes, excessive reciprocal linking, automated link building programs, requiring an outbound link as a contractual obligation without letting the partner qualify it, text ads and text links that do not block ranking credit, keyword optimised links inside distributed widgets, and optimised links in forum signatures.

Commerce itself is fine: Google calls buying and selling links a normal part of the economy of the web for advertising and sponsorship. The line is the attribute. A paid link carrying rel=”sponsored” or rel=”nofollow” is compliant. The same link bare is not.

target=”_blank” and the expired rel=”noopener” advice

The target attribute controls where the destination opens. MDN lists the values: _self (the default), _blank, _parent, _top and _unfencedTop.

For years every checklist said to pair target=”_blank” with rel=”noopener” so the new tab could not reach back through window.opener. That is obsolete on current browsers. MDN records it plainly: setting target=”_blank” implicitly provides the same behaviour as setting rel=”noopener”. Safari shipped it first, Firefox in version 79 in 2020, Chromium in version 88 in early 2021, and it is now in the WHATWG HTML standard.

Adding it anyway costs nothing and still covers ancient browsers. What it does not do is affect ranking. Google’s list of link attribute values that carry meaning for Search contains exactly three: sponsored, ugc and nofollow.

The title attribute on a link

The title attribute produces the tooltip on hover. Its only documented role in Google Search is narrow: it is the fallback source of link text when the anchor has no text at all.

That makes it a bad place for anything a user needs: tooltips do not appear on touch screens and screen reader support is inconsistent. If it matters, put it in visible anchor text. If the anchor has no text, an icon link for example, give it an accessible name through aria-label rather than title.

Every other attribute the a element accepts

The HTML standard gives the a element eight content attributes of its own, on top of the global attributes every element gets. Two of the eight come up constantly in SEO conversations. The rest, plus the global title, mostly do not.

Attribute What it does SEO relevance
href The destination URL. Supports tel:, mailto: and other schemes. Required. No href, no link.
rel Space separated relationship values. Three matter: sponsored, ugc, nofollow.
target Where the destination opens. None directly. A usability decision.
title (a global attribute, not specific to a) Tooltip text. Fallback link text only when the anchor is empty.
download Treats the destination as a download. None. Browser intent only.
hreflang Hints at the language of the destination. Not one of the three methods Google supports. Those are link elements in the head, HTTP headers and sitemap entries.
ping URLs that receive a POST when the link is followed. None. Tracking, widely blocked.
referrerpolicy How much referrer data to send. None. Changes the destination’s analytics.
type Hints at the MIME type of the destination. None. MDN notes it has no built in functionality.

The HTML standard adds two structural limits that break real pages. An a element cannot contain interactive content, another a element, or any descendant with tabindex set. And an a element with no href is defined as a placeholder for where a link might otherwise have been, which is how the spec frames the current item in a navigation menu. The standard also requires target, download, ping, rel, hreflang, type and referrerpolicy to be omitted when there is no href.

Internal links: fewer decisions than you think

Internal links do two jobs: they let crawlers reach pages, and their anchor text tells Google what those pages are about. Google’s advice: use internal links to cross reference related content, and link externally when establishing credibility through sources.

  • Every page should be reachable from another page through a real a href. Orphans depend entirely on your sitemap.
  • Vary anchor text across links to one destination. A single exact phrase repeated on fifty pages reads as engineered.
  • Link from body text, not only navigation. Navigation links appear on every page and say less about any single one.
  • Do not put nofollow on internal links. Google’s own instruction for a link to a page on your own site you do not want fetched is a robots.txt disallow rule, not an attribute on the anchor.

If you are not sure which of your pages are reachable at all, our guide on how to find all the pages on a website covers the crawl and index checks that surface orphans.

Image links: the alt attribute is your anchor text

When an a element wraps an img instead of text, the image’s alt attribute becomes the anchor text. Google calls alt the most important attribute for giving metadata about an image.

Google’s own examples set the range. Missing alt is bad. So is the version it prints as a warning, a run of forty odd words starting “puppy dog baby dog pup pups puppies” and running through breed names and “cheap dogfood”. Acceptable is “puppy”. Best is “Dalmatian puppy playing fetch”. Google also asks for descriptive filenames: my-new-black-kitten.jpg, not IMG00023.JPG.

For a linked logo or product thumbnail, write the alt as the destination, not the picture. “Neurounit pricing” beats “screenshot”.

The tags that decide whether anyone clicks

  • <title>. Google states there is no limit on its length, only that the title link is truncated in results to fit the device width. Google may rewrite it, drawing from nine sources it names: the title element, the main visual page title, heading elements such as h1, og:title, other large and prominent styled content, other text on the page, anchor text on the page, the text of links pointing at the page, and WebSite structured data.
  • Meta description. Same on length: no limit, truncated as needed. Google calls it a pitch that convinces the user the page is exactly what they are looking for. Unique per page, not a keyword list.
  • Headings. Google names h1 as one source for a rewritten title link, which is reason enough to keep the first heading accurate and specific.
  • rel=”canonical”. Written as <link rel=”canonical” href=”https://example.com/preferred-url” /> in the head, or as a Link HTTP header. Google treats it as a strong signal, not a directive. It rates redirects and rel=”canonical” as strong signals and sitemap inclusion as a weak one. Include a self referencing canonical, and never give one page different canonical URLs through different methods.

How to audit the a tags on an existing site

  1. Find links that are not a href. Crawl the rendered DOM and compare the links a crawler sees against the clickable elements a user sees. Screaming Frog SEO Spider crawls 500 URLs free; an individual licence is EUR 245 per year.
  2. Review inbound anchor text. The Top linking text section of Google Search Console’s Links report shows the text other sites use to link to you. It covers external links only, tables cap at 1,000 rows, exports at 100,000, and Google says the report is not a comprehensive list of every link on your site. Internal anchor text has to come from your own crawl.
  3. Check paid and affiliate links carry rel. Search the rendered HTML for your affiliate domains and confirm each has sponsored or nofollow.
  4. Check the internal links your key pages receive. The Internal links section of the same report shows which pages link to a given URL. Anything at zero is orphaned.

Chrome DevTools closes the loop. Select an element, open the Elements panel, confirm it is an a with an href and not a styled div.

Want this done rather than described?

We run technical SEO audits that start exactly here: crawlable links, anchor text, qualified outbound links, canonicals and orphan pages, with a fix list your developers can action.

Talk to us

The accessibility rules that overlap with this

  • Success Criterion 2.4.4, Link Purpose (In Context), Level A. The purpose of each link must be determinable from the link text alone, or from the link text plus its programmatically determined context. The accessibility version of Google’s “no click here” rule.
  • Success Criterion 2.5.8, Target Size (Minimum), Level AA. Pointer targets must be at least 24 by 24 CSS pixels, with a deliberate exception for links inline in a sentence, where size is constrained by the line height of the surrounding text. It applies to buttons, icon links and pagination.

A ten minute checklist

  1. Every navigational element is an a with an href.
  2. No anchor reads “click here”, “read more”, “website” or “article”.
  3. Every paid or affiliate link has rel=”sponsored” or rel=”nofollow”.
  4. Comment and forum links carry rel=”ugc” or rel=”ugc nofollow”.
  5. No internal link carries nofollow.
  6. Every linked image has descriptive alt text naming the destination.
  7. Every page has a unique title, unique meta description and self referencing canonical.
  8. Icon links get their accessible name from aria-label, not title.
  9. Nothing interactive is nested inside an a element.
  10. No a element wraps a button, an input or another a element.

FAQ

Does rel=”nofollow” stop Google from crawling the destination?

No. Since 1 March 2020 all three attributes are hints for crawling and indexing. Google says marked links will generally not be followed, but the destination can still be found through a sitemap or a link from another site.

Should I still add rel=”noopener” to target=”_blank” links?

Only for legacy browsers. Implicit noopener shipped in Firefox 79 in 2020 and Chromium 88 in early 2021 and is now in the WHATWG HTML standard. It has never affected ranking.

How long should a title tag be?

Google states there is no limit on its length, only that the title link is truncated in results to fit the device width. Front load the specific part and check it on mobile.

Can I use hreflang on an a tag?

The attribute exists in HTML, but Google supports exactly three hreflang methods: link elements inside a well formed head, HTTP headers, and xhtml:link entries in a sitemap.

What is the fastest way to see all my anchor text?

For anchor text pointing at you from other sites, the Top linking text section of the Search Console Links report, remembering the 1,000 row table cap and 100,000 row export cap. That section covers external links only, so internal anchor text has to come from a crawler. On a small site the free 500 URL Screaming Frog edition does it.

Share:
X
Neurounit editorial team

Facts and figures are verified by the Neurounit editorial team. Questions: Telegram.

AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results
AI marketing: breakdowns, mechanics and results