Skip to content
Surfilby Adam Hafez
Free tool

Nofollow link checker: rel sponsored and ugc audit

Nofollow link checker for pasted HTML: audits every link's rel against Google's sponsored, ugc and nofollow rules. Free, runs in your browser.

Runs entirely in your browser. Nothing you enter is uploaded, logged or stored.

Nothing you paste here is sent anywhere; it is read in your browser only.

    Key takeaways

    • Google documents three link qualifiers, sponsored, ugc and nofollow, and links carrying them will generally not be followed.
    • Google prefers rel="sponsored" on paid links, though nofollow is still an acceptable way to flag them.
    • Links in comments, forum posts and other user-generated content should carry rel="ugc" according to Google.
    • Several rel values can share one attribute, separated by spaces or commas, so ugc nofollow and ugc,nofollow are both accepted.
    • Values such as noopener and noreferrer are valid HTML but are not Google link qualifiers, so they do not mark a link as paid or user-generated.

    What it takes

    • The HTML containing the links to audit
    • Your own domain, so internal links can be told apart
    • The kind of content the links sit in

    More tools

    All of them free, all of them browser-only.

    Browse the tools

    How to use it

    1. 1Enter your domainLinks to this domain and its subdomains count as internal and need no qualifier. Anything else counts as external.
    2. 2Pick the content typeChoose editorial, user-generated, or advertising. HTML alone cannot show whether a link is paid or came from a commenter, so you supply that one fact.
    3. 3Paste the HTMLAny markup works. The tool reads every anchor tag that has an href, and skips fragment, mailto, tel and javascript links.
    4. 4Fix the warningsA warning means an external link is missing the qualifier Google asks for in that context, or carries a rel value Google does not document.
    5. 5Review the informational linesThose flag a qualifier that is accepted but not the most specific one, or one that fits only if the link really is paid or user-submitted.

    Paste a block of HTML, name your domain and say what kind of content the links sit in. The checker lists every link it found, marks each one as internal or external, and tells you whether its rel attribute matches what Google asks for in that context. It runs in your browser and sends nothing anywhere, so real page markup or a comment template never leaves your machine.

    What this nofollow checker tests

    Every rule here comes from Google’s page on qualifying outbound links.

    • Three qualifiers. Google documents sponsored for advertisements and paid placements, ugc for user-generated content such as comments and forum posts, and nofollow for when neither applies and you would rather Google not associate your site with the target. Google says links carrying these values will generally not be followed.
    • Combined values. Google accepts several values as a space- or comma-separated list. The checker splits on both, so ugc,nofollow and ugc nofollow read the same.
    • Unknown values. A rel value that is neither a Google qualifier nor a common HTML link type (noopener, noreferrer, external, me, author, help, license, next, prev, tag, bookmark, alternate, opener) raises a warning, since it is most often a typo such as nofolow.
    • Internal links. Links to your domain or any of its subdomains need no qualifier. Relative paths count as internal. Fragment, mailto, tel and javascript links are skipped.

    How to read the results

    The summary line counts the links read, how many are external and how many need attention. Each link then shows its original tag and one of three states.

    • Warning (amber): an external link in paid content with no sponsored or nofollow, an external link in user-generated content with no ugc or nofollow, or an unrecognized rel value. Fix these.
    • Information (grey): accepted, but worth a second look. A paid link marked only nofollow, or a user link marked only nofollow, where Google prefers the more specific value. A sponsored or ugc value inside editorial content, which is right only if the link really was paid or user-added. Or an internal link carrying a qualifier, which Google will generally not follow.
    • Pass (green): the link matches what Google asks for in the context you chose. An editorial external link with no qualifier passes, because followed is the default.

    Worked example

    The tool loads with this markup and the domain example.com:

    <p>Read the <a href="https://developers.google.com/search">Search docs</a>.</p>
    <p>Sponsored by <a href="https://brand.example/offer">Brand</a>.</p>
    <p>A commenter wrote: <a href="https://spam.example" rel="noopener">my site</a> and
    <a href="https://other.example" rel="ugc,nofollow">another</a>.</p>
    <a href="/pricing" rel="nofollow">Pricing</a>

    With the content type set to editorial, the summary reads “5 links read, 4 external. 0 need attention.” The three unqualified external links pass as followed editorial links, the ugc,nofollow link is flagged as information because ugc fits only if a user added it, and /pricing is flagged as an internal link carrying nofollow.

    Switch the content type to user-generated and the count becomes 3 need attention: the Search docs, Brand and noopener links each get “Link inside user-generated content with no qualifier”, while the ugc,nofollow link passes. Switch to advertising and those same three warn for missing sponsored, and the ugc,nofollow link drops to information because nofollow is accepted but sponsored is the more specific value.

    Common mistakes it catches

    • Relying on noopener. A comment system that adds rel="noopener" has not qualified the link for Google. The checker treats it as unqualified.
    • Paid links left followed. Any external link in content you mark as advertising, with no sponsored or nofollow, is a warning.
    • nofollow on your own pages. Google points to robots.txt disallow for links within your own site, so qualified internal links are surfaced.
    • Misspelled qualifiers. nofolow or sponsered is reported as an unrecognized value rather than silently ignored.

    The checker cannot know whether an editorial link is secretly paid, so it never accuses one. It flags a missing qualifier only in a context you have declared as paid or user-generated.

    Sources

    1. 1.Qualify your outbound links to Google - Google Search CentralPrimary
    2. 2.HTML Standard: link types - WHATWG

    Common questions

    What is the difference between nofollow, sponsored and ugc?

    Google asks for sponsored on advertisements and paid placements, ugc on links in user-generated content such as comments and forum posts, and nofollow when neither applies and you would rather Google not associate your site with, or crawl, the linked page.

    Is rel="nofollow" still acceptable for paid links?

    Yes. Google says nofollow was previously recommended for paid links and is still an acceptable way to flag them, though sponsored is preferred. This checker reports a paid link marked only nofollow as information, not a warning.

    Can a link carry more than one rel value?

    Yes. Google accepts several rel values as a space- or comma-separated list, so rel="ugc nofollow" and rel="ugc,nofollow" are both valid. The checker splits on either separator.

    Should I put nofollow on internal links?

    Google's guidance says to use the robots.txt disallow rule for links within your own site. The checker marks an internal link carrying a qualifier as information, because Google will generally not follow it and that is rarely intended.

    Does noopener or noreferrer count as nofollow?

    No. They are HTML link types for browser behavior, not Google link qualifiers. The checker recognizes them and does not warn, but a link carrying only noopener is still treated as an unqualified link.

    Does this tool fetch my page or the linked pages?

    No. It reads only the HTML you paste, in your browser, and sends nothing anywhere. It cannot judge the quality of a destination or confirm whether a link was actually paid for.