Check internal links across your whole site

An internal link checker for the sites you own. GSC Wizard follows the links on your pages, then shows which pages are broken and who still links to them, which pages nothing links to, which pages are dead ends and where links run through redirects.

You sign in with Google and pick the property. The crawl only runs on sites your Google account owns or is verified for in Search Console.

Free for the 7-day trial, no credit card needed. After the trial you need a paid plan, from €17 a month, because there is no free plan for the web app.

See an example report first

How it works

  1. 1

    Sign in with Google

    Connect Search Console with read-only access. GSC Wizard reads your pages from Search Console and cannot change anything in your account.

  2. 2

    Pick your property

    The crawl runs only on properties your Google account owns or is verified for in Search Console. With one property, this step is skipped.

  3. 3

    Start the crawl

    The app opens with the URL you typed as the starting point. The crawl runs in the background, so you can leave the page and come back to the report.

Example report: check internal links in one place

Fictional data for example.com, built from the issue types and severities the app uses for links, redirects and broken pages. Filter by severity or category to see the broken pages, the pages that still link to them and the orphan pages nobody links to.

Example report for example.com

Fictional data, shown so you can try the report without signing in.

Example data
150
Pages crawled
2
Broken pages still linked
2
Orphan pages
2
Dead-end pages

Showing 16 of 16 issues

SeverityCategoryIssuePageDetails
CriticalTechnicalHTTP error status/blog/2019-guidePage returns HTTP 404
MediumLinksBroken page linked internally/blog/2019-guideLinked from 4 crawled page(s): https://www.example.com/blog, https://www.example.com/blog/seo-basics, https://www.example.com/resources +1 more
CriticalTechnicalHTTP error status/team/old-memberPage returns HTTP 410
MediumLinksBroken page linked internally/team/old-memberLinked from 1 crawled page(s): https://www.example.com/about
MediumSitemapNon-indexable page in sitemap/team/old-memberNon-indexable page is listed in the XML sitemap
CriticalIndexabilityBlocked by robots.txt/search?q=seorobots.txt disallows GSCWizard-Bot from fetching this page (matched rule: Disallow: /search). On-page checks were skipped; allow the bot in robots.txt to include this URL.
HighLinksOrphan page/guides/keyword-researchNo internal links found from any other crawled page to this indexable URL
MediumLinksOrphan page/case-studies/acmeNo internal links found from any other crawled page to this indexable URL
HighTechnicalRedirect loop/shopRedirect chain too long or looping (>5 hops)
LowTechnicalPage redirects/pricing-oldPage redirects to https://www.example.com/pricing (2 hops)
LowTechnicalPage redirects/blog/seo-basics/Page redirects to https://www.example.com/blog/seo-basics
MediumLinksNo internal links/landing/webinarNo internal links found on the page
MediumLinksNo internal links/thank-youNo internal links found on the page
MediumIndexabilityNofollow directive/tag/seoPage-level nofollow directive present
MediumInternationalhreflang without return link/de/hreflang points to https://www.example.com/fr/, which does not link back to this page
LowSitemapIndexable page missing from sitemap/guides/link-buildingIndexable page is not in the XML sitemap
In the app every page row also carries its own internal, external and nofollow link counts, and the issues export as CSV.

Internal link checker tool that walks your site like a crawler

The Link Crawl starts at a URL you choose, usually your homepage, and follows the internal links it finds, the way a search engine discovers pages. You set how deep it goes, one to three clicks from the start, and where it stops: 50, 150, 500 or 1,000 pages. Every page it reaches is audited with the same checks as the SEO checker, so a broken link, a redirect chain and a missing title on the same page show up together.

It only follows links on the host of the property you picked, and it queues at most 40 new links from any one page, so a faceted filter or a calendar with endless pages cannot eat the whole crawl. Each run stops at its cap, so it always finishes.

Find internal links to a page

When a page loses traffic or never gets indexed, the first question is whether your own site links to it. The internal link checker answers that in two ways. A page that no other checked page links to is flagged as an orphan page. A page that returns an error is listed with the crawled pages that still link to it, up to three by name and a count of the rest, so you know exactly which pages to edit.

It does not list every link that points at a healthy page. If you need that count per page as Google sees it, Search Console's Links report shows your most linked pages, and the crawl tells you which of those links are broken or lead nowhere.

Internal link analysis: what the report counts

For every page the report records how many internal, external and nofollow links its HTML contains, and the problems those links create across the site:

  • Broken pages that are still linked: pages returning 4xx or 5xx, or that could not be fetched, with the crawled pages that link to them.
  • Orphan pages: indexable pages no other checked page links to.
  • Dead ends: pages without a single internal link, which stop both visitors and crawlers.
  • Redirects: links that land on a redirect, with the number of hops, and chains that loop or run longer than five hops.
  • Nofollow and robots.txt: pages with a page-level nofollow and URLs your robots.txt blocks.
  • hreflang return links: language versions that point at each other without linking back.
Example data for example.com: link counts per page, as each row of the report shows them
PageStatusInternal linksExternal linksNofollow links
/20064123
/blog2004840
/blog/seo-basics2003192
/resources20027156
/about2002250
/guides/keyword-research2001871
/landing/webinar200030
/thank-you200000
/blog/2019-guide404n/an/an/a

Orphan pages: find internal links that are missing

An orphan is easy to miss with a link-following crawler, because a crawler that only follows links never reaches a page nothing links to. That is why the Full On-Page Check works the other way round: it starts from the pages that earned impressions in Search Console over the last 28 days, up to 1,000 of them, and then checks which of them no other page in the set links to. A page that earns impressions while nothing on your site points at it is rated high, and an indexable page that is only in your XML sitemap is rated medium.

Run both reports and you have the full picture: the Link Crawl shows what a crawler can reach from your homepage, and the Full On-Page Check shows which pages Google sends traffic to that your own navigation forgot.

Internal link checker FAQ

Is this internal link checker free?

The example report on this page is free and needs no account. Checking the internal links of your own site is free for the 7-day trial, with no credit card needed. After the trial you need a paid plan, from €17 a month, because there is no free plan for the web app.

How do I find internal links to a page?

GSC Wizard answers the two questions that usually matter: does any other page link to it at all (the orphan check), and which crawled pages link to a URL that is broken (listed on the broken page itself). It does not list every link that points to a healthy page. For a count of internal links per page as Google sees them, Search Console's own Links report shows your most linked pages.

What is an orphan page?

An indexable page that no other page in the check links to. The Full On-Page Check flags it when the page earns impressions in Search Console (high severity) or sits in your XML sitemap (medium). Only links between checked pages count, so a page that is linked only from a page outside the check, for example one with no impressions or beyond the 1,000-page cap, can still show up here.

Does it check links in JavaScript menus?

No. The crawler reads the links in the HTML your server returns, meaning a elements with an href, and does not run JavaScript. A link that only appears after a script runs is not counted, which is also a hint that some crawlers may miss it. Links to other hosts count as external, and mailto, tel and javascript links are skipped.

Can I check internal links on any website?

No, only on sites you own or are verified for in Search Console. There is no public crawl endpoint, and a crawl never leaves the host of the property you picked, so the checker cannot be pointed at someone else's site.

Does the crawler respect robots.txt and my server?

Yes. GSCWizard-Bot/1.0 checks robots.txt before every URL and every redirect hop and never fetches a disallowed URL. It honours Crawl-delay up to 10 seconds, fetches 5 pages at a time by default and backs off on 429 or 503 answers. You can slow it down further for one property in its settings. See the bot page to allow or block it.

More free tools

Check the internal links of your own site

Sign in with Google, pick your property and see the broken links, orphan pages and dead ends a crawler runs into.

Check internal links

Free for the 7-day trial, no credit card needed. After the trial you need a paid plan, from €17 a month, because there is no free plan for the web app.

Search Console tips in your inbox

Practical GSC and GA4 workflows, product updates and SEO experiments. No spam, unsubscribe anytime.