# Internal Linking for SEO: A Practical Guide to Fix It

> Internal linking for SEO explained: crawlable links, anchor text, orphan pages, click depth and broken links, plus a priority order for what to fix first.

URL: https://seorecheck.com/blog/internal-linking-seo-guide · Published: 2026-10-05 · [Українська](https://seorecheck.com/ua/blog/internal-linking-seo-guide.md), [Español](https://seorecheck.com/es/blog/internal-linking-seo-guide.md)

**Internal linking for SEO** means linking your own pages to each other with crawlable, descriptive links. Those links help search engines find pages, understand what each one covers, and judge which pages matter most. Get it right and important pages get crawled, indexed and ranked more reliably. Get it wrong and good content goes unseen.

Of all the technical SEO levers you have, internal links may be the one you control most completely. Backlinks need someone else to act. Core Web Vitals work often needs a developer sprint. Internal links can be fixed in your CMS this afternoon, which is why they show up near the top of most audit action plans.

## What are internal links and why do they matter for SEO?

An internal link is any hyperlink from one page on your domain to another page on the same domain. Navigation menus, footer links, breadcrumbs, "related posts" blocks and links inside body text all count. Each one does three jobs at the same time.

1. **Discovery.** Googlebot finds new URLs mostly by following links. Your XML sitemap helps, but a page with no internal links pointing to it is a weak signal that you don't care about it.
2. **Context.** The anchor text and the text around a link tell Google what the target page is about before it even crawls it.
3. **Importance.** Pages that get many links from strong pages, and sit close to the homepage, tend to be treated as more important than pages buried six clicks deep.

Google's own documentation on link best practices states it directly: "Every page you care about should have a link from at least one other page on your site." That one sentence is the minimum standard, and many sites fail it without noticing.

## How does Google crawl internal links?

Google can only reliably follow links written as a standard HTML `<a>` element with an `href` attribute. That rule comes from Google Search Central's link best practices page. It catches out many sites built with JavaScript frameworks, where navigation sometimes runs on click handlers instead of real links.

```html
<!-- Crawlable -->
<a href="/services/seo-audit">SEO audit service</a>
<a href="https://example.com/pricing">pricing</a>

<!-- Not reliably crawlable -->
<a onclick="goTo('/services/seo-audit')">SEO audit service</a>
<span href="/pricing">pricing</span>
<a routerLink="/pricing">pricing</a>
```

If your menu, category filters or "load more" pagination only work through JavaScript events, Google may never discover the pages behind them. A quick check: open the page with JavaScript turned off, or look at the rendered HTML in Search Console's URL Inspection tool, and confirm the links show up as `<a href="...">`.

## Internal linking for SEO: the issues audits find most often

When we look at internal linking in an audit, the same problems come up again and again. Here they are with a rough sense of impact and effort.

| Issue | Why it hurts | Typical fix | Priority |
|---|---|---|---|
| Orphan pages (no internal links in) | Hard to discover; seen as unimportant | Link from relevant hub, category or article pages | High |
| Broken internal links (4xx) | Wasted crawl, dead ends for users | Update the link to the live URL or remove it | High |
| Links to redirected URLs (3xx) | Extra hops, slower crawling, diluted signals | Point links straight at the final URL | Medium |
| Key pages 4+ clicks from homepage | Crawled less often, weaker signals | Add links from nav, hubs or high-traffic pages | High |
| Non-crawlable JS links | Pages behind them may never be found | Use `<a href>` elements | High |
| Generic anchors ("click here", "read more") | No context about the target page | Rewrite as descriptive anchors | Medium |
| Internal links to non-canonical or noindex URLs | Mixed signals about which URL counts | Link to the canonical, indexable version | Medium |
| `nofollow` on internal links | Blocks the signals you want to pass | Remove `nofollow` from internal links | Medium |

