Nofollow
rel="nofollow" tells Google you don't vouch for a link. Since 2019–2020 it's a hint, not a directive — and it doesn't reliably block crawling or indexing.
rel="nofollow" is a per-link value of the rel attribute that says 'I don't vouch for this link and don't want to pass ranking signals to it.' Google introduced it in 2005 to fight comment spam, killed PageRank sculpting with it in 2009, and in 2019–2020 downgraded it from a directive to a hint — for ranking on Sept 10, 2019, and for crawling and indexing on March 1, 2020. The big myth to kill: nofollow is not noindex and it doesn't reliably block crawling or indexing. A nofollowed page can still be crawled and indexed via sitemaps, other sites' links, or your own follow links. Use sponsored for paid links, ugc for user-generated ones, nofollow as the catch-all — and you can combine them.
TL;DR —
Evidence for this claim Google recommends rel=nofollow when other qualification values do not apply and the publisher would rather Google not associate with or crawl the linked page from that site. Scope: Per-link Google guidance; nofollow is a hint, not a guaranteed crawl block. Confidence: high · Verified: Google Search Central: Qualify outbound links Evidence for this claim A link-level nofollow is not a reliable way to prevent the destination URL from being crawled or indexed. Scope: Google can discover a URL through other links, sitemaps, or sources; use page-level controls for indexing. Confidence: high · Verified: Google Search Central: Robots meta tagrel="nofollow"is a little tag you add to a link to tell search engines “I don’t vouch for this — don’t pass my ranking signals to it.” It’s useful for ads, affiliate links, and links left by random users (comments). The big thing people get wrong: nofollow does not hide a page from Google. It’s not the same asnoindex, and it doesn’t reliably block crawling.
What a nofollow link is
A normal link looks like this:
<a href="https://example.com">Example</a>A nofollowed link just adds one attribute:
<a rel="nofollow" href="https://example.com">Example</a>That rel="nofollow" is a message to search engines: I’m linking to this page,
but I don’t want to vouch for it or pass my site’s ranking strength to it.
Everything else about the link works exactly the same — people can still click it
and visit the page.
Why it exists
Google introduced nofollow back in 2005, with other search engines, to fight spam. Spammers were dropping links to their sites in blog comments and guestbooks to try to boost their rankings. Nofollow gave site owners a way to say “these links don’t count as a vote from me.”
When to use it
The everyday uses:
- Ads and paid links — anything you got paid to link to.
- Affiliate links — links where you earn a commission.
- User-generated links — comments, forum posts, profile links: anything a visitor (not you) added.
- Pages you link to but don’t want to endorse — say you’re quoting a bad example.
For ads and user content, Google now actually prefers two newer, more specific
tags — rel="sponsored" for paid links and rel="ugc" for
user-generated ones — but plain nofollow still works fine, and you can even
combine them.
The thing almost everyone gets wrong
A nofollow link does not hide a page from Google. This is the #1 myth, and you’ll still see it repeated in old guides.
Nofollow is a link-level tag — it’s about whether you vouch for a link. It is not the same as:
noindex— which is what actually keeps a page out of Google’s results.- Blocking in
robots.txt— which is what controls crawling.
If you nofollow a link, Google can still find, crawl, and index that page through other routes — your sitemap, another site linking to it, or another link on your own site that isn’t nofollowed. So if your real goal is “keep this page out of Google,” nofollow is the wrong tool. (More on indexing and noindex in the deeper version.)
Want the full history, the 2019–2020 change from “rule” to “hint,” and exactly when to use nofollow vs sponsored vs ugc? Switch to the Advanced tab.
Test yourself: nofollow
Nofollow mistakes to remove from the playbook
- PageRank sculpting internal navigation. Nofollowing selected internal links does not funnel their share to the remaining links; it can only weaken normal discovery and site architecture.
- Using nofollow to keep a destination out of search. It is a hint on link
handling, not
noindex. The URL can be found through sitemaps or other links. - Marking every outbound editorial citation nofollow. Trusted references do not need blanket qualification. Use the rel value that truthfully describes the relationship.
- Using plain nofollow when the relationship is known. Prefer
sponsoredfor paid or affiliate links andugcfor user-added links; combine values when both apply. - Confusing link-level and page-level scope.
rel="nofollow"qualifies one anchor;<meta name="robots" content="nofollow">addresses every link on the page. Neither removes that page from the index. - Treating a hint as a security boundary. Nofollow does not prevent users, crawlers, or other sites from reaching a public URL.
“The page is indexed even though its link is nofollowed”
That result is expected: nofollow is not noindex.
- Confirm the goal. If the destination must stay out of search, serve
noindexon the destination and keep it crawlable. If it is confidential, require authentication. - Inventory discovery paths. Check XML sitemaps, navigation, canonicals, redirects, external links, and other internal anchors. Any of them can expose the URL independently of the nofollowed link.
- Confirm which nofollow you used. An anchor rel value affects one link. A
robots meta
nofollowvalue addresses links on the source page. Neither changes the destination’s index directive. - Inspect the destination itself. Check its status, canonical, robots meta,
X-Robots-Tag, and robots.txt access rather than debugging only the source link. - Allow processing time. A newly added noindex takes effect after the search engine recrawls and processes the destination.
Audit accidental internal nofollow
Run this in DevTools Console to classify links on the rendered page:
const links = [...document.querySelectorAll('a[href]')].map((a) => {
const url = new URL(a.href, location.href);
const rel = new Set(a.rel.toLowerCase().split(/\s+/).filter(Boolean));
return {
text: a.textContent.trim().replace(/\s+/g, ' '),
href: url.href,
internal: url.origin === location.origin,
nofollow: rel.has('nofollow'),
sponsored: rel.has('sponsored'),
ugc: rel.has('ugc'),
};
});
console.table(links.filter((link) => link.internal && link.nofollow));
console.table(links.filter((link) => !link.internal));The first table finds internal links that deserve manual review. The second lets you check whether each outbound relationship is classified truthfully. Do not mechanically add or remove rel values based on domain alone; sponsorship and user generation are editorial facts the DOM cannot infer.
TL;DR —
Evidence for this claim Google recommends rel=nofollow when other qualification values do not apply and the publisher would rather Google not associate with or crawl the linked page from that site. Scope: Per-link Google guidance; nofollow is a hint, not a guaranteed crawl block. Confidence: high · Verified: Google Search Central: Qualify outbound links Evidence for this claim A link-level nofollow is not a reliable way to prevent the destination URL from being crawled or indexed. Scope: Google can discover a URL through other links, sitemaps, or sources; use page-level controls for indexing. Confidence: high · Verified: Google Search Central: Robots meta tagrel="nofollow"is a per-linkrelvalue meaning “I don’t vouch for / don’t want to pass signals to this link.” Introduced in 2005 against comment spam. PageRank sculpting with it has been dead since 2009 (Cutts). Since Sept 10, 2019 it’s a hint for ranking, and since March 1, 2020 a hint for crawling and indexing — no longer a strict directive. It is notnoindexand does not reliably block crawling: a nofollowed page can still be crawled/indexed via sitemaps, other sites’ links, or your own follow links. Usesponsoredfor paid links,ugcfor user-generated, and you can combine values (rel="ugc sponsored").
What rel="nofollow" actually is
rel="nofollow" is one possible value of the HTML link rel attribute, set on
an individual <a> element:
<a rel="nofollow" href="https://example.com">Example</a>It tells search engines you don’t endorse the linked page and don’t want to pass ranking signals to it. It’s a per-link qualification — not a page-level setting, and not an index control. Google’s own framing puts it as the catch-all of the three link-qualification values: use it “when other values don’t apply, and you’d rather Google not associate your site with, or crawl the linked page from, your site.”
A short history of nofollow
2005 — the anti-spam origin. Google introduced rel="nofollow" in January
2005, jointly with other search engines, specifically to combat comment and
guestbook spam. Spammers were dropping links everywhere to manipulate rankings;
nofollow let publishers say “I’m not vouching for this link.”
2009 — PageRank sculpting dies. For a while, SEOs nofollowed internal links to try to “sculpt” PageRank — funneling link equity toward the pages they cared about. Matt Cutts, then head of Google’s webspam team, killed that in 2009: nofollowing an internal link no longer redistributes that link’s share to the page’s other links. The equity just evaporates. His blunt advice still holds — for internal links, “whenever you’re linking around within your site: don’t use nofollow. Just go ahead and link to whatever stuff.” If you’re still nofollowing internal links to “save” PageRank, stop; it hasn’t worked in over a decade.
2019–2020 — from directive to hint. This is the change that reshaped the whole topic. In a September 10, 2019 announcement, Danny Sullivan and Gary Illyes reclassified nofollow from a strict directive into a hint — something Google generally honors but may choose to override. Two dates matter:
- September 10, 2019 — nofollow (and the new
sponsored/ugcvalues) became hints for ranking purposes. - March 1, 2020 — nofollow also became a hint for crawling and indexing purposes.
Google’s reasoning was that widespread nofollow use was costing it useful link signals, so a hint model lets it consider those links when it has good reason to. For most sites the practical effect is small — Google said it would generally keep treating nofollowed links as it did before and not use them for ranking.
You don’t need to go back and change existing nofollow markup; it still works.
The new sponsored and ugc values are recommended for their specific cases, but
they’re optional, not mandatory.
nofollow, sponsored, and ugc — what’s the difference?
The 2019 change also introduced two more specific rel values. All three qualify
a link; they just describe why you’re not vouching for it:
rel="sponsored"— paid placements, ads, and affiliate links. Google: “Mark links that are advertisements or paid placements (commonly called paid links) with thesponsoredvalue.”rel="ugc"— user-generated content. Google recommends “marking user-generated content (UGC) links, such as comments and forum posts, with theugcvalue.”rel="nofollow"— the catch-all when neither of the above fits and you’d rather not vouch for or crawl-associate with the link.
A decision rule:
- Paid / affiliate →
sponsored - Comments / forum posts / other user-added links →
ugc - Don’t vouch / don’t want crawl-association, nothing else fits →
nofollow - More than one applies → combine them, space-separated:
rel="ugc sponsored"
That combining is legitimate and intended — a paid link inside user-generated
content can carry both values. For the full picture on choosing and combining
sponsored/ugc — including the disclosure obligations that go with paid links —
see rel=“sponsored” and rel=“ugc”.
Does nofollow block crawling or indexing? No.
This is the most important section, because it’s the most common myth — and you’ll still find it stated as fact in popular guides (the widely-cited Ahrefs nofollow guide, written by Joshua Hardwick, claims Google “doesn’t crawl nofollow links”; that’s the thing to correct, not Patrick’s view).
Here’s the reality, straight from Google’s docs: “Remember that the linked pages may be found through other means, such as sitemaps or links from other sites, and thus they may still be crawled.” Nofollow is a hint about which links to follow — not a wall around the destination.
So keep these three jobs separate:
rel="nofollow"(link level) = “I don’t vouch for this link.” Doesn’t keep the target out of Google.noindex(page level) = keeps a page out of the index. This is the tool for “I don’t want this page in search.”robots.txtdisallow (crawl level) = stops bots from fetching a URL. (And note: a robots-blocked page can still be indexed if other pages link to it — same crawling-vs-indexing distinction.)
If you nofollow every link to a page but it’s in your sitemap, or another site links to it, or you’ve got one follow link to it elsewhere, Google can still crawl and index it. nofollow is not noindex. This is exactly why nofollow sits on the boundary between the link world and the crawling and indexing world: it’s a hint into the crawl pipeline, not a control over it.
Link-level rel="nofollow" vs the robots meta tag nofollow
These get confused constantly because they share a word. They have completely different scope:
rel="nofollow"is on a single<a>element — it qualifies that one link.- The robots meta tag
nofollowvalue —<meta name="robots" content="nofollow">(or theX-Robots-Tag: nofollowHTTP header) — is a page-level instruction telling crawlers not to follow any of the links on that page.
One link versus every link on the page. If someone says “I added nofollow,” it’s
worth asking which one they mean — they behave very differently. (The robots meta
tag’s nofollow value lives alongside noindex and snippet controls; it’s part
of the broader robots meta tag story.)
Do nofollow links help SEO?
Don’t treat “nofollow” as “worthless.” A few things are true at once:
- They’re now hints, so Google may still consider them in some cases.
- They still drive referral traffic — real people clicking through.
- A natural backlink profile includes nofollow links; an all-follow profile looks unnatural.
So nofollow links aren’t dead weight. They just shouldn’t be your strategy for “passing link equity.”
When to use nofollow (and when not to)
Use it for:
- Ads / paid placements (prefer
sponsored). - Affiliate links (prefer
sponsored). - Untrusted user-generated links — comments, forums, profiles (prefer
ugc). - Outbound links you genuinely don’t want to vouch for.
Don’t bother:
- Internal links — don’t nofollow them to sculpt PageRank; it doesn’t work and it just leaks the equity. Link freely within your own site.
- Trusted editorial outbound links — normal references to good sources don’t need nofollow.
The state of nofollow today
When I ran the numbers for my study The State of Nofollow, UGC, & Sponsored Link
Attributes, the headline was how little the new attributes had been adopted.
Roughly 10.6% of all backlinks across the sites I looked at were nofollow, and
about 3.6% of internal links carried nofollow — higher than it needs to be,
given internal nofollow does nothing useful. The new values were barely used:
only around 0.44% of referring domains used rel="ugc" and about 0.01%
used rel="sponsored". Most of the ugc adoption came from WordPress, which added
it in version 5.3. The takeaway: without CMS platforms applying these
automatically, adoption of sponsored and ugc stays low — most of the web is
still on plain nofollow.
For the broader picture of how head and link-level signals fit together, see the meta tags hub; for how a hint flows into discovery, see crawling and indexing.
AI summary
A condensed take on the Advanced version:
rel="nofollow"is a per-linkrelvalue: “I don’t vouch for / don’t want to pass ranking signals to this link.” It’s set on individual<a>elements.- History: introduced January 2005 to fight comment/guestbook spam. PageRank sculpting with nofollow has been dead since 2009 (Matt Cutts) — the equity evaporates, it doesn’t reroute.
- Directive → hint: as of Sept 10, 2019 it’s a hint for ranking; as of March 1, 2020 a hint for crawling and indexing. No longer a strict directive. Existing nofollow markup still works — no need to change it.
- Three values:
sponsored(paid/ads/affiliate),ugc(user-generated),nofollow(catch-all). Combine them space-separated when more than one applies:rel="ugc sponsored". - The big myth: nofollow does not block crawling or indexing and is not
noindex. Google: linked pages “may still be crawled” via sitemaps, other sites’ links, etc. To remove a page usenoindex; to control crawling userobots.txt. - Link-level
rel="nofollow"≠ robots metanofollow: one link vs every link on a page. - nofollow links aren’t worthless: they’re hints, drive referral traffic, and keep a natural link profile. Don’t nofollow internal or trusted editorial links.
- Adoption: in my study of nofollow/ugc/sponsored usage, ~10.6% of backlinks were nofollow, but
ugc/sponsoredadoption was tiny — most of the web is still on plain nofollow.
Official documentation
Primary-source documentation from the search engines.
- Qualify your outbound links to Google — the reference doc:
nofollow,sponsored, andugc, when to use each, and the all-important “may still be crawled” note. Start here. - Evolving “nofollow” — new ways to identify the nature of links — the Sept 10, 2019 announcement (Danny Sullivan & Gary Illyes) that introduced
sponsored/ugcand the hint model, with the two go-live dates. - Block search indexing with noindex — the correct tool for keeping a page out of Google (what nofollow is not).
- Introduction to robots.txt — crawl control, the other thing nofollow is not.
Bing / Microsoft
- Bing Webmaster Guidelines — Bing supports all three values and also treats them as hints, leaning on
nofollowas the primary one.
Quotes from the source
On-the-record statements from Google. Each link is a deep link that jumps to the quoted passage on the source page.
Google — what each value is for (from “Qualify your outbound links to Google”)
- “Mark links that are advertisements or paid placements (commonly called paid links) with the
sponsoredvalue.” Jump to quote - “We recommend marking user-generated content (UGC) links, such as comments and forum posts, with the
ugcvalue.” Jump to quote - “Use the
nofollowvalue when other values don’t apply, and you’d rather Google not associate your site with, or crawl the linked page from, your site.” Jump to quote - “Links marked with these
relattributes will generally not be followed.” Jump to quote
Google — nofollow does NOT block crawling (the load-bearing one)
- “Remember that the linked pages may be found through other means, such as sitemaps or links from other sites, and thus they may still be crawled.” Jump to quote
Matt Cutts, Google (2009) — PageRank sculpting is dead
- “In general, whenever you’re linking around within your site: don’t use nofollow. Just go ahead and link to whatever stuff.” — Matt Cutts, then head of Google’s webspam team. Jump to quote
The mental models
1. nofollow is a hint, not a wall. Since 2019–2020 it’s a hint for ranking, crawling, and indexing — Google generally honors it but may override it, and it doesn’t seal off the destination. A nofollowed page is still discoverable through every other channel.
2. Three layers, three tools — keep them separate.
- Link signal →
rel="nofollow"/sponsored/ugc(don’t vouch for a link) - Index control →
noindex(keep a page out of search) - Crawl control →
robots.txt(stop bots fetching a URL)
Reach for the wrong layer and you’ll get the wrong result — most often, nofollowing a link expecting it to deindex a page (it won’t).
3. The “which value?” decision tree.
- Paid / ad / affiliate →
sponsored - User-generated (comment, forum, profile) →
ugc - Nothing else fits, don’t want to vouch →
nofollow - More than one true → combine:
rel="ugc sponsored"
4. Don’t sculpt. nofollowing internal links to funnel PageRank hasn’t worked since 2009 — the equity evaporates. Link freely inside your own site.
5. Link level vs page level.
rel="nofollow" is one link. The robots meta tag nofollow value is every link
on the page. Different scope; don’t conflate them.
nofollow vs sponsored vs ugc vs noindex vs disallow
What each control actually does
| Control | Scope | Stops crawling? | Stops indexing? | Use it for |
|---|---|---|---|---|
rel="nofollow" | One link | No (hint) | No | Not vouching for a link, catch-all |
rel="sponsored" | One link | No (hint) | No | Paid / ad / affiliate links |
rel="ugc" | One link | No (hint) | No | User-generated links (comments, forums) |
noindex (meta/header) | One page | No (must stay crawlable) | Yes | Removing a page from the index |
robots.txt disallow | URL/path | Yes | No (can still be indexed via links) | Keeping bots out of low-value URL spaces |
robots meta nofollow | Whole page’s links | No | No | Telling crawlers not to follow any link on the page |
Key reminders
- nofollow ≠ noindex. A nofollowed page can still be crawled and indexed via sitemaps, other sites’ links, or your own follow links.
- Values combine — space-separated:
rel="ugc sponsored",rel="ugc nofollow". - Existing nofollow still works — you don’t have to migrate old markup to
sponsored/ugc. - Don’t nofollow internal links to sculpt PageRank — dead since 2009; the equity evaporates.
- Link-level
rel="nofollow"(one link) is not the page-level robots metanofollow(every link on the page).
Quick HTML
<!-- catch-all -->
<a rel="nofollow" href="…">…</a>
<!-- paid / ad -->
<a rel="sponsored" href="…">…</a>
<!-- user comment / forum post -->
<a rel="ugc" href="…">…</a>
<!-- a paid link inside user content -->
<a rel="ugc sponsored" href="…">…</a> Resources worth your time
My related writing
- The State of Nofollow, UGC, & Sponsored Link Attributes — my original-research study on how much (or how little) the web actually adopted these attributes.
Official
- Google’s Qualify your outbound links to Google — the reference doc for
nofollow/sponsored/ugc. - Google’s Evolving “nofollow” — the 2019 announcement of the hint model and the new attributes.
- Matt Cutts on PageRank sculpting — the 2009 post that ended internal-nofollow sculpting.
From around the industry
- r/TechSEO — the community for “why is my nofollowed page still indexed” debugging.
- Google’s new treatment of nofollow links has arrived (Search Engine Land, Mar 1 2020) — confirms the March 1, 2020 crawling/indexing hint go-live date from Danny Sullivan and Gary Illyes.
- Google Crawl and Indexing Update: nofollow Becomes a Hint (Search Engine Journal) — detailed coverage of the March 2020 hint change with practical implications.
- Why Google Turned Nofollow Into a Hint (Search Engine Journal) — explains Google’s reasoning: widespread nofollow use was costing Google useful link signals.
- PageRank Sculpting Is Dead! Long Live PageRank Sculpting! (Search Engine Land) — the definitive 2009 article on Matt Cutts’s confirmation that internal nofollow sculpting no longer works.
- Bing supports rel=sponsored & rel=ugc (Search Engine Land) — Bing’s confirmation that it supports all three values as hints.
Stats worth citing
From my study The State of Nofollow, UGC, & Sponsored Link Attributes:
- ~10.6% of all backlinks were nofollow — nofollow is common across the web. Source
- ~3.6% of internal links carried nofollow — higher than it should be, since internal nofollow does nothing useful (no PageRank sculpting since 2009). Source
ugc/sponsoredadoption was tiny — only ~0.44% of referring domains usedrel="ugc"and ~0.01% usedrel="sponsored", with mostugccoming from WordPress (added in 5.3). Without CMS defaults, adoption stays low. Source
Nofollow
rel="nofollow" is a value of the HTML link rel attribute that tells search engines you don't vouch for a linked page and don't want to pass ranking signals to it. Since 2019–2020 Google treats it as a hint, not a directive — and it does not reliably block crawling or indexing.
Related: rel=sponsored & rel=ugc, Robots Meta Tag, Noindex
Nofollow
rel="nofollow" is a value of the HTML link rel attribute — <a rel="nofollow" href="…"> — that tells search engines you don’t vouch for the linked page and don’t want to pass ranking signals to it. Google introduced it in January 2005, jointly with other search engines, to fight blog-comment and guestbook spam.
Two changes reshaped what it means. In 2009 Matt Cutts confirmed nofollow can no longer be used to “sculpt” internal PageRank — the equity simply evaporates rather than rerouting to a page’s other links. Then in 2019–2020 Google reclassified nofollow (and the new sponsored and ugc values introduced alongside it) from a strict directive to a hint: a hint for ranking as of September 10, 2019, and a hint for crawling and indexing as of March 1, 2020.
The single most important thing to understand: rel="nofollow" is not noindex, and it does not reliably block crawling or indexing. A nofollowed link’s target can still be crawled and indexed via other paths — your sitemaps, other sites’ links, or your own follow links elsewhere. To keep a page out of the index you need noindex; to control crawling you need robots.txt — not a link-level nofollow.
Don’t confuse the link-level rel="nofollow" (one link) with the page-level robots meta tag nofollow value (<meta name="robots" content="nofollow">), which tells crawlers not to follow any links on that page. Same word, different scope.
Related: rel=sponsored & rel=ugc, Robots Meta Tag, Noindex
Build-time retrieval analysis plus live signals for this exact article. The automatic chunk report includes a deterministic readiness score and is ready without a model download.
Search Console
sampleGA4 traffic (28d)
sampleCloudflare traffic (7d)
sampledCrUX field data (28d, phone)
sampleGoogle NLP entities
localChangelog
Updated Jul 18, 2026.
Editorial summary and recorded change details.Summary
Corrected an absolute 'never blocked crawling' claim to match Google's own pre-2020 policy, and linked to the sponsored/ugc sibling article for paid-link depth.
Change details
-
Replaced the frontmatter description, tldr, and beginner TL;DR's absolute 'nofollow never/doesn't block crawling or indexing' wording with 'doesn't reliably block' — Google itself says it previously treated nofollow as a crawling/indexing directive before March 1, 2020, so a blanket 'never' overstates the historical record.
-
Added an internal link from the sponsored/ugc combining section to the sibling article rel="sponsored" and rel="ugc" for paid-link disclosure depth.
Full comparison unavailable — no prior snapshot was archived for this revision.