Link attributes

Dofollow vs Nofollow, Sponsored, and UGC: What Link Attributes Actually Do

Start with the thing that trips up almost everyone: there is no rel=dofollow. It has never existed in the HTML spec and no search engine looks for it. Dofollow is trade shorthand for an ordinary link that carries none of the three real qualifiers, which are nofollow, sponsored and ugc.

Those three describe a relationship between the linking page and the destination. They do not describe quality, they are not a ranking lever, and since 2020 Google treats them as hints rather than commands, which licenses a good deal less than people assume. There is also a fourth thing nobody mentions: the attribute on a link you earned last year can change without anyone telling you, which is why rechecking placements on a schedule belongs in this conversation at all.

  • 12 min read
  • Published August 18, 2026
  • Updated August 18, 2026
  • The LinkSwapy team
  • Sourced from Google Search Central

The short answer

  • There is no rel=dofollow. Only nofollow, sponsored and ugc are real.
  • They describe a relationship, not a quality, and not a ranking value.
  • Hints, not directives, since March 2020. That cuts both ways.
  • Attributes change after acquisition, silently, and usually for structural reasons.
  • View-source, an extension and a backlink tool will disagree. All three can be right.
Google on qualifying outbound links
Standard, nofollow, sponsored, and UGC link states branching from an HTML anchor element
Link attributes describe the relationship behind a link. They do not grade the quality of the page or placement.

First things first

Dofollow is not a real attribute

You will see rel=dofollow written into markup, listed in tool documentation, and specified in outreach emails by people who charge for links. It does nothing. There is no dofollow value, there never has been, and adding one to an anchor tag has exactly the same effect as adding rel=banana.

Adding rel=dofollow to a link has the same effect as adding rel=banana.

What people mean by a dofollow link is a link in its default state: an ordinary anchor tag with no qualifying rel value on it. That is the baseline, and every other state on this page is that baseline with something added.

This matters beyond pedantry for one practical reason. If a publisher offers you a dofollow link and writes rel=dofollow into the markup to prove it, they have told you they do not know how this works, and that is worth knowing before you evaluate anything else about the placement.

Valid standard HTML link with no rel value compared with an invalid rel dofollow attribute
A standard link has no rel qualifier. The term dofollow describes that default state, not an attribute you add.

The mechanism

What the rel attribute actually does

The rel attribute on an anchor tag describes the relationship between the page the link is on and the page it points at. It is a general HTML feature with plenty of values that have nothing to do with search, and three that do.

Nofollow, added in 2005, originally told search engines not to treat the link as an endorsement. Sponsored and ugc arrived in September 2019 as more specific alternatives, so a publisher could say which kind of non-endorsement they meant: a commercial arrangement, or something a user posted.

The default state, no rel value at all, is not something you add. It is what an anchor tag is when nobody qualifies it, which is why the industry needed to invent a word for it and landed on the wrong one.

Definitions

The four states, defined

A link attribute is a rel value that qualifies what a link means. There are three real ones plus the unqualified default, and together they cover every state a link can be in. None of them says anything about whether the link is any good.

01

Standard, or dofollow

No rel value. The default, and the state an editorial citation is normally in. This is the one that carries a full endorsement, and it is the one that has no attribute to write.

02

Nofollow

The general qualifier. Says the linking page does not want to endorse the destination, without saying why. Still the right choice when neither of the specific values fits.

03

Sponsored

For links created as part of advertising, sponsorship, or any other compensated arrangement. The specific value for commercial relationships, and the one Google names for paid placements.

04

UGC

For links inside user generated content: comments, forum posts, community submissions, reviews. Says a visitor put this here, not the publisher.

Side by side

Standard, nofollow, sponsored, and ugc

One table replacing the three separate comparisons people usually write. The last column is the one worth reading twice, because it is where most of the misunderstanding lives.

StateMarkupWhat it signalsWhat it does not do
StandardNo rel valueA normal editorial referenceGuarantee the link counts, or that the page has any authority to pass
Nofollowrel=nofollowWe are not endorsing this destinationMake a link worthless, or absolve a manipulative arrangement
Sponsoredrel=sponsoredMoney, product or other compensation was involvedMake a bad placement good, or reduce the value of the traffic
UGCrel=ugcA visitor put this here, not the publisherStop the link sending referral traffic, which it still can

