The fastest free way to find internal links to a page is Google Search Console: open Links, click More under Top linked pages in the Internal links column, find your URL and click it to see the pages that link to it. That list is a sample capped at 1,000 rows and shows no anchor text. For a complete list with anchor text and where each link sits (menu, body, footer), crawl your site with Screaming Frog, which is free up to 500 URLs: select the page and open the Inlinks tab.
Below are six methods with the exact clicks, what each one misses, and a worked example: we ran the check on all 280 posts of this blog and found 40 with no contextual link from any other post.
Key takeaways
- Search Console's Links report is free and shows Google's view, but it's a sample, limited to 1,000 rows per table, without anchor text.
- Screaming Frog's free version crawls up to 500 URLs and lists every internal link with anchor text, follow status and link position. A licence costs $279 a year as of October 2026.
- Filter for links in the main content. Menu and footer links appear on every page and hide whether anyone actually links to the page in context.
- On WordPress, Yoast's text link counter and Rank Math's link counter add an incoming-links column to your posts list.
- Google's old link operator no longer works. Use a crawler or Search Console instead.
Which method should you use?
Six ways to find internal links to a page
| Google Search Console Links report | ✓ | ✕ | ✕ | ✕ | Sample of links; 1,000 rows per table | A quick check of how Google sees your links |
| Screaming Frog SEO Spider | ✓ | ✓ | ✓ | ✓ | 500 URLs on the free version | Full audits of small and mid-size sites |
| Ahrefs Site Explorer → Internal backlinks | ✕ | ✓ | ✓ | — | Paid; Ahrefs Webmaster Tools is free for verified sites | Ongoing monitoring if you already use Ahrefs |
| Yoast or Rank Math link counter (WordPress) | ✓ | ✓ | ✕ | ✕ | Counts only; links inside post content | Spotting under-linked WordPress posts |
| Search your own content or database | ✓ | ✓ | ✓ | ✕ | Needs file or database access | Developers and headless or markdown sites |
| Outrank Link Extractor or browser DevTools | ✓ | ✕ | ✓ | ✕ | One source page at a time | Checking what a single page links to |
Click a column header to sort.
If you only do one thing, use Search Console for a five-minute answer and Screaming Frog when you need the full picture.
Method 1: Google Search Console Links report
Search Console shows the internal links Google has found, grouped by target page.
- 1
Open the Links report
In Search Console, choose your property and click Links at the bottom of the left menu. - 2
Open the full internal list
In the Internal links column, under Top linked pages, click More. - 3
Find your page
Click the filter icon above the table and filter Target page by your URL or part of its slug. - 4
See who links to it
Click the row. The next table lists the linking pages Google found for that URL. - 5
Export if needed
Use Export at the top right for a Google Sheets, Excel or CSV copy (up to 1,000 rows).
What Google's help page says you should know before trusting the numbers:
- It's a sample. The report "isn't a complete list of every link", and non-indexed pages or duplicate URLs may be missing.
- Tables stop at 1,000 rows, so heavily linked pages on large sites are truncated.
- Links are grouped by canonical URL, and duplicate links from the same page to the same target count once.
- It includes links Google found over time, some of which you may already have removed.
- No anchor text, no link position, no nofollow flag. You can't tell a menu link from a link in the middle of an article.
It answers "does Google see links to this page?" well. It can't tell you whether those links are useful.
Method 2: Screaming Frog (the complete list, free up to 500 URLs)
Screaming Frog SEO Spider crawls your site like a search engine and records every link. The free version stops at 500 URLs; the paid licence is $279 a year per user as of October 2026.
- 1
Crawl the site
Download and open Screaming Frog, keep Mode → Spider, type your home page URL into the bar at the top and click Start. - 2
Select the page
When the crawl finishes, open the Internal tab, set the filter to HTML, and click the URL you're checking. The Unique Inlinks column already shows how many pages link to it. - 3
Open Inlinks
In the lower window, click the Inlinks tab. Each row shows the linking page (From), the Anchor Text, the image Alt Text for image links, whether the link is followed, and Link Position. - 4
Keep only contextual links
Sort or filter by Link Position and look at the rows marked Content. Navigation, header, sidebar and footer links appear on every page and say little about this page's importance. - 5
Export
Right-click the URL and export its inlinks, or use Bulk Export → Links → All Inlinks for every link on the site.
Screaming Frog classifies link position from your HTML (<nav>, <header>, <footer>, <aside> and so on), as its link position guide explains, so the column is only as accurate as your theme's markup.
To find orphan pages (pages with no internal links at all), give Screaming Frog a source of URLs it can't reach through links, such as your XML sitemap: enable crawling of your XML sitemap under Configuration → Spider → Crawl, or connect Search Console or Google Analytics under Configuration → API Access. Run Crawl Analysis after the crawl, then check the orphan URLs filter in the Sitemaps tab.
Method 3: Ahrefs Site Explorer
If you use Ahrefs, enter the page's URL in Site Explorer, set the mode to the exact URL, and open Internal links → Internal backlinks. Ahrefs lists the linking pages with the anchor text and the text around the link, and you can filter by nofollow or by the target's HTTP status. Its Academy lesson on the report covers the filters.
For your own site, Ahrefs Webmaster Tools is free once you verify ownership and includes Site Audit with 5,000 crawl credits per project per month. Site Audit also has a Link opportunities report that suggests pages which mention a topic but don't link to the page about it yet.
Method 4: WordPress link counters
On WordPress, two popular SEO plugins count internal links for you in Posts → All Posts:
- Yoast SEO's text link counter adds two columns: internal links in each post and internal links pointing to it. Sort by the second column to find posts nobody links to.
- Rank Math's Link Counter shows internal, external and incoming link counts in the same list.
Both only count links inside post and page content, not menus or widgets, which is what you want for contextual links. They show counts, not the linking pages, so pair them with a crawler or a content search when you need the list. Paid plugins such as Link Whisper add an inbound links report per post.
Method 5: Search your own content (with a real example)
If you have access to your content, you can get an exact list of body links in seconds. This is how we checked our own blog, which is written in markdown files.
On a markdown or static site: search for the target path.
grep -rl "/blog/how-to-find-internal-links-to-a-page" content/On WordPress with WP-CLI: search the database for the slug.
wp db search "how-to-find-internal-links-to-a-page" wp_postsWithout either: export your posts (WordPress: Tools → Export) and search the file.
When we ran this across all 280 posts on the Outrank blog on October 19, 2026, midway through a content refresh, counting only links in post bodies from other posts:
40
posts with no contextual link from any other post
14.3% of 280 posts
42
posts with exactly one
One edit away from becoming an orphan
3
median incoming links per post
The most linked post had 33
Source: Outrank blog content, October 19, 2026. Navigation, category pages and related-post widgets excluded.
Every one of those posts is still reachable through category pages and the sitemap, so Google can find them. What they lack is a reason: no other article vouches for them in context. That's the list we work from when adding links, and the reason this post now links to its siblings, like our guide on why internal links matter for SEO.
Method 6: Check the links on a single page
Sometimes the question is the other way round: does this specific page link to my target, and with what anchor?
- Outrank's free Link Extractor: paste any public URL and it lists every link on that page with its anchor text, internal or external type and
relattributes such as nofollow, with a CSV export. It reads the HTML the server returns, so links added later by JavaScript may not appear. - Browser DevTools: open the page, press F12 (Cmd+Option+I on Mac), go to Console and run:
[...document.querySelectorAll('a[href*="/your-target-slug"]')].map(a => a.textContent.trim())It returns the anchor text of every link on the page that points to your target, including links rendered by JavaScript.
What about Google search operators?
Google's link: operator, once used to list links to a page, was retired years ago and no longer returns reliable results. The site: operator still helps with the next step, which is finding pages that should link to your target:
site:yourdomain.com "internal links" -inurl:how-to-find-internal-links-to-a-page
That returns your own pages mentioning the topic, minus the target itself. Each one is a candidate for a new contextual link.
What to do with the list
Finding links is the audit; the value comes from what you change:
- Pages with zero or one contextual link: add links from two or three related pages, ideally ones that already get traffic.
- Generic anchors ("click here", "read more"): rewrite them to describe the target. Google's link guidelines ask for anchor text that is "descriptive, reasonably concise, and relevant".
- Links to redirects or 404s: point them straight at the final URL. Our guide to fixing broken links covers the clean-up, and the technical SEO audit checklist covers the rest of a crawl review.
- Important pages buried deep: link to them from the home page, a hub page or the navigation.
- New posts: add links from two or three related older posts on publish day, as part of your blog post SEO checklist.
How many links a page needs and why they move rankings is covered in why internal links are important for SEO. If you publish with Outrank, each new article is written with internal links to your existing posts, so new content doesn't start life as an orphan.
FAQ
How do I see internal links in Google Search Console?
Go to Links in the left menu, click More under Top linked pages in the Internal links column, filter by your page's URL and click it. Search Console then lists the pages linking to it. It's a sample of links Google has found, capped at 1,000 rows, and it doesn't show anchor text.
How do I find orphan pages?
Crawl your site with Screaming Frog with XML sitemap crawling enabled (or connected to Search Console or Google Analytics), run Crawl Analysis and check the orphan URLs filter in the Sitemaps tab. Any URL in your sitemap or analytics that the crawler couldn't reach through links is an orphan.
How do I find internal links to a page in WordPress?
Install Yoast SEO or Rank Math and open Posts → All Posts: both add a column showing how many internal links point to each post. To see which posts link to it, run a Screaming Frog crawl or search the database for the post's slug with WP-CLI.
Can I find internal links to a page for free?
Yes. Google Search Console's Links report, Screaming Frog's free version (up to 500 URLs), Ahrefs Webmaster Tools for verified sites, and the free Yoast and Rank Math plugins all show internal links at no cost. Only Screaming Frog and Ahrefs give a complete list with anchor text.
How many internal links should point to a page?
Google says there's no ideal number. In Zyppy's study of 23 million internal links, pages with 40–44 internal links received about four times the Google clicks of pages with 0–4, with traffic declining past roughly 45–50 links. Treat that as a correlation and focus first on giving every important page several contextual links.



