Architecture & internal linking
Orphan Pages: How to Find and Fix Pages No Article Links To
The difference between a true orphan and a page that no article links to, what each tool can actually see, a four-source method to find both, and a decision table for linking, merging, redirecting or removing each one.
9 min read
An orphan page is a page that no other page on your site links to. In practice there are two kinds worth finding: true orphans, which nothing links to at all, and pages that no article links to, which may still sit in a menu or footer but get no links from the content where readers and context actually are. This guide explains why the difference matters, what each type of tool can and cannot see, a method that finds both, and a decision table for what to do with each page: link it, merge it, redirect it or remove it.
Orphans are a structural problem, so they sit inside a larger question of how your site links together. The internal linking strategy guide covers that; this guide covers the one job of finding pages that were left out.
Two kinds of orphan
Most articles on orphan pages define them one way and then measure them another. Be explicit about which one you mean, because they are found by different tools and fixed by different people.
| True orphan | Page no article links to | |
|---|---|---|
| Linked from | Nothing on the site | Possibly menus, footers, sidebars, tag pages; no body content |
| How it is found | Sitemap, old links from other sites, direct visits | Site navigation, if it is in it at all |
| Found by | Comparing a full crawl with a list of every known URL | Counting links in main content only |
| Typical cause | Removed from navigation in a redesign; published and never linked; left behind after a merge | Published with a menu link and nothing else; older content never updated to link to it |
| Usually fixed by | Whoever owns structure: SEO or web team | Editors, by linking from related articles |
The second kind is far more common on content-heavy sites and is invisible to a standard orphan report: a full crawler sees the footer link and considers the page linked. Yet a page whose only links are in a mega menu shared by every page gets no context from them, and readers of related articles never find it.
Why orphans matter
Google’s SEO Starter Guide says Google primarily finds pages through links from pages it has already crawled, and its link best practices ask that every page you care about has a link from at least one other page on your site. A sitemap helps Google discover URLs, but Google says it does not guarantee they will be crawled or indexed. So a true orphan in your sitemap may be found, but it gets none of the signals that links carry: the anchor text that describes it and the sense of how it relates to the rest of the site.
There is a reader cost too. A page no article links to can only be reached from search or the menu. If it is good, you are wasting it; if it is out of date, nobody notices, because nobody passes through it. Be wary of stronger claims you will see elsewhere, such as orphans “cannot rank”: orphans do rank, sometimes well, usually because other sites link to them. That is a reason to link them, not proof they are fine.
What each tool can see
Every orphan report is the difference between two lists: the URLs you know about and the URLs a tool reached by following links. What counts as “reached” depends on which links the tool follows.
| Tool | Can see | Cannot see, or needs help with |
|---|---|---|
| Full crawler (Screaming Frog, Sitebulb and similar) | Every link in the HTML, including navigation and footers. Screaming Frog can classify links by position and filter inlinks to content only | Orphans, unless you add URL sources (sitemaps, Google Analytics, Search Console) and run its crawl analysis. Position classification can misfile links, for example a mobile menu outside the nav element |
| SEO suite site audits (Ahrefs, Semrush) | Pages with no incoming internal links among those found through the sitemap or, in Semrush, a connected analytics account | Pages not in those sources. Whether navigation links count depends on the tool’s settings; check before comparing reports |
| Search Console Links report | A sample of your most internally linked pages and which pages link to a given URL | Orphans. Google says the report is not a complete list of every link, tables stop at 1,000 rows, and removed links can linger |
| URL Inspection | For one URL: whether it is indexed, the sitemaps that list it, and sometimes a referring page | A site-wide list. Google notes the referring page can be missing even when one exists |
| Server logs | URLs Googlebot and visitors actually request, including ones your crawl never reached | Why a page is requested; needs access and processing |
| Morrison | Links in each page’s main content, for every page in its site index, with HTTP status and Search Console clicks | Navigation, footer and sidebar links. It finds pages no article links to, not true orphans |
The practical split: use a full crawler with extra URL sources for true orphans, and a content-only link count for pages no article links to. If you only have a full crawler, its link-position filter gets you close to the second list, but check a sample of its classifications before relying on them.
The method, step by step
- List every URL you know about. XML sitemaps, a CMS export, pages with impressions in Search Console, landing pages in GA4, and, if you have them, URLs from server logs. Normalize them the same way, as in building a content inventory.
- Crawl from the homepage with a full crawler, following every link, and record the set of URLs it reached.
- Subtract. Known URLs the crawl did not reach are your true orphan candidates. Remove anything that returns a redirect or an error; those are a separate clean-up.
- Count content links. For every URL that returns 200, count the pages that link to it from their main content. Zero means no article links to it.
- Join value data. Add clicks and impressions from Search Console, key events from GA4 and, if available, the number of other sites linking to the page.
- Mark the intentional ones and decide the rest with the table below.
Finding both kinds of orphan
Known URLs
Sitemaps, CMS, Search Console, GA4, logs
Reached URLs
Full crawl from the homepage, all links
Known minus reached
True orphans
Zero content inlinks
Pages no article links to
Join clicks, events, backlinks
Decide per page
Intentional orphans
Some pages are meant to sit outside the link structure. Keep an allowlist so they stop appearing in every report:
- Paid campaign landing pages, often with noindex.
- Form thank-you and confirmation pages, which should usually be noindex.
- Pages sent only by email or used in product onboarding.
- Legal and utility pages that are properly linked from the footer: an article does not need to link to your cookie policy.
The test for the allowlist is simple: would a reader of any article on your site be better off with a link to this page? If not, it is fine as it is.
What to do with each page
Linking every orphan is the wrong default. Some should not exist. The thresholds below are rules of thumb; adjust them to your site’s traffic.
| If the page | Then |
|---|---|
| Is current and earns clicks or has links from other sites | Link it from two to five related articles and its topic hub. Highest priority. |
| Is current, earns little, but fills a real gap in a topic | Link it from the most closely related article and the hub. |
| Covers the same intent as a better page | Merge it into that page and redirect. See how to merge pages without losing rankings. |
| Is outdated and the topic still matters | Refresh, then link. Linking a stale page sends readers to it. |
| Is outdated, has no clicks in 12 months and no links from other sites | Remove it with a 404 or 410 and take it out of the sitemap. Redirect only if a page serves the same need. |
| Is a tag, author or archive page | Decide at template level: improve the template, noindex it, or leave it to navigation. |
| Is on the intentional list | Leave it. |
On removal: Google’s HTTP status documentation says it treats 4xx errors other than 429 the same way, so 404 and 410 both work. Redirecting a retired page to an unrelated page, such as the homepage, is likely to be treated as a soft 404 and wastes the redirect.
Choosing the pages that link
A link from an article is worth adding when a reader of that article would actually want the next step. In practice:
- Start with articles on the same topic that already get search traffic; their readers are the ones you want to send.
- Write anchor text that says what the target page is, such as “holiday pay calculator”, not “click here”.
- Put the link where the subject comes up in the text, not in a block of links at the bottom.
- Add the page to its topic hub, so it is one click from the page that organizes the topic.
Worked example
Illustrative numbers, not client data. A payroll software site with about 1,300 URLs in its sitemap:
| Finding | Count | Action |
|---|---|---|
| Known URLs not reached by the full crawl (true orphans) | 14 | 8 old campaign pages to the allowlist; 6 retired articles removed |
| Pages with no content inlinks (linked only from menus or not at all) | 37 | Reviewed one by one |
| Of those, earning clicks | 9 | Linked from 2 to 5 related guides each; the calculator from four |
| Overlapping another page | 6 | Merged and redirected |
| Outdated, no clicks, no links from other sites | 11 | Removed, out of the sitemap |
| Legal and utility pages | 11 | Allowlisted |
The page that mattered most was a calculator with steady clicks that only the main menu linked to. None of the four guides about the same topic mentioned it. That is a typical finding: the most valuable content orphans are often tools and templates, built by a different team from the articles around them.
Stop new orphans
Most orphans are created on the day a page is published, or the day another page is merged or redesigned. Three habits prevent most of them:
- Link before you publish. The brief for every new page names two or three existing articles that will link to it, and the publishing checklist includes adding those links. See how to write a content brief.
- Update links after every merge and redesign. When navigation changes or pages merge, re-run the content-link count for the affected section.
- Check monthly. A recurring report of new pages with no content inlinks is short and quick to act on, compared with an annual audit that finds dozens.
Where Morrison fits
Morrison stores the links in each page’s main content, alongside its HTTP status and Search Console clicks. Chat can find the pages that link to a given page, or into a whole folder in one search, so you can check a set of pages, such as your tools, templates or a new section, for ones no article links to, and see which of them still earn clicks. There is no inbound-link count, so it suits a focused set rather than a sweep of every URL. For the whole site, export the URL grid with its Internal links column and count, in a pivot table, how many pages link to each URL. A monthly automation can repeat the focused check on the pages you care about. Morrison does not read navigation, footer or sidebar links, so it does not find true orphans or click depth; pair it with a full crawler for those. See internal link audit.
Key takeaways
- Two kinds: true orphans, which nothing links to, and pages no article links to. Different tools, different fixes.
- Every orphan report is a subtraction: known URLs minus reached URLs. Know what your tool counts as reached.
- Do not link everything: merge, refresh, remove or allowlist where that serves readers better.
- Prevent at publishing: name the linking articles in the brief and add the links before the page goes live.
Sources and further reading
- 1SEO Starter GuideGoogle Search Central
- 2Link best practices for GoogleGoogle Search Central
- 3What is a sitemapGoogle Search Central
- 4Links reportSearch Console Help
- 5URL Inspection toolSearch Console Help
- 6Page indexing reportSearch Console Help
- 7Redirects and Google SearchGoogle Search Central
- 8How HTTP status codes, and network and DNS errors affect Google SearchGoogle Search Central
- 9How to find orphan pagesScreaming Frog
- 10How to analyse link positionScreaming Frog

CEO, Morrison
Ulrich is CEO of Morrison and founded Bonzer in 2017, growing it into one of Scandinavia's leading SEO agencies with 900+ clients across Copenhagen, Oslo, and Stockholm. At Morrison he leads strategy, operations and go-to-market, bringing years of hands-on SEO and content work to the platform side of the business.