Nothing in this table is a quality judgment, and that is the point. All four states can hold an excellent link or a worthless one, and the attribute will not tell you which you are looking at.

Four link states: standard editorial reference, nofollow without endorsement, sponsored compensation, and user generated content
The four states describe who placed the link and what relationship sits behind it, not whether the opportunity is valuable.

Reference

The markup, in full

Every state as it actually appears in an anchor tag. Worth keeping open the first few times you check a placement by hand.

  • Standard link

    <a href="https://example.com">Example</a>

    No rel value. Nothing to add, nothing to remove. This is what people mean when they say dofollow.

  • Nofollow

    <a href="https://example.com" rel="nofollow">Example</a>

    The general qualifier, and the correct fallback when neither sponsored nor ugc describes the situation.

  • Sponsored

    <a href="https://example.com" rel="sponsored">Example</a>

    Advertising, sponsorship, affiliate arrangements, paid placements. Anything where something of value changed hands.

  • User generated content

    <a href="https://example.com" rel="ugc">Example</a>

    Comments, forum posts, reviews, community submissions. Applied by the platform rather than by the person posting.

  • Multiple values

    <a href="https://example.com" rel="sponsored nofollow">Example</a>

    Space separated. Valid, common, and belt and braces rather than necessary, since sponsored already qualifies the link.

Stacking values

Combining values

You can put more than one value in a single rel attribute, space separated, and a paid placement is the case that usually needs two, and you will see it constantly in the wild. The two common pairings are sponsored with nofollow on advertising, and ugc with nofollow on comment systems.

Neither combination is required. Sponsored and ugc both qualify a link on their own, so adding nofollow alongside is redundant rather than wrong. Most of the time it is there because the platform's template predates the 2019 values and somebody added the newer one without removing the old.

If you are implementing this on your own site, pick the most specific value that describes the situation and stop. If you are auditing somebody else's, do not read a stacked attribute as a signal about anything. It usually means the site has been through more than one CMS.

The most misread word here

Do nofollow links pass PageRank?

In March 2020, Google changed how it treats all three qualifying values: from directives it obeyed to hints it may take into account, for both ranking and crawling. That is the fact. What people do with the fact is where it goes wrong.

Assume nofollow passes nothing, and justify the link on everything else. If ranking value shows up as well, good.

The optimistic reading is that nofollow links now pass equity, so it no longer matters. That is not what a hint means. The pessimistic reading is that nothing changed and nofollow links are still worthless. That is not what it means either. What Google actually said is that its systems may choose to use these links, which is deliberately unspecified, and no amount of testing published by anyone has resolved it into a number.

So here is the planning position we would take, stated as judgment rather than fact. Assume a nofollow link passes nothing, and build the case for pursuing it on referral traffic, brand exposure and the coverage it tends to lead to. If some ranking benefit arrives too, good. What you should not do is pay a premium for a follow attribute on a placement you would otherwise have declined, because you are buying a hint.

The same reasoning applies to sponsored and ugc. They are hints as well, which is why the attribute is a disclosure of the relationship rather than a dial that controls how much value moves.

The part nobody covers

An attribute is not a permanent property

Every article on this subject, including the ones that get the definitions right, treats the attribute as something decided once, when you acquire the link. It is not. It is a value in somebody else's HTML, on a page you do not control, and it changes.

Your link is still there, still in the same paragraph, still with the same anchor. Four words changed in the source.

The causes are mostly structural rather than personal. A publisher switches theme and the new one qualifies external links by default. A plugin update flips the setting. A site adopts a blanket policy on outbound links after somebody spammed them. A migration lands on a platform with different defaults. Occasionally a new editor goes through and does it deliberately, but that is the minority case.

What makes this expensive is that nothing tells you. The page renders identically. Your link is still there, still in the same paragraph, still with the same anchor text. Open it in a browser and everything looks correct. The only difference is four words in the source, and if you found out at all it was because somebody happened to look.

That is the argument for tracking the share of your placements carrying a follow attribute over time rather than checking individual links when you happen to think of it. The single link is not the interesting unit. The direction of travel across a profile is, and it is the sort of thing a scheduled recheck surfaces and a manual audit never does.

A backlink keeping the same page and anchor while its markup changes from standard to nofollow
A link can look identical in the browser while a quiet markup change alters its attribute state.
Where the tool fits

