✦ A decade of Canvas craft, now driven by AI, describe it, watch it build live.Start building
Glossary

What Is Nofollow?

Nofollow is an HTML link attribute value (`rel='nofollow'`) that instructs search engine crawlers not to pass PageRank or link equity from the source page to the linked destination. Originally introduced by Google in 2005 to combat comment spam, it signals that the linking site does not endorse the target URL. As of September 2019, Google treats nofollow as a hint rather than a directive, meaning crawlers may still index the linked page but typically will not transfer ranking authority.

What Is Nofollow?

Nofollow is an HTML link attribute value (`rel='nofollow'`) that instructs search engine crawlers not to pass PageRank or link equity from the source page to the linked destination. Originally introduced by Google in 2005 to combat comment spam, it signals that the linking site does not endorse the target URL. As of September 2019, Google treats nofollow as a hint rather than a directive, meaning crawlers may still index the linked page but typically will not transfer ranking authority.

How Nofollow Works

The nofollow attribute is applied via the `rel` attribute on an anchor tag: `<a href='https://example.com' rel='nofollow'>Link Text</a>`. When Googlebot, Bingbot, or other compliant crawlers parse this markup, they read the relationship value and, per the guidance, decline to follow the link for PageRank calculation purposes. The HTML specification defines `rel` as a space-separated list of link types, so nofollow can be combined with other values such as `noreferrer` or `noopener` without conflict, for example `rel='nofollow noreferrer noopener'`. In 2019, Google introduced two additional link attribute values alongside nofollow: `rel='sponsored'` for paid or affiliate links, and `rel='ugc'` (user-generated content) for links appearing in comments, forum posts, or similar areas. These values give publishers more semantic precision. All three are treated as hints, not hard commands, giving Google algorithmic flexibility to use link signals when its systems determine the hint may be incorrect or manipulative. Nofollow can also be applied at the page level using an X-Robots-Tag HTTP header or a `<meta name='robots' content='nofollow'>` tag in the document `<head>`. The meta tag approach tells crawlers to treat every outbound link on the page as nofollow, which is useful for pages like login walls or legal disclaimers where blanket link-equity suppression is appropriate. The HTTP header method is particularly useful for non-HTML resources such as PDFs. From a technical crawl budget perspective, nofollow does influence behavior even under the hint model. Crawlers may still request the linked URL to discover new content, but the link will not be counted as a vote of confidence in ranking algorithms. Internal links should almost never carry nofollow, as doing so can create crawl isolation for important pages and fragment your own site's authority flow in ways that are difficult to diagnose.

Best Practices for Nofollow

Apply `rel='nofollow'` to all paid, affiliate, and sponsored links as a baseline compliance measure, and consider switching to `rel='sponsored'` for greater semantic accuracy since Google explicitly recommends it for compensated placements. Always combine nofollow with `rel='noopener noreferrer'` on third-party links that open in a new tab to prevent tabnapping security vulnerabilities and stop the `window.opener` reference from leaking referrer data. Avoid applying nofollow to internal links within your own domain because it restricts PageRank flow between your own pages and can cause crawlers to deprioritize linked sections of your site. Audit user-generated content fields such as comment forms, review sections, and forum posts to ensure any submitted URLs are automatically attributed with `rel='ugc nofollow'` at the output layer, ideally in server-side templating logic rather than relying on client-side scripts that may be bypassed.

Nofollow & Canvas Builder

Canvas Builder generates production-ready, semantic HTML using Bootstrap 5 scaffolding, which means all anchor elements are written as standard `<a>` tags with clean, editable `rel` attribute fields rather than JavaScript-rendered or obfuscated links that would complicate nofollow implementation. The semantic markup output ensures that search engine crawlers can parse link relationships accurately, making nofollow attributes placed in Canvas Builder's HTML immediately interpretable by Googlebot without additional processing layers. Developers building sites with Canvas Builder can confidently add `rel='nofollow sponsored ugc'` values to the generated code knowing the clean HTML structure will convey those signals correctly.

Try Canvas Builder →

Frequently Asked Questions

Does nofollow prevent Google from crawling the linked page entirely?
No, nofollow does not block crawling. Since Google updated its treatment in 2019, the attribute is a hint, meaning Googlebot may still crawl and index the destination URL if it discovers it through other means. To actually block crawling of a URL, you need a `robots.txt` disallow rule or a `noindex` directive on the destination page itself.
Should I use nofollow on all third-party links on my website?
No, applying nofollow to every third-party link is overly aggressive and unnecessary. Links to reputable, editorially chosen sources (citing a study, referencing documentation, or linking to a partner's homepage) are normal editorial behavior and do not require nofollow. Reserve it for compensated links, untrusted user-generated content, and links you cannot vet, as indiscriminate use adds markup noise without meaningful benefit.
How does Canvas Builder handle nofollow in its generated HTML output?
Canvas Builder outputs clean, standards-compliant HTML based on Bootstrap 5, which means anchor tags in generated pages follow correct `rel` attribute syntax without proprietary overrides or JavaScript-rendered link obfuscation. When you configure links in the Canvas Builder interface, the production-ready HTML output supports manual addition of `rel='nofollow noopener noreferrer'` values directly in the code, giving developers full control over link relationship attributes without needing to strip or rewrite framework-added attributes.