URL Receives Both Follow and Nofollow Internal Links: How to Fix It
- November 8, 2023
- Links, Link Attributes

This check fires when the same internal URL is linked from your own site with a mix of followed and nofollowed links. You're sending search engines contradictory instructions about one of your own pages: some links vouch for it, others explicitly withhold that vouch. The stake is muddied signaling, wasted internal equity, and a page whose importance you're quietly undercutting without meaning to.
Why mixed follow signals are a problem
The rel="nofollow" attribute tells search engines not to pass ranking signal through a link. It exists for links you can't fully endorse, user-generated content, paid placements, untrusted destinations. Using it on internal links to your own pages rarely makes sense: you control both ends, so why decline to vouch for your own content? When some internal links to a page are followed and others are nofollowed, the inconsistency is almost always an accident, a legacy template, a plugin default, a stray attribute copied across a section, rather than a deliberate strategy. Search engines have to reconcile the conflict, and you lose the clean, confident internal signal a page should get.
The old idea of "sculpting" PageRank by nofollowing internal links to hoard equity hasn't worked for well over a decade; nofollowed equity evaporates rather than redistributing. So a page getting both follow and nofollow internal links isn't being cleverly sculpted, it's being inconsistently linked.
A real failing example
Here's the same internal URL linked three ways across different templates. Two links vouch for it; one nofollows it for no good reason:
<!-- In-content link (followed, correct) -->
<a href="/services/technical-audit/">technical SEO audit</a>
<!-- Footer link (followed, correct) -->
<a href="/services/technical-audit/">Technical Audit</a>
<!-- Sidebar "related" module (nofollowed, leftover plugin default) -->
<a href="/services/technical-audit/" rel="nofollow">Audit service</a>That sidebar rel="nofollow" contradicts the other two. The fix is to make every internal link to the page consistent, which almost always means removing the nofollow:
<a href="/services/technical-audit/">technical SEO audit</a>
<a href="/services/technical-audit/">Technical Audit</a>
<a href="/services/technical-audit/">Audit service</a>
<!-- all followed: one clear signal -->Now the page receives a single, consistent internal endorsement from all three placements.
Follow/nofollow scenarios and what to do
| How the page is linked internally | Signal sent | Recommended fix |
|---|---|---|
| All followed | Clear endorsement | Nothing; this is correct |
| Mixed follow + nofollow | Contradictory; this check fires | Make all followed |
| All nofollowed | Equity withheld; page starved | Remove nofollow unless deliberate |
| Mixed, one link is UGC/comment | Partly legitimate | Keep UGC nofollow, follow the rest |
The one legitimate reason to keep some internal nofollows is genuinely untrusted user-generated content, like a page linked from a comment field. Even then, your editorial and template links to that page should be followed.
How to detect it
- Screaming Frog inlinks: crawl the site, select the target URL, and open the lower Inlinks tab. The Follow column shows True/False per inbound link. A mix of both on one destination is your flag.
- Bulk export and pivot: use Bulk Export > Links > All Inlinks, then pivot by Destination with a count of distinct Follow values. Any destination showing both True and False is affected.
- Isolate the source template: once you find a mixed URL, sort its inlinks by source path to see which template or module is emitting the nofollow. It's usually one repeatable place: a sidebar, a related-posts widget, an archive.
- Google Search Console: GSC won't split follow/nofollow directly, but the Internal links count combined with a crawl helps confirm which high-value pages are getting inconsistent treatment.
How to fix it
Find the template or module emitting the stray rel="nofollow" and remove the attribute so all internal links to the page are followed. Because the cause is nearly always systematic, a plugin setting, a theme partial, a legacy content block, fixing the source resolves it across every affected URL at once rather than one link at a time. If you have a deliberate reason to nofollow one class of internal link, such as untrusted UGC, keep that narrow and make sure your editorial and navigational links stay followed. Re-crawl and confirm each destination now shows a single consistent Follow value.
For the theory, our take on internal link sculpting explains why nofollowing your own links backfires, the nofollow reference covers correct use, and the related check on only-nofollow internal links catches the worse case where a page gets no followed internal links at all.
FAQ
Is it bad to nofollow internal links?
For your own pages, usually yes. You control both ends, so declining to pass signal just starves the destination. The narrow exception is untrusted user-generated content. Outside that, followed internal links are the default you want.
Can I use nofollow to keep low-value pages out of the index?
No. Nofollow controls signal passing, not indexing. To keep a page out of the index use a noindex directive, and to manage crawling use robots rules. Mixing nofollow into the job it wasn't built for creates exactly the inconsistent signals this check flags.
Does mixed follow/nofollow cause a penalty?
No penalty, but it's a self-inflicted efficiency loss. Some of your internal endorsements for the page are being thrown away, so the page ranks on a weaker internal signal than it should. It's a cleanup task, not a crisis.
Which link wins when a page is linked both ways?
There's no simple "strongest link wins" rule. Search engines evaluate the links they can follow; the nofollowed ones simply don't contribute. The practical result is that you've reduced the page's effective internal link equity for no benefit.
How did this happen if I never added nofollow myself?
Plugins, themes, and page builders frequently add rel="nofollow" to certain modules by default, related-post widgets and archive links are common offenders. That's why the fix is at the template level: find the default and turn it off.
Claude Vincent is a technical SEO consultant focused on crawlability, rendering, and AI-search visibility. He writes the field guides and case studies at SEO ProCheck, with a bias toward the durable, unglamorous work that decides whether search engines and AI answer engines can actually read and cite a site.
About SEO ProCheck
Technical SEO consulting and GEO strategy with 20 years of enterprise experience. Case studies, resources, and tools for search and AI visibility.
Work With Me
Technical SEO audits, GEO strategy, site migrations, and international SEO. Hourly consulting for teams who need hands-on support, not just reports.