None of these will sink a site alone. But together they often explain why a page that "should" rank sits at position 30, or why Search Console keeps reporting URLs as [Discovered – currently not indexed](https://seorecheck.com/blog/discovered-currently-not-indexed-fix).

### What are orphan pages and how do you find them?

An orphan page is a URL that exists, and is often in your sitemap, but has no internal links pointing to it. Common causes include old landing pages from past campaigns, products removed from category listings but still live, blog posts that dropped off paginated archives, and pages created in the CMS but never added to navigation. To find them, compare two lists: every URL a crawler finds by following links from your homepage, and every URL in your XML sitemap, analytics or Search Console. URLs that appear in the second list but not the first are orphans. For each one, decide on purpose. If the page is valuable, link to it from two or three relevant pages. If it's thin or outdated, merge it into a stronger page with a 301 redirect, or remove it. Leaving orphans in the sitemap sends a contradictory message: "this page matters, but nothing on my site points to it."

## What is click depth and how deep is too deep?

Click depth is the minimum number of clicks needed to reach a page from the homepage. The homepage is depth 0, pages linked from it are depth 1, and so on.

Google doesn't publish a hard limit, so treat any specific number as a rule of thumb, not a ranking factor. In practice, a sensible target is to keep your money pages (services, top categories, best-selling products, cornerstone guides) within about three clicks. Deep pages still get crawled, but they tend to be crawled less often and receive fewer internal signals.

Ways to flatten a deep structure:

- **Add hub pages.** A "Services" or "Guides" hub that links to every important child page cuts depth for all of them at once.
- **Use breadcrumbs.** They add upward links on every page and help users understand where they are.
- **Link from high-traffic pages.** Your most-visited blog posts are ideal places to link to commercial pages.
- **Fix pagination.** If old posts sit at page 40 of the blog archive, add category or tag hubs so they're reachable in fewer clicks.

## How should you write anchor text for internal links?

Anchor text is the clickable text of a link. Google's guidance says good anchor text is "descriptive, reasonably concise, and relevant to the page," and should make sense out of context. That rules out "click here," "read more" and "this page," which tell neither users nor search engines anything about the target. For internal links you have more freedom than with backlinks, because you control both ends. Use the words a searcher would use to describe the target page: "technical SEO audit checklist," "pricing for small business plans," "how to fix duplicate content." Vary the wording naturally across different linking pages instead of pasting the exact same phrase everywhere. Avoid stuffing: a paragraph that strings five keyword-heavy links together reads as spam, and Google says keyword stuffing violates its spam policies. Space links out within real sentences so the surrounding text adds context. Finally, check that the anchor actually matches the destination. A link that says "SEO audit pricing" but lands on a generic contact page wastes the signal and frustrates the reader.

## Building an internal linking strategy that scales

Fixing broken links is maintenance. A strategy is what makes new content perform from day one. The simplest model that works for most small and mid-size sites is the hub-and-spoke (topic cluster) structure.

### Step 1: Pick your priority pages

List the 10–30 pages that drive revenue or leads: core services, top categories, key product pages and cornerstone guides. These should get the most internal links and the shallowest click depth.

### Step 2: Group content into topics

Put each supporting article under one topic hub. For example, an accounting firm might have a "Small business tax" hub with spokes on VAT registration, quarterly estimates and deductible expenses.

### Step 3: Link in both directions

- The hub links to every spoke.
- Every spoke links back to the hub with a descriptive anchor.
- Spokes link to each other where it genuinely helps the reader.
- Relevant spokes link to the commercial page ("Need help? See our tax filing service").

### Step 4: Add links when you publish, and when you update

Every new article should link to two to five relevant existing pages, and you should go back and add links *to* the new article from older related posts. That second half is the step most teams skip, and it's the reason new content often sits unindexed for weeks.

### Step 5: Recheck regularly

Links decay. Pages get deleted, URLs change during redesigns, and redirects pile up. A crawl every month or two catches new broken links and redirect chains before they build up.

## Do sitewide links in menus and footers still count?

Yes, but they work differently from links in body text. Navigation and footer links appear on every page, so they're great for discovery and click depth. But they give little topical context, because the same link appears next to every kind of content.

Contextual links inside the main content tend to carry more meaning, since the surrounding text explains why the target is relevant. A healthy site uses both: navigation for structure, and in-content links for relevance.

Two common mistakes to avoid:

- **Mega-menus with hundreds of links.** They flatten everything to depth 1, so no page stands out as more important, and they make menus harder to use.
- **Footer link farms.** Long lists of keyword-anchored city or service pages in the footer look manipulative and rarely help.

## Internal links and AI search

AI Overviews and assistants like ChatGPT search still depend on crawled, indexed pages. A clear internal structure helps their crawlers find your best content and understand how topics connect, the same way it helps Googlebot. A well-linked topic cluster also makes it easier for a system to see which page is your definitive answer on a subject. For more on this, see our guide to [ranking in AI Overviews and AI search](https://seorecheck.com/blog/seo-for-ai-search).

## A quick internal linking audit you can run today

1. Crawl your site from the homepage with any SEO crawler.
2. Export all internal links that return 4xx or 3xx status codes and fix the source links.
3. Sort pages by click depth and flag priority pages deeper than three clicks.
4. Compare crawled URLs with your sitemap to find orphans.
5. Check that internal links point to canonical, indexable URLs. Our [canonical tag guide](https://seorecheck.com/blog/canonical-tag-guide) covers why this matters.
6. Search your templates for `nofollow` on internal links and remove it.
7. Review anchor text on your top 20 pages and replace generic phrases.

If you'd rather see these checks as part of a full review, our [technical SEO audit guide](https://seorecheck.com/blog/technical-seo-audit) shows where internal linking fits among the other checks.

## Key takeaways

- Google only reliably follows `<a href>` links, so JavaScript-only navigation can hide pages.
- Every page you care about needs at least one internal link. Orphan pages are a common, fixable cause of indexing problems.
- Keep priority pages shallow, ideally within about three clicks of the homepage, using hubs, breadcrumbs and links from popular pages.
- Write descriptive, varied anchor text. Never use "click here," and never stuff keywords.
- Link internal pages straight to their final, canonical URLs, not to redirects, 404s or noindexed versions.
- Add links to new content from older pages, and recheck your link health after every redesign or migration.

## See where your internal links stand

SEORecheck's automated audit crawls your site and reports broken internal links, redirect hops, orphan candidates, click depth and anchor text issues, with example URLs from your own pages. You can see what a full report looks like in the [sample report](https://seorecheck.com/sample), or how a follow-up compares issues as fixed, improved, unresolved or new in the [sample recheck](https://seorecheck.com/sample/compare).

When you're ready, [request a free SEO audit preview](https://seorecheck.com/request) to get your score and a few real findings. You don't need an account or a subscription.

---

## Want to know what to fix on your site?

Get a free SEO audit preview: your score and real issues, with evidence from your pages.

- [Get a free SEO audit](https://seorecheck.com/request)
- [See a sample report](https://seorecheck.com/sample)
