Ask an SEO team about their link building budget and you'll get a number. Ask about their internal linking system and you'll usually get silence, a plugin, maybe, or "we link when it feels natural." That's backwards. External links are expensive, slow, and out of your control. Internal links are free, instant, and entirely yours to engineer, and Google's own documentation is blunt that they're how it discovers and understands pages.
Your internal links form a graph: pages are nodes, links are edges. That graph decides where authority pools, which pages Google interprets as important, and what semantic relationships it can infer between your topics. A site with strong content and a random link graph is a library with the books shelved by color.
This guide covers the architecture (hub-and-spoke), the two variables that determine each link's value (anchor text and position), the structural metric to watch (crawl depth), and the failure patterns that undo all of it.
The three jobs of an internal link
Every internal link performs three functions simultaneously. Understanding them separately is what turns linking from decoration into engineering.
- Authority distribution. PageRank-style equity flows through links. Pages with many strong internal links inherit authority from the rest of the site; pages with one link from the footer inherit almost nothing. You choose where the equity pools.
- Semantic definition. A link with the anchor "topical map examples" pointing at a URL tells Google what that URL is about before it even crawls it, and tells it the two pages are related. Your link graph is a machine-readable map of how your topics connect, which matters enormously in a world where search parses entities and relationships, not strings.
- Crawl control. Googlebot discovers URLs primarily by following links. Link placement and depth determine which pages get crawled, how fast new content is found, and how often updates are re-fetched.
Because one link does all three jobs, one bad pattern damages all three. A thousand automated "related posts" links don't just waste equity, they blur your semantic map and send crawlers in circles.
Hub-and-spoke: the architecture that wins
The most reliable internal linking architecture mirrors how topics actually decompose: a hub page covering a topic broadly, surrounded by spoke pages that each cover one subtopic in depth. It's the structural expression of a topical map, the map defines the clusters, the links make them real.
The four linking rules of a cluster
- Every spoke links up to its hub with a descriptive anchor, early in the body. This is non-negotiable, it's how the cluster concentrates authority on the page targeting the hardest query.
- The hub links down to every spoke, ideally from the section of the hub that summarizes that subtopic. The hub becomes both a ranking page and a distribution point.
- Spokes link laterally only when the relationship is real. A page on anchor text should link to a page on crawl depth if the argument genuinely connects them, not because a plugin found a keyword match.
- Cross-cluster links go hub-to-hub. When two topics relate, connect their hubs rather than scattering links between random spokes. This keeps the graph legible, clusters stay dense internally and sparse between each other.
Done consistently, this produces exactly the pattern that builds topical authority: dense, semantically coherent neighborhoods that make it statistically obvious which site owns a topic.
Anchor text: writing the labels on your graph's edges
Anchor text is the single strongest hint a link carries about its target. Unlike external anchors, where over-optimization triggers spam systems, internal anchors are yours to write deliberately. The standard is simple: a reader (or crawler) should be able to predict the destination page from the anchor alone.
| Anchor pattern | Example | Verdict |
|---|---|---|
| Generic | click here, read more, this post | Wastes the signal entirely, the link passes equity but says nothing about the target |
| Naked URL | example.com/guide | Same problem with worse UX |
| Exact-match, every time | internal linking strategy × 40 pages | Safe-ish internally, but robotic and forfeits the chance to describe the target from multiple angles |
| Descriptive, varied | internal linking strategy / how to structure internal links / engineering your link graph | Correct, consistent meaning, natural variation, entity-rich |
Practical rules we apply on every engagement:
- Lead with the target page's core entity or topic in the anchor, front-loaded meaning survives truncation and scanning.
- Vary phrasing across the site, but never at the cost of clarity. Three or four natural variants per target page is plenty.
- Keep anchors under roughly eight words. Sentence-length anchors dilute the signal and look like formatting accidents.
- Never use the same anchor text for two different target pages, that's asking Google to guess which one the phrase belongs to.
Link position and crawl depth
Where the link lives changes what it's worth
Not all placements are equal. Google's reasonable-surfer patent described weighting links by their likelihood of being clicked, and everything observable since supports the hierarchy: editorial links inside main body content carry the most weight, links higher on the page beat links lower down, and boilerplate links, navigation, sidebars, footers, carry the least because they appear on every page and discriminate nothing.
The implication: don't count your footer's 40 links as an internal linking strategy. A single contextual link from a relevant paragraph is worth more than sitewide boilerplate, both for equity and for meaning.
Keep important pages within three clicks
Crawl depth, the minimum number of clicks from the home page to a URL, is the structural health metric of your graph. Pages at depth 1–3 get crawled frequently and inherit meaningful equity. Pages at depth 5+ get crawled rarely, indexed slowly, and ranked reluctantly. Run a crawl, sort by depth, and treat every important URL beyond depth 3 as a defect to fix, usually by adding hub links, category links, or contextual links from high-traffic pages.
“If a page matters, the link graph should make that obvious. Depth is how you find the pages your architecture is quietly telling Google to ignore.”
One caveat: links only count if crawlers can see them. Links rendered client-side or hidden behind interaction may never enter the graph at all, verify with the rendering checks in our technical SEO checklist.
Six internal linking mistakes that undo everything
- Orphaned new content. Publishing a post without linking to it from anywhere is the most common failure in SEO. The page sits in the sitemap, technically discoverable, structurally irrelevant.
- Automated related-posts widgets as the whole strategy. Recency- or tag-based widgets create noisy, ever-changing edges that carry little equity and zero semantic intent. Fine as a supplement; fatal as the system.
- Equity hoarding on the home page. If your strongest page links only to About and Contact, its authority dead-ends. The home page should link to your most important hubs.
- Linking through redirects or to dead URLs. Every internal link should point at a 200-status, canonical URL. Chains and 404s leak equity and waste crawl budget.
- Same anchor, different targets, or keyword-stuffed anchors on every link. Both patterns blur the semantic map you're trying to sharpen.
- Treating all pages as equal. A flat "every page links to every page" approach concentrates nothing. The whole point of engineering the graph is asymmetry: more links, better anchors, and shallower depth for the pages you most need to rank.
Making it operational: the linking workflow
Architecture decays without process. The sites that keep clean link graphs bake linking into two moments: publish time and review time.
- At publish: every new page ships with 3–6 outbound contextual links (including one to its hub) and 2–3 inbound links added to existing relevant pages the same day. Make both a required field in your content brief so writers execute it, not just strategists.
- Quarterly review: crawl the site and pull four reports, orphan pages, pages by depth, pages by inbound internal links, and broken/redirected links. Fix orphans first, then surface deep money pages, then prune dead edges.
- Before/after any migration: re-crawl and diff the graph. Migrations are where good architectures go to die.
That's the entire system: a topical map to define the clusters, hub-and-spoke rules to wire them, anchor and position discipline to maximize each edge, and a recurring audit to stop entropy. If you'd rather have it built for you, that's exactly what our internal linking service does.
Key takeaways
- Internal links do three jobs at once: they pass authority, they define semantic relationships between pages, and they control what gets crawled and how often.
- Hub-and-spoke is the default winning architecture: one hub page per topic, supporting spokes that all link up to it, and lateral links only where the relationship is real.
- Anchor text is a relevance statement. Descriptive, entity-rich anchors outperform 'click here' and exact-match-everywhere alike, vary phrasing, keep meaning constant.
- Links inside body content beat navigation and footer links; every important page should sit within three clicks of the home page.
- Most sites fail on process, not theory: no linking step at publish time means new content launches orphaned. Make internal links a required field in every content brief.
Frequently asked questions
How many internal links should a page have?
There's no magic number, Google can process hundreds, but purpose beats quantity. As a working rule, 3–6 contextual outbound links per 1,000 words keeps the graph dense without diluting each edge, and every page should have at least 2–3 inbound links from relevant pages so nothing is orphaned.
Do internal links really help rankings?
Yes, and they're among the best-documented levers in SEO. Internal links determine how authority from your strongest pages reaches the rest of the site, and their anchors help Google understand what target pages are about. Surfacing a buried page to depth 2 with descriptive anchors is one of the few changes that can move rankings within weeks.
Is exact-match anchor text safe for internal links?
Internally, yes, Google's over-optimization concerns apply mainly to manipulative external anchors. The better argument for variation is informational: three or four natural phrasings describe the target from more angles than one repeated string. Keep the meaning identical, vary the words, and never point the same anchor at two different pages.
What's the difference between navigation links and contextual links?
Navigation, sidebar, and footer links are boilerplate, they appear sitewide, so they discriminate nothing and carry reduced weight. Contextual links live inside body content, are unique to the page, and come wrapped in relevant surrounding text, which makes them stronger for both equity and semantic meaning. Build your strategy on contextual links and treat navigation as UX.
How do I find orphan pages on my site?
Crawl your site with a tool like Screaming Frog, then compare the crawled URL list against your XML sitemap and your analytics page list. URLs that appear in the sitemap or analytics but not in the link-following crawl have no internal links pointing at them, those are your orphans, and each one needs either links added or a deliberate decision to remove it.
Founder & Semantic SEO Lead · Permanent SEO
Writes about entity SEO, topical authority, and how modern and AI-powered search actually rank content.
View full profile