When a new page sits in Search Console as "Discovered – currently not indexed" for weeks, the instinct is to resubmit the sitemap or click "Request indexing" again. Very often the real problem is simpler: nothing on the site points to the page, or the only links to it are buried five clicks deep in a paginated archive. Google found the URL, but your own site is telling it the page is not important.
This guide covers why internal links matter specifically for indexing, the principles that make a link useful to Googlebot, a repeatable playbook to run every time you publish, how to find orphan pages, and the pitfalls that quietly waste crawling.
Why internal links matter for indexing
Google discovers URLs mainly by following links from pages it already knows, and from sitemaps and a few other sources. Once a URL is known, Google still has to decide when to crawl it and, after crawling, whether to index it. Internal links influence all three stages:
- Discovery. Every time Googlebot recrawls your homepage, a category page or a popular article, it sees the links on it. A new page linked from frequently crawled pages is found quickly, without waiting for a sitemap to be reprocessed.
- Crawl priority. Links are one of the signals Google uses to judge how important a URL is relative to the rest of the site. A page linked from the homepage and several relevant articles looks more important than one reachable only through page 14 of an archive. Pages that look unimportant are the ones that wait in the "Discovered" queue.
- Context. Anchor text and the surrounding copy tell Google what the target page is about before it even crawls it, and they help it understand how pages relate to each other.
Why a sitemap alone isn't enough
A sitemap is a list of URLs you would like crawled. It is a useful hint, but it carries no information about which pages matter most (Google ignores <priority>), and it does not give a page any internal context. A URL that is in the sitemap but linked from nowhere is an orphan: Google knows it exists, yet everything about the site structure suggests it is an afterthought. Use both: the sitemap for completeness, internal links for discovery and importance. See how to submit a sitemap for the sitemap side.
Principles of internal links that help indexing
1. Use real, crawlable <a href> links
Googlebot follows links in <a> elements that have an href attribute with a resolvable URL. It does not click buttons, fire onclick handlers or scroll through widgets to see what happens. If your navigation, "related posts" block or load-more button is built from spans and JavaScript, those links may not exist as far as discovery is concerned.
<!-- Good: a real link Google can follow -->
<a href="/guides/internal-linking-for-indexing">Internal linking for indexing</a>
<!-- Bad: no href, navigation only happens in JavaScript -->
<span class="link" onclick="location.href='/guides/internal-linking-for-indexing'">
Read more
</span>
<!-- Bad: href is not a URL -->
<a href="javascript:void(0)" onclick="openGuide(42)">Read more</a>Client-side routers are fine as long as they render a proper <a href> in the HTML (most framework link components do). Check by viewing the rendered HTML in the URL Inspection tool and searching for the target URL.
2. Keep click depth shallow
Click depth is the number of clicks needed to reach a page from the homepage. There is no official cut-off, but in practice pages that sit many clicks deep are crawled less often and are more likely to be left unindexed. Important pages should be reachable within roughly three clicks. Category hubs, "latest" lists and contextual links in articles are what keep depth low as a site grows.
3. Write descriptive anchor text
The anchor should say what the target page is about, in the words a reader would expect. "Click here" and "read more" waste the one place where you can describe the page. Avoid the opposite extreme as well: stuffing the exact same keyword-heavy phrase into every link looks unnatural and helps nobody. Vary anchors naturally, the way you would describe the page in a sentence.
| Weak anchor | Better anchor | Why |
|---|---|---|
| click here | how to submit a sitemap in Search Console | States the topic of the target page |
| read more | our guide to fixing "Crawled – currently not indexed" | Gives context even out of the paragraph |
| this article | internal linking checklist for new pages | Distinguishes it from other articles |
| SEO | technical SEO audit for small online shops | Specific instead of a one-word catch-all |
| best cheap running shoes buy running shoes online | running shoes for flat feet | Natural phrase instead of a stuffed keyword string |
4. Do not nofollow internal links
Adding rel="nofollow" to links between your own pages does not "save" crawl budget or concentrate value elsewhere; it simply tells Google not to treat the link as a normal endorsement and can weaken discovery of the target. If a page should not be indexed, use noindex on that page; if it should not be crawled at all, use robots.txt. Keep internal links plain.
5. Avoid orphan pages
An orphan page has no internal links pointing to it. It may still be found through a sitemap or an external link, but it sends the strongest possible "unimportant" signal. Landing pages built for campaigns, old posts removed from navigation and products moved out of their category are the usual orphans.
6. Organise content into hubs and topic clusters
A hub page covers a topic broadly and links to every detailed page on that topic; each detailed page links back to the hub and to its closest siblings. This structure keeps click depth low, gives every new page an obvious place to be linked from, and makes the relationships between pages explicit for both readers and crawlers.
The playbook for every new page
Run these steps every time you publish. Most of them take a few minutes and they turn "publish and hope" into a routine that reliably puts new URLs in front of Googlebot.
- 01
Link from the homepage or a "latest" list
Make sure the new page appears in a "latest posts", "new products" or similar block on the homepage or another frequently crawled page. This is usually the fastest route to discovery. Check that the block outputs real <a href> links in the HTML, not links injected after a user interaction.
- 02
Add links from 2–5 related older pages
Find existing pages on the same subject (a site: search plus a keyword, or your CMS search, works well) and add a contextual link in the body copy where it genuinely helps the reader. Prefer older pages that are already indexed and get traffic: they are crawled more often, so the new link is seen sooner.
- 03
Link from the category hub
The page should be listed on its category or topic hub, ideally on the first page of that listing rather than only on a later paginated page.
- 04
Update the hub itself
If the hub has an editorial overview, add a sentence and a link describing the new page. Updating the hub also gives Google a reason to recrawl it.
- 05
Add the URL to the sitemap
Confirm the canonical, indexable URL (status 200, no noindex, canonical pointing to itself) is in your XML sitemap with an accurate <lastmod>. Most CMSs do this automatically; verify once rather than assume.
- 06
Verify
Use the URL Inspection tool on the new URL: run a live test to confirm Google can fetch and render it, and check the rendered HTML of one linking page to confirm the link is there. If the page is important, you can use "Request indexing" once. Then check index status again after a few days.
If a page has been linked properly and is still stuck as "Discovered – currently not indexed", work through the other causes in our guide to Discovered – currently not indexed: server speed, crawl waste elsewhere on the site and overall perceived quality.
How to find orphan pages
Orphans are invisible when you browse your own site, so you have to find them by comparing lists. The method is the same regardless of tooling:
- Build the "should exist" list. Export every indexable URL from your sitemap(s) or from the CMS (posts, pages, products, categories).
- Build the "reachable" list. Run a crawler that starts at the homepage and follows only links, not the sitemap. Many desktop SEO crawlers can do this; make sure JavaScript rendering is enabled if your site relies on it.
- Compare. URLs in the first list but missing from the second are orphans (or are only reachable through links the crawler could not follow, which is just as important to fix).
- Decide per URL. Link it from the right hub and related pages, merge it into a stronger page and redirect, or remove it from the sitemap if it should not be indexed at all.
Search Console gives a second view. In the Links report, the "Top linked pages" table under Internal links shows how many internal links Google has recorded for each URL. Important pages that appear near the bottom, or not at all, are under-linked. The data is sampled and updated with a delay, so treat it as a sanity check rather than a complete inventory.
Finally, cross-check with index status. Pull the "Discovered – currently not indexed" and "Crawled – currently not indexed" examples from the Pages report and look at how many internal links each has. A pattern of weakly linked URLs in those lists is a strong hint that architecture, not content, is the bottleneck.
Pitfalls that undermine internal linking
- Infinite faceted URLs. Filters for colour, size, price and sort order can generate a near-endless number of crawlable URL combinations. Googlebot spends its time on those instead of your new pages. Keep only valuable filter combinations crawlable, and handle the rest with canonical tags, robots.txt rules or links that are not crawlable. See Google's guidance on consolidating duplicate URLs.
- Pagination-only access. If the only path to an older article is "next page" repeated twenty times, it sits twenty clicks deep. Add contextual links, hub pages and category listings so no important page depends on pagination alone. Paginated pages should still use normal <a href> links to each other.
- Links only inside JavaScript widgets. Related-post carousels, tabs and "load more" components that fetch links only on scroll or click may never expose those links to Googlebot. Check the rendered HTML in the URL Inspection tool.
- Image links without alt text. When an image is the link, its alt attribute acts as the anchor text. An image link with an empty or missing alt gives Google no context about the target.
- Too many sitewide footer links. Linking to dozens of pages from every footer does not make all of them important; it dilutes the signal and adds the same boilerplate to every page. Keep sitewide navigation for genuinely key pages and do the real work with contextual links.
- Links to redirects and 404s. Internal links pointing at old URLs that redirect or return 404 waste crawling and slow discovery. Update them to the final destination URL.
Quick checklist
- Every new page is linked from the homepage or a "latest" block, its hub, and 2–5 related pages
- All internal links are <a href> elements visible in the rendered HTML
- Anchors describe the target page; no "click here"
- No rel="nofollow" on internal links
- Important pages are reachable within about three clicks
- Sitemap contains only canonical, indexable, 200-status URLs
- Orphan check (sitemap vs. crawl) run regularly, for example monthly
Internal linking will not force a page into the index; Google still decides based on quality and usefulness. What it does is remove the most common structural reason a good page is ignored. Get the links right first, then use the sitemap and, where it makes sense, a crawl request to speed up discovery.