A nofollow flip is the quietest way a placement loses value: nothing is removed, nothing 404s, and no report flags it unless something is comparing today's markup against last month's. That comparison is the job, and it is dull enough that it only happens if it is automatic. See how return link tracking works.

Decisions

Which attribute to use, by situation

For the outbound links on your own site, which is the half you are actually responsible for, and the half an exchange agreement commits you to. One table replacing the four separate sections this usually gets written as.

The situationUseWhy
You cited a source because it was usefulNo attributeAn ordinary editorial reference, which is what the default state is for
Somebody paid for the placementrel=sponsoredNames the commercial relationship, which is what Google asks for
An affiliate link earning commissionrel=sponsoredCompensation is involved, even though no cash changed hands up front
A guest post you paid to placerel=sponsoredThe payment is the point. Covered properly in the link scheme article
A gifted product or free subscriptionrel=sponsoredConsideration does not have to be money to count as compensation
A link in a blog commentrel=ugcA visitor put it there. Most comment systems apply this automatically
A forum post or user reviewrel=ugcSame reasoning, and worth checking your platform actually does it
A source you cite but do not vouch forrel=nofollowThe general qualifier, for the cases the specific values do not describe

If you are unsure between sponsored and nofollow on a commercial link, use sponsored. It is more descriptive, it is what the policy names, and there is no downside to being specific.

Attribute decision guide mapping editorial citations to standard, paid links to sponsored, community links to UGC, and non-endorsement to nofollow
Choose the attribute that accurately describes the relationship behind the outbound link.

Verification

How to check a link's attribute

Three methods, and the useful thing to understand is why they disagree, because they will.

View source shows the HTML the server sent. A browser extension reads the rendered DOM after JavaScript has run, which can differ if the site modifies links on load. A backlink tool reports the state at its last crawl of that page, which might be six weeks ago. All three can be simultaneously correct and give you three different answers about one link.

For a decision you are making right now, the raw HTML on the live page wins, and the free backlink status checker reads it for you. For understanding whether something changed, the tool's historical view is the only one that has a yesterday to compare against.

The check, in order

The first two take about fifteen seconds each. The last two are the ones that actually catch problems.

  1. 1

    Read the raw HTML first

    View source on the live page and find the anchor tag. This is what the server actually sent, it is what a crawler receives before rendering, and it is the answer to trust for a decision you are making today.

  2. 2

    Then check the rendered DOM

    Right click the link, inspect, and look at the same tag in the elements panel. If it differs from view source, JavaScript is modifying the link after load. Worth knowing about, because the two versions can genuinely disagree.

  3. 3

    Treat your backlink tool as a historical record

    Ahrefs, Semrush and the rest report the attribute as it stood at their last crawl of that page, which might be weeks old. Useful for spotting a change across a whole profile, not authoritative about any single link right now.

  4. 4

    Check the whole profile, not one link

    One link is a spot check. What you actually want is the share of your placements carrying a follow attribute, tracked over time, because the interesting event is the direction of travel rather than any single value.

  5. 5

    Recheck on a schedule, not on suspicion

    The failure mode here is that nothing prompts you to look. A flip produces no notification, no ranking cliff on the day, and no visible change to the page, so the only thing that catches it is something running whether or not you remembered.

Common errors

Mistakes worth not making

Most of these come from treating the attribute as a quality score rather than as a description of a relationship.

  • Writing rel=dofollow into markup, which does nothing
  • Nofollowing every external link on your site by default
  • Leaving old sponsored posts unqualified because they predate the attribute
  • Using sponsored on user comments, which are ugc
  • Using ugc on your own editorial links
  • Reading nofollow as no value, then declining good placements
  • Reading hint as it passes equity now, then paying for nofollow links
  • Sorting a prospect list by follow status before checking relevance
  • Trusting a backlink tool's attribute over the live page's HTML
  • Assuming an affiliate plugin still qualifies links after an update
  • Checking attributes once at acquisition and never again
  • Adding nofollow to a manipulative arrangement and calling it fixed

Three separate axes

Attribute is not type, and not placement

Three different things get flattened into one conversation constantly, and separating them makes every judgment easier.

The type is how the link came to exist: an editorial citation, a guest post, a partner arrangement, something you paid for. That is a fact about the acquisition, and we sorted all 25 of them by value and risk separately.

The attribute is how the markup qualifies it, which is this page. And the placement is where on the page it sits: inside a paragraph, in an author bio, in a sidebar, in a footer rendered across every page of the site. That third axis quietly does more work than either of the others, and it is the one nobody asks about.

