Skip to main content
Off-Page SEOIntermediate

nofollow

nofollow explained: rel values sponsored, ugc, and nofollow, the hint model since 2019, paid and user-generated links, internal links, and how to audit link attributes.

  • #Off-Page SEO
  • #SEO Glossary
  • #Link Building
  • #Link Attributes
Reviewed by Crawl Foundry Team, Editorial Team9 min read

In Plain English

nofollow is a link attribute value and a robots meta rule that tells search engines you do not want to vouch for a linked page or have it crawled from your site. Google treats it as a hint.

Key Takeaways

  • nofollow qualifies a link; it does not remove a page from the index and does not block crawling with certainty
  • Paid links belong in rel="sponsored" and links in comments or forums in rel="ugc"; nofollow covers the remaining cases
  • Internal links rarely need nofollow, because it does not redistribute link equity and hides real paths from crawlers

Deep dive

Quick definition

nofollow is a value for the HTML rel attribute on links and a rule in the robots meta tag. On a single link, rel="nofollow" says that you do not want search engines to associate your site with the target page or to crawl that page because of your link. As a page-level rule, nofollow applies the same request to every link on the page.

nofollow is not an off switch. Since 2019, Google has described it as a hint that it weighs together with other signals. It also does not remove a page from the index. That job belongs to noindex, which is a different rule with a different purpose.

Where nofollow appears

You will meet nofollow in three places, and they are easy to mix up in an audit.

html<!-- 1. On a single link -->
<a href="https://example.com/offer" rel="nofollow">Offer</a>

<!-- 2. For every link on a page, via the robots meta tag -->
<meta name="robots" content="nofollow">

<!-- 3. For files without HTML, as an HTTP header -->
X-Robots-Tag: nofollow

The link attribute is by far the most common form. The meta tag and the X-Robots-Tag header work at page level, so one small change in a template can qualify hundreds of links at once. The value none in the robots meta tag is shorthand for noindex, nofollow, which surprises people who only wanted to keep a page out of the index.

The HTML standard defines nofollow as a link type meaning that the author of the current page does not endorse the referenced document. Search engines built their crawling and ranking behavior on top of that meaning.

In September 2019, Google added two more specific values. Today the three values have separate jobs.

Use sponsored for advertisements, paid placements, and other links created through compensation. Affiliate links fall into this group because the publisher earns money from the click or sale. If you already use nofollow for paid links, Google does not ask you to rewrite them, but sponsored describes the relationship more precisely.

rel="ugc" for user-generated content

Use ugc for links inside comments, forum posts, reviews, and other content written by users. Google suggests that site owners may remove the attribute for trusted, long-standing contributors. That is a moderation decision, not an SEO trick.

rel="nofollow" for everything else

Use nofollow when neither of the other values fits and you still do not want to vouch for the link. Typical examples are links to sources you do not trust, links you must show for legal or documentary reasons, and links in widgets you do not control.

Values can be combined in a space- or comma-separated list. rel="ugc nofollow" is valid and useful when other search engines do not understand ugc. WordPress, for example, has written comment links as rel="nofollow ugc" by default since version 5.3.

From directive to hint

When Google, Yahoo, and Microsoft introduced nofollow in 2005, the goal was to fight comment spam. For many years, Google treated the attribute largely as an instruction not to pass ranking credit through the link.

The 2019 announcement changed the model. All three values became hints for ranking purposes immediately. From March 1, 2020, Google also uses nofollow as a hint for crawling and indexing. Google's current documentation still says that links with these attributes will generally not be followed. "Generally" is the important word: Google can discover a target URL through other paths and may still crawl it.

The practical consequence is simple. nofollow expresses your relationship to the target. It does not guarantee what Google will do with that target.

What nofollow does not do

Most nofollow mistakes come from expecting effects the attribute never had.

  • It does not deindex anything. A page that receives only nofollow links can still be indexed if Google finds it another way, for example through a sitemap or an external link.
  • It is not access control. Private areas need authentication. A nofollow on the login link protects nothing.
  • It does not replace robots.txt. If you want to stop compliant crawlers from fetching a URL pattern on your own site, use a Disallow rule in robots.txt. Google's documentation recommends this for links within your own site.
  • It does not repair link spam. If someone points manipulative links at your site, you cannot attach nofollow to their pages. In rare cases a disavow file is the tool for that problem.

A useful test is to ask why the link exists. If money, products, or another benefit changed hands, it is a paid link. Google's spam policies treat buying or selling links for ranking purposes as link spam. Paid links are fine when they carry sponsored or nofollow.

Examples that need a qualifier:

  • a sponsored article that links to the sponsor's product page
  • affiliate links in a product comparison
  • a link given in exchange for a free product or a discount
  • links in blog comments, forum threads, and user profiles
  • banner and text ads that are plain HTML links

Examples that usually do not need one: an editorial link to a source you used, a link to a partner you recommend without payment, and links to your own documentation on another subdomain. A qualifier on every outbound link signals caution, not quality. Blanket nofollow can make sense for open platforms with heavy spam pressure, but it rarely fits a normal company blog.

