Internal Linking for SEO: The Strategy Nobody Gets Right
I audited a client's site last month and found 200 orphan pages nobody knew existed. Internal linking is the most underrated SEO lever and almost everyone botches it.

February. New client comes in. SaaS company, few years old. They've got a blog with 400 posts on it. And these aren't throwaway posts either. Real keyword research behind each one. Subject matter experts writing them. 1,500+ words average. Somebody invested real budget here.
I plug the domain into Screaming Frog and go make coffee. Come back, crawl's done, and I'm staring at the report wondering if I misconfigured something.
Nope. The data was right.
About 60% of those blog posts? No internal links pointing to them. Not two. Not one. Zero. Complete isolation. Just... 240-ish pages floating in a void. Google had indexed roughly half of those orphaned pages (the ones it found through the sitemap, probably) and the other half were collecting dust. You'd get the same SEO value from writing them on a napkin and throwing the napkin away.
Wild part: this wasn't even a bad site. DA 45. Decent referring domains from legit sources. Good content! But all of that was being undermined because nobody on the team cared about linking. The writers published and moved on. The developers had other priorities. The SEO agency they'd been paying since 2024 was focused on keyword reports and monthly traffic summaries, not crawl structure. Everyone was making content and nobody was connecting it.
(I scoped the audit at 3 hours and spent closer to 8. Won't make that mistake again.)
Point is: internal linking might be the single most slept-on thing in SEO and I am not being hyperbolic. Free. Totally in your control. Compounds over time. The reason nobody does it? It's boring. There's always something shinier to work on. A new post to write, a keyword to chase, an AI tool to experiment with. Links between existing pages? Yawn. I get it. But man, the opportunity cost of ignoring this.
Three things an internal link does (quick version)
I'll skip the "what is a link" explainer that every other post about this topic seems contractually obligated to include.
Three things happen simultaneously when you create an internal link.
Google discovers the page. This is the one that surprises people. Google finds new URLs primarily by following links on pages it already knows about. Not through your sitemap (though that helps). Not through some magic indexing fairy. It crawls Page A, finds a link to Page B, adds Page B to the queue. If you publish a blog post and literally nothing on your site links to it, Google's left to find it through your sitemap or maybe an external link. It'll probably get crawled eventually. Probably. But slowly and with low priority.
Authority flow. Old name: PageRank. Google pretends this isn't a thing anymore but come on. Your homepage has the most juice because everything points to it. Internal links move that juice deeper into your site. A blog post with five internal links from popular pages performs differently than one with zero. I've seen it too many times to doubt this.
Context. When you link "SEO audit tips" to "technical SEO checklist" with those words as the anchor, Google now knows these topics are related and which page covers what. Multiply that across your whole site and Google starts seeing topical clusters instead of a random collection of URLs.
My go-to analogy for clients (sorry if this is corny): plumbing. Authority is water pressure. Links are pipes. Broken links? Leaks. Orphan pages? Rooms that were never connected to the water main. And if all your pipes route straight back to the front of the house, nothing ever reaches the back bedrooms.
I've used this on calls and it genuinely seems to click for non-technical people in a way that "PageRank distribution" does not.
I was completely wrong about topic clusters
Full disclosure: for years I thought "hub-and-spoke" and "pillar content" were made-up frameworks. The kind of thing a content marketing agency puts in a deck to justify billing you $8k a month. When people brought up topic clusters in meetings I'd nod along and zone out.
Then I couldn't avoid it anymore.
Was working on a blog with maybe 30 SEO posts. All decent quality but just... published into the void with no structural logic. A post might link to one or two others, no particular reason why those ones. The writer would hit publish, move on, never look back. Organic traffic to the blog had flatlined. Not declining, but not growing either.
We reorganized. Four clusters. Created a pillar page for each. Went through every spoke post and added links back to the pillar plus cross-links to two or three sibling posts. Key detail: we changed nothing about the actual content. Not a word. Just the links.
Two months go by. Organic traffic to those posts: up 35%. The pillar pages are suddenly ranking for competitive head terms they'd never touched. What changed? Google had been seeing 30 unrelated articles and now it saw four interconnected topic areas with real depth.
I'm still a little annoyed at myself for dismissing this for so long. Wasted time.
Starting point if you want to try this: what are your five or six main topics? Each one gets a pillar page (a comprehensive overview, doesn't have to be insanely long). Supporting posts link back to it. Related posts link to each other. When you're doing your SEO audit, map these clusters on paper first. Literally draw circles and arrows. The afternoon of work nobody wants to do is usually the most impactful afternoon you'll spend all quarter.
Crawl depth matters and three clicks is real
Quick definition: crawl depth is how many clicks from your homepage it takes to reach a page.
One click out? Google's all over it. Two? Still great. Three? Fine. Four or five and Google starts to care less. Six, seven, eight clicks deep? You're basically begging Google to forget about those pages.
I'm not just parroting advice I read somewhere. I've personally watched this pattern on probably twenty-something sites over the past few years. You take a page buried six levels into some archive, add one link from a pillar page to drop it to three clicks, and within a few weeks the indexing improves. Rankings tend to follow. It doesn't work every time โ some pages just aren't gonna rank regardless โ but it works often enough that I never skip this step.
Fixing it is usually boring but simple. Run a crawl. Filter for anything deeper than three clicks. Then decide how to bring those pages closer to the surface. Maybe they go in the nav. Maybe you link from a pillar page. Maybe you add a "related posts" section to your blog post template. My favorite trick is "best of" roundup pages. You create one page that links to your 10 best posts about a topic, and suddenly all of them are only two clicks from the homepage.
One specific thing that catches a lot of people: pagination. If you've got a blog and post #47 is sitting on page 5 of your blog index, that post is really far from the homepage. Category pages, tag pages, and manually curated collections all help flatten the structure. This gets exponentially worse when you're doing programmatic SEO at scale, because you're creating pages way faster than your existing linking structure can absorb.
The anchor text section (shorter than you'd expect)
I expected to write a lot about anchor text here but honestly? The advice is simple and people make it way harder than it needs to be.
With backlinks from external sites, yeah, you gotta stress about anchor text ratios. Branded vs. keyword-rich vs. generic. Whole spreadsheets dedicated to anchor profiles. Internal links though? Google's own documentation basically says "just describe what you're linking to." That's it. Use words that tell both humans and crawlers what's on the other end of that link. Strategy complete.
There's exactly one nuance worth knowing. Zyppy crunched numbers on 23 million internal links in 2026 (across 1,800 sites) and found that sites using varied anchor text to link to the same page got noticeably more Google traffic. The correlation was so strong they triple-checked it.
So: don't use identical anchor text every time you link somewhere. Got a page about technical SEO? Link to it as "technical SEO" from one post, "running a technical site audit" from another, "the infrastructure stuff your dev team keeps punting on" from a third. Same URL, different descriptive text each time.
And please, for the love of everything, stop using "click here" as anchor text. Or "read more." Or "learn more." I know this sounds basic but I encounter it on like every other audit, including sites run by marketing teams that definitely know better. Screaming Frog flags these automatically with its non-descriptive anchor text filter. Run the filter. Fix what it finds. Put this on your technical SEO checklist if you haven't already.
Orphan pages โ yeah, this is bad
Zero incoming internal links. That's what makes a page orphaned. No other page on your site points to it. It's just... there. Existing. Alone.
Why do I keep ranting about this? Because every single time I run the numbers for a client, they're worse than anyone expected. Nobody budgets for "half our blog posts have no links" and yet here we are.
That February client had 200+ orphans. Not a typo. And they weren't running some massive enterprise operation โ just a startup that had been publishing regularly for three years without anyone owning the "go back and link stuff together" task. Most orphans were old posts. A bunch were leftover landing pages from dead campaigns. And maybe 15-20 were legitimately good articles that performed well when they were new, got shared on social, and then slowly faded because nobody ever wove them into the fabric of the site.
To find orphans you basically play detective. Cross-reference your crawl data (what Screaming Frog finds by actually following links from the homepage) against your sitemap, Search Console data, and analytics. Pages that show up in those external sources but NOT in the crawl? Orphans. Screaming Frog automates this if you hook up the GSC and GA APIs, which is worth the 10 minutes of setup time.
Fixing them is case-by-case. Good content that's still relevant gets 3-5 internal links added from topically related pages. Don't half-ass it with one link buried in a sidebar widget โ give it proper contextual links in body copy. Campaign page from 2024 that nobody will ever visit again? 301 it somewhere useful. Total garbage? Delete it. The one thing you don't do is leave them sitting there clogging up your crawl budget and contributing nothing.
Pro tip: go into GSC's Pages report and look for URLs marked "Discovered - currently not indexed" or "Crawled - currently not indexed." A huge chunk of those are orphans. Google found them via your sitemap but basically shrugged because no other page on the site linked to them.
The repeat offenders (a.k.a. what I fix on every single audit)
I've been at this long enough that the same problems show up on every site and it honestly gets a little monotonous.
Internal links pointing to redirects. You redesign, URLs change, old ones 301 to the new versions. Cool. But your internal links still point to the old URLs. Every internal click now hits a redirect before loading. That's wasted crawl budget and some leaked equity. Just update the links already. It's an hour of find-and-replace work. If you're doing a proper audit with tools, they'll flag every one of these โ no excuse not to fix them.
Nofollow on internal links. This one drives me nuts because people think they're being strategic. "Oh, I'll nofollow my login page and privacy policy so more PageRank flows to my blog!" Nope. Hasn't worked since 2009 when Google changed how this is calculated. Nofollow on an internal link doesn't redistribute the authority โ it just evaporates. Gone. You've thrown it into a hole. I genuinely don't know why this myth persists but I see it on maybe 1 in 5 sites I audit.
Over-linking. Here's a fun datapoint from that Zyppy study: internal links improve traffic up to roughly 45-50 links per page. Past that, traffic drops. Which makes sense. When every page links to every other page, each individual link carries almost no weight. A dozen well-placed contextual links in your body content will outperform a footer with 200 links in it. Every single time. You want your links to mean something. Spamming them devalues all of them.
JavaScript-rendered links. If your framework generates links client-side and Googlebot can't find a normal <a href> tag in the rendered DOM, those links simply do not exist to Google. The page might look fine in your browser and have working links and everything, but if Google can't see them in the HTML it processes, they're invisible. Verify this with URL Inspection in GSC. This is one of those common mistakes that kills rankings while you scratch your head wondering why traffic tanked.
Linking from weak pages only. Not all internal links carry equal weight. One link from your homepage sends way more authority than fifty links from a deep archive page getting 3 visits a month. When you need to boost a specific URL, don't just add links from wherever is convenient. Go to your analytics. Find your highest-traffic pages. Put your links there. Those are the ones with juice to share.
My actual workflow when I do this (not the theoretical version)
Enough with the theory. Here's what I actually do, week by week. I've run this process on maybe 15 sites over the last couple years and it pretty much always produces results.
Week one is just the audit. Full crawl with Screaming Frog. I export three things: crawl depth, inlinks, and anchor text. Then GSC โ go to Links, pull up top internally linked pages. Then Ahrefs Site Audit, specifically the "Internal Link Opportunities" report. (That tool scans for keyword mentions in your content that could become links. Pretty slick honestly.) Everything goes into one master spreadsheet. Columns for: underlinked pages, buried pages, broken links, redirect chains, orphans, and bad anchor text. It usually takes 2-3 hours for a site with a few hundred pages.
Week two, start fixing. I always hit broken links and redirect chains first. They're pure waste โ there's no strategic decision to make, just fix them. Then orphan pages. Then crawl depth problems. Then I start manually adding contextual links to the pages that need them most. For each target page I try to get 3-5 decent internal links from topically related pages. Different anchor text for each one. I put links where they belong contextually in a paragraph, not stuffed into some awkward callout box at the bottom.
Week three onward, measure. Watch GSC performance for the pages I targeted. Impressions first (that tells you Google is recrawling), then clicks and average position. Usually takes 2-4 weeks for the numbers to start moving. If things improve, I keep going with the next batch. If not, I go back and verify the links are actually rendering properly in the crawler.
Monthly, about ten minutes. I have a recurring calendar event for this on the first Monday of every month and I'm going to be real with you, I snooze it about half the time. But when I do it, it takes maybe ten minutes. Quick crawl, check for new orphans (every blog post you published this month is a potential orphan if nobody linked to it), scan for fresh broken links. The whole point is catching small problems before they become big problems. I learned this the hard way after ignoring a site for three months and coming back to find 40+ broken internal links from a URL restructure that nobody told me about.
This matters for AI search too, apparently
One more thing I want to mention because Google has been surprisingly direct about it. They've said that content "easily findable through internal links" is a factor for AI Overviews and other AI search features. Which... tracks? The AI is trying to build a map of your site's knowledge. Your internal links are that map. Orphan pages and "click here" anchors give it nothing to work with.
I wrote about the bigger picture of ranking in 2026 separately, but the short version is: your link structure and your content strategy are the same thing now. Not adjacent. Not "related." The same thing.
Okay. I'm done talking about links. Your turn.
That was a lot of words about links between pages. Extremely glamorous stuff. I'm sure you're thrilled.
But listen. I keep writing about this because the results are hard to argue with. On that February client? We did the full workflow, took about three weeks. Traffic went up 28%. No new content produced during that period. No link building campaigns. Just shuffling internal links around. Twenty-eight percent from housekeeping.
That won't happen on every site. Some sites have bigger fish to fry first. Some are already pretty well-linked and won't see dramatic gains. But I've seen enough 15-30% bumps from purely structural changes that I'll keep banging this drum until people listen.
So: do a crawl this week. Pull the orphan page report. Look at your crawl depth numbers. Start there. That first audit alone will probably surface enough work to keep you busy for a month.
And if your schema markup and core technical stuff is already in decent shape? Honestly, this might be the biggest remaining lever sitting right in front of you. Don't put it off until next quarter. You'll just find even more orphan pages by then.