The three are independent. A guest post link can be standard or sponsored, in the body or in a bio. Knowing one tells you nothing about the other two, so check each separately rather than inferring.

Strategy

Should you chase only follow links?

No, and filtering a prospect list by attribute before you have looked at relevance is one of the faster ways to spend a quarter badly. The attribute matters for one thing only, and that is whether a paid link is declared.

A profile made entirely of follow links is not a strong profile. It is an unusual one.

Work through what a nofollow link from a publication your buyers actually read gives you. Referral traffic from people already in the right frame of mind. Recognition with an audience you want. A clip you can point at, which makes the next pitch easier. Frequently, other coverage, because journalists read each other. None of that requires a follow attribute and all of it compounds.

Now the opposite case: a follow link on a page with no readers, no rankings and forty other outbound links. It ticks the box on your report and does close to nothing. If you have ever seen a profile full of technically follow links that moved no rankings, this is usually why.

A natural profile contains all four states anyway, because real publications qualify links according to their own policies and you do not get a vote. A profile made entirely of follow links is itself an unusual shape.

The verdict

So what do link attributes actually do?

They describe a relationship. That is the whole job. Nofollow says we are not endorsing this, sponsored says money was involved, ugc says a visitor put it here, and the absence of all three says this is an ordinary editorial reference. None of them is a quality signal, none is a lever you can pull, and since 2020 all three are hints rather than commands. Use them to describe what is true, and judge links on everything else.

  • Qualifying your own commercial links correctlyLow
  • Accepting good nofollow placements on meritLow
  • Filtering prospects by follow status firstMedium
  • Paying a premium for a follow attributeHigh
  • Leaving paid placements unqualifiedVery high

Use attributes to describe the relationship honestly. They were never a way to move value around.

Questions

Questions people actually ask about this

Is rel=dofollow a real thing?

No. There is no dofollow value in the HTML spec and search engines do not look for one. A standard link is simply an anchor tag with no qualifying rel value on it, and dofollow is the shorthand the industry invented to talk about that state. Writing rel="dofollow" into your markup does nothing at all, which is harmless but tells anyone reading your source where you learned SEO.

Do nofollow links pass PageRank?

Google changed nofollow from a directive to a hint for ranking and crawling purposes in March 2020, which means the systems may choose to use these links rather than ignoring them outright. What that does not mean is that nofollow links now pass equity, and anyone telling you either way with confidence is filling in a blank Google left deliberately. Plan as though they do not count and be pleased if they do.

Can one link carry more than one rel value?

Yes, space separated, and it is common. You will see rel="sponsored nofollow" on advertising and rel="ugc nofollow" on comment systems. Combining is belt and braces rather than necessary, since sponsored and ugc already qualify the link on their own, and plenty of platforms do it because their template predates the newer values.

Should affiliate links use sponsored or nofollow?

Sponsored, because it describes the actual relationship, and Google names it as the value for links created as part of advertising or other compensation. Nofollow is not wrong on an affiliate link, it is just less specific. Most affiliate plugins apply one or both automatically, which is worth verifying rather than assuming, because a plugin update can change the default.

My dofollow link turned into a nofollow. What happened?

Almost always something structural rather than something about you. A theme or template change, a plugin update that started qualifying all external links, a new editorial policy applied sitewide, or a migration to a platform with different defaults. Occasionally an editor did it deliberately. The page looks completely normal either way, which is why this goes unnoticed for months.

Why does my backlink tool disagree with view-source about an attribute?

Because they are describing different things. View-source shows the HTML the server sent. A browser extension reads the rendered DOM after JavaScript has run, which can differ. A backlink tool reports what it saw at its last crawl, which might be weeks or months ago. All three can be correct simultaneously, and the raw HTML on the live page is the one to trust for a decision you are making today.

Are dofollow links always better than nofollow ones?

No, and sorting your prospect list by follow status is one of the faster ways to waste a quarter. A nofollow link from a publication your buyers actually read sends traffic, builds recognition and often leads to further coverage. A follow link from a page nobody visits does none of that. The attribute is one property of a link, and it is not the one that decides whether the link was worth having.

A nofollow flip looks exactly like a healthy link

Nothing is removed and nothing 404s, so the only thing that catches it is a recheck running whether or not anyone remembered. Track the attribute on every placement, not just whether it is still there.