If you are unsure whether a backlink from a cooperation counts as compensated, write down what was agreed. That documentation is also useful if a manual action ever needs to be explained in a reconsideration request.

Some sites put nofollow on links to the login page, the cart, filter combinations, or the imprint. The hope is usually that the remaining links receive more link equity. This idea, often called PageRank sculpting, does not work as intended. Google engineers explained publicly as early as 2009 that the share of a nofollowed link is not redistributed to the other links on the page.

Internal nofollow has a second cost. Crawlers lose a real path through your site, and a page that is only reachable through nofollowed links may be discovered late or not at all. For URL spaces you genuinely want to keep crawlers out of, use robots.txt. For pages that should not appear in search results, use noindex and leave them crawlable so the rule can be read.

There are narrow exceptions, such as links that trigger an action like "add to cart" or "log out". Even there, a button or form is usually the cleaner solution than a link with a qualifier.

No, but their value is not easy to measure. A nofollow link from a relevant page can still bring visitors, brand searches, and new contacts. Because Google treats the attribute as a hint, it may also use some of these links for discovery or ranking. Google does not publish when or how often that happens, so any precise percentage you read elsewhere is an estimate.

For link building, that means two things. A natural link profile contains followed and nofollowed links, and a link from a strong publication is worth having even when the publisher qualifies all outbound links. At the same time, you should not buy links and hope that the missing attribute goes unnoticed.

The visible page and the HTML a crawler sees are not always the same. Check the attribute where it actually ends up.

  1. Open the page source and search for the link. This shows the server response.
  2. Inspect the element in your browser's developer tools. This shows the rendered DOM, including attributes added by JavaScript.
  3. Compare both. Plugins, tag managers, and affiliate scripts often rewrite links after the page loads.
  4. Check page-level rules: the robots meta tag in the <head> and the X-Robots-Tag HTTP header.
  5. For your own domain, look for old sponsored content. A query such as site:example.com "sponsored" with search operators quickly surfaces candidates, although the result list is never complete.

nofollow in content management systems

Most CMS platforms set link attributes in the editor, in a plugin, or in the theme. In WordPress SEO, comment links receive nofollow ugc automatically, while links in posts depend on the editor and any SEO plugin you use. Shop systems and forum software have their own defaults.

The weak spot is usually not the editor but the template. A theme update, a new comment plugin, or a footer widget can add or remove attributes on thousands of URLs. That is why a crawl after a template release is worth more than a manual spot check.

A practical audit workflow

  1. List all link types on the site: editorial links, affiliate links, ads, user content, navigation, and footer.
  2. Define the expected attribute for each type: none, sponsored, ugc, or nofollow.
  3. Crawl the site with a tool that reads the rendered HTML, not only the source.
  4. Compare the found attributes with your expectations, grouped by template.
  5. Check page-level nofollow and none in meta tags and HTTP headers.
  6. Remove internal nofollow where it hides real paths, and use robots.txt or noindex where those are the right tools.
  7. Document paid cooperations and their link rules for editors and partners.
  8. Repeat the crawl after theme, plugin, or tracking changes.

Common mistakes

  • using nofollow to keep a page out of the index
  • setting none in the robots meta tag when only noindex was intended
  • leaving affiliate links and sponsored posts without sponsored or nofollow
  • adding nofollow to internal navigation in the hope of steering link equity
  • blocking a URL in robots.txt and expecting Google to read a noindex on it
  • checking only the page source when JavaScript rewrites links afterwards
  • treating every nofollow backlink as worthless or every followed backlink as valuable
  • relying on a single spot check after a theme or plugin update

The Crawl Foundry perspective

Crawl Foundry has its own crawler with a crawl history. It checks the rendered HTML and shows internal links as the crawler found them in the DOM: source, target, anchor text, and position on the page. Because runs can be compared, you can see whether a template change altered the link structure.

If you want to trace these relationships page by page, the internal link analysis in Crawl Foundry is the place to start. What no crawler can tell you is how Google weighs a specific nofollow link as a hint. For that question, the honest answer remains: Google does not publish it.

Review sources

Why It Matters for SEO

Link attributes tell Google which links you vouch for. Unqualified paid links can violate Google's spam policies, while nofollow in the wrong place can hide important pages from crawlers.

Common questions

What is nofollow?

nofollow is a link attribute value and a robots meta rule that tells search engines you do not want to vouch for a linked page or have it crawled from your site. Google treats it as a hint.

Why does nofollow matter for SEO?

Link attributes tell Google which links you vouch for. Unqualified paid links can violate Google's spam policies, while nofollow in the wrong place can hide important pages from crawlers.

Reviewed by

Crawl Foundry Team

Editorial Team
AI SEOEditorial SystemsSearch Strategy

The Crawl Foundry editorial team.

Trace internal links with Crawl Foundry

The Crawl Foundry crawler reads the rendered HTML and shows every internal link with source, target, anchor text, and position, so you can compare crawl runs.

Explore Internal Link Analysis

Search this website

Find product information, FAQ and documentation with links to the original pages.