{"id":207,"date":"2026-07-30T08:06:56","date_gmt":"2026-07-30T02:36:56","guid":{"rendered":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/"},"modified":"2026-08-03T19:13:11","modified_gmt":"2026-08-03T13:43:11","slug":"internal-link-checker-wordpress","status":"publish","type":"post","link":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/","title":{"rendered":"How to Check Internal Links in WordPress (Free Tools and Fixes)"},"content":{"rendered":"<p>Every WordPress site quietly accumulates internal-linking debt. Posts get published in a hurry without a single link pointing to them. Old links break when slugs change. A handful of pages collect all the attention while the rest sit three or four clicks deep where neither readers nor Google bother to go. None of this announces itself \u2014 you only see it when you actually check. The good news: checking is free, and it takes an afternoon, not a week.<\/p>\n<p>This guide walks through the internal link checkers we actually use \u2014 Google Search Console, a desktop crawler, a couple of search-operator tricks, and WordPress plugins that report from inside the site \u2014 plus what &#8220;healthy&#8221; looks like once you have the numbers in front of you.<\/p>\n<h2>What an internal link audit should tell you<\/h2>\n<p>Before opening any tool, it helps to know what you&#8217;re looking for. A useful audit answers four questions:<\/p>\n<ul>\n<li><strong>Which pages have no internal links pointing to them?<\/strong> These are orphaned pages \u2014 invisible to anyone navigating your site, and deprioritized by search engines.<\/li>\n<li><strong>Which internal links are broken?<\/strong> Links to deleted posts, changed slugs, or typo&#8217;d URLs waste crawl budget and dead-end your readers.<\/li>\n<li><strong>How is link equity distributed?<\/strong> Your most important pages should have the most inlinks. Very often it&#8217;s the opposite: the contact page has fifty and your best guide has two.<\/li>\n<li><strong>How deep is your content?<\/strong> If a post takes four or more clicks to reach from the homepage, both crawlers and humans will struggle to find it.<\/li>\n<\/ul>\n<h2>Method 1: Google Search Console&#8217;s Links report<\/h2>\n<p>If your site is verified in Search Console, you already have an internal link checker \u2014 it&#8217;s just well hidden. In the left sidebar, scroll to the bottom and open <strong>Links<\/strong>. The right-hand column, &#8220;Internal links&#8221;, lists your pages sorted by how many internal links Google found pointing to each one.<\/p>\n<p>How we read this report:<\/p>\n<ol>\n<li><strong>Check the top of the list.<\/strong> These are the pages Google considers most central on your site. If the top ten is dominated by tag archives, the privacy policy, and the login page rather than your money pages, your linking priorities need work.<\/li>\n<li><strong>Export the full list<\/strong> (Export button, top right) and compare it against your sitemap. Any published post that appears in the sitemap but <em>not<\/em> in the internal links report is effectively orphaned in Google&#8217;s view of your site.<\/li>\n<li><strong>Click any URL<\/strong> to see which pages link to it \u2014 useful when you want to know <em>where<\/em> a page&#8217;s equity comes from.<\/li>\n<\/ol>\n<p>The limits: the report only counts links Google has crawled, updates on Google&#8217;s schedule rather than yours, and won&#8217;t flag broken links at all. It&#8217;s a great free snapshot, not a complete audit.<\/p>\n<h2>Method 2: Crawl the site with Screaming Frog (free up to 500 URLs)<\/h2>\n<p>Screaming Frog&#8217;s SEO Spider is the standard desktop crawler, and the free tier handles up to 500 URLs \u2014 enough for most blogs. Point it at your homepage, let it crawl, and three views do most of the work:<\/p>\n<ul>\n<li><strong>Crawl Depth<\/strong> (in the Site Structure tab on the right): shows how many clicks each page sits from the start URL. Anything at depth 4+ is a candidate for new links from shallower pages.<\/li>\n<li><strong>Inlinks count<\/strong> (add the &#8220;Unique Inlinks&#8221; column in the Internal tab): sort ascending and the top of the list is your orphan-and-nearly-orphan report. Pages with 0\u20132 inlinks need attention.<\/li>\n<li><strong>Response Codes \u2192 Client Error (4xx)<\/strong>: every broken internal link, with an &#8220;Inlinks&#8221; panel showing exactly which page and anchor text produced it. Fix these first \u2014 they&#8217;re pure loss.<\/li>\n<\/ul>\n<p>The paid version adds scheduling and bigger crawls, but for a periodic manual audit the free tier is genuinely enough.<\/p>\n<h2>Method 3: Quick checks with the site: operator<\/h2>\n<p>Two search tricks that cost nothing and take seconds:<\/p>\n<ul>\n<li><code>site:yourdomain.com \"exact phrase from a post\"<\/code> \u2014 confirms whether a page is indexed at all before you worry about its links.<\/li>\n<li><code>site:yourdomain.com intext:\"anchor text\"<\/code> \u2014 a rough way to find which of your pages mention a phrase, i.e. candidate spots to add a contextual link toward the page that covers that topic.<\/li>\n<\/ul>\n<p>These are approximations \u2014 Google&#8217;s operators are increasingly loose \u2014 but for spotting &#8220;I&#8217;ve written about this five times and never linked any of them together&#8221;, they&#8217;re surprisingly effective.<\/p>\n<h2>Method 4: Check from inside WordPress with a plugin<\/h2>\n<p>Crawlers see your site from the outside; a plugin sees the actual post content in the database, which makes it the most convenient option for ongoing monitoring rather than one-off audits. A good internal-linking plugin will report orphaned posts, broken internal links, and per-post inlink counts right in the dashboard, and let you fix issues from the same screen instead of bouncing between a crawl export and the editor.<\/p>\n<p>Full disclosure: <a href=\"https:\/\/jnkplugins.com\/jnk-linkweave\/\">JnK Linkweave<\/a> is our own plugin \u2014 the free core on WordPress.org includes an orphaned-content report, a broken-link checker, and per-post link counts, because those are exactly the checks we kept running by hand. Internal Link Juicer and Link Whisper offer reporting along similar lines; our <a href=\"https:\/\/jnkplugins.com\/blog\/best-wordpress-internal-linking-plugins\/\">plugin comparison<\/a> goes through the whole field if you want to weigh options.<\/p>\n<h2>What &#8220;good&#8221; looks like<\/h2>\n<p>Numbers without a benchmark are just numbers. The targets we aim for:<\/p>\n<table>\n<thead>\n<tr>\n<th>Check<\/th>\n<th>Healthy target<\/th>\n<th>Red flag<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Inlinks per published post<\/td>\n<td>3 or more contextual links<\/td>\n<td>0\u20131 (orphaned or nearly)<\/td>\n<\/tr>\n<tr>\n<td>Broken internal links<\/td>\n<td>Zero<\/td>\n<td>Any \u2014 they only accumulate<\/td>\n<\/tr>\n<tr>\n<td>Click depth<\/td>\n<td>Everything within 3 clicks of home<\/td>\n<td>Content at depth 4+<\/td>\n<\/tr>\n<tr>\n<td>Most-linked pages<\/td>\n<td>Your pillar\/cornerstone content<\/td>\n<td>Utility pages (contact, legal, archives)<\/td>\n<\/tr>\n<tr>\n<td>Anchor text<\/td>\n<td>Descriptive and varied<\/td>\n<td>Dozens of identical exact-match anchors<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Two of these deserve their own deep dives: we&#8217;ve written a full walkthrough on <a href=\"https:\/\/jnkplugins.com\/blog\/find-orphaned-pages-wordpress\/\">finding orphaned pages<\/a> and another on <a href=\"https:\/\/jnkplugins.com\/blog\/find-fix-broken-links-wordpress\/\">finding and fixing broken links<\/a> \u2014 both expand the quick checks above into complete workflows.<\/p>\n<h2>A simple recurring workflow<\/h2>\n<p>An audit you run once is a snapshot; linking debt comes back the moment you resume publishing. The cadence that works for us:<\/p>\n<ol>\n<li><strong>Monthly (15 minutes):<\/strong> glance at the Search Console Links report; fix anything with zero inlinks; spot-check the top-linked list still makes sense.<\/li>\n<li><strong>Quarterly (an afternoon):<\/strong> full crawl, fix all 4xx internal links, pull the low-inlink list, and add contextual links from your highest-traffic pages down to the neglected ones.<\/li>\n<li><strong>On every publish:<\/strong> add two or three links <em>from<\/em> existing related posts <em>to<\/em> the new one \u2014 not just from the new post outward. This is the habit that prevents orphans from existing in the first place.<\/li>\n<\/ol>\n<p>The whole point of checking internal links is to make the fixes boring and small. Caught monthly, it&#8217;s a coffee-break task. Discovered after three years, it&#8217;s a migration-sized project.<\/p>\n<h2>Frequently asked questions<\/h2>\n<h3>How do I check internal links in WordPress for free?<\/h3>\n<p>Use Google Search Console&#8217;s Links report for a quick inlink count per page, and Screaming Frog&#8217;s free tier (up to 500 URLs) for click depth and broken links. Free WordPress plugins can run the same checks from inside the dashboard on an ongoing basis.<\/p>\n<h3>How many internal links should each post have?<\/h3>\n<p>As a baseline, every published post should receive at least three contextual internal links from other pages, and your most important pages should receive the most. There is no fixed upper limit \u2014 links should exist wherever they genuinely help a reader move to related content.<\/p>\n<h3>Do broken internal links hurt SEO?<\/h3>\n<p>Yes. Broken internal links waste crawl budget, dead-end users, and stop link equity from flowing to the target page. They accumulate silently as slugs change and posts get deleted, which is why a recurring check matters more than a one-off cleanup.<\/p>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"How do I check internal links in WordPress for free?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Use Google Search Console's Links report for a quick inlink count per page, and Screaming Frog's free tier (up to 500 URLs) for click depth and broken links. Free WordPress plugins can run the same checks from inside the dashboard on an ongoing basis.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"How many internal links should each post have?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"As a baseline, every published post should receive at least three contextual internal links from other pages, and your most important pages should receive the most. There is no fixed upper limit \u2014 links should exist wherever they genuinely help a reader move to related content.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Do broken internal links hurt SEO?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Yes. Broken internal links waste crawl budget, dead-end users, and stop link equity from flowing to the target page. They accumulate silently as slugs change and posts get deleted, which is why a recurring check matters more than a one-off cleanup.\"\n      }\n    }\n  ]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Every WordPress site quietly accumulates internal-linking debt. Posts get published in a hurry without a single link pointing to them. Old links break when slugs change. \u2026<\/p>\n","protected":false},"author":1,"featured_media":208,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[],"class_list":["post-207","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-seo"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Check Internal Links in WordPress: Free Tools - JnK Plugins Blog<\/title>\n<meta name=\"description\" content=\"Find orphaned posts, broken links and weak anchor spots with Search Console, Screaming Frog and free plugins \u2014 plus the benchmarks that define healthy.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Check Internal Links in WordPress: Free Tools - JnK Plugins Blog\" \/>\n<meta property=\"og:description\" content=\"Find orphaned posts, broken links and weak anchor spots with Search Console, Screaming Frog and free plugins \u2014 plus the benchmarks that define healthy.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/\" \/>\n<meta property=\"og:site_name\" content=\"JnK Plugins Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-30T02:36:56+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-03T13:43:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/jnkplugins.com\/blog\/wp-content\/uploads\/2026\/07\/internal-link-checker.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Suresh K Meena\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Suresh K Meena\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/\"},\"author\":{\"name\":\"Suresh K Meena\",\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/#\\\/schema\\\/person\\\/601d025989fe7e0c285dd7fff36d9feb\"},\"headline\":\"How to Check Internal Links in WordPress (Free Tools and Fixes)\",\"datePublished\":\"2026-07-30T02:36:56+00:00\",\"dateModified\":\"2026-08-03T13:43:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/\"},\"wordCount\":1260,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/internal-link-checker.png\",\"articleSection\":[\"SEO\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/\",\"url\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/\",\"name\":\"Check Internal Links in WordPress: Free Tools - JnK Plugins Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/internal-link-checker.png\",\"datePublished\":\"2026-07-30T02:36:56+00:00\",\"dateModified\":\"2026-08-03T13:43:11+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/#\\\/schema\\\/person\\\/601d025989fe7e0c285dd7fff36d9feb\"},\"description\":\"Find orphaned posts, broken links and weak anchor spots with Search Console, Screaming Frog and free plugins \u2014 plus the benchmarks that define healthy.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/#primaryimage\",\"url\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/internal-link-checker.png\",\"contentUrl\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/internal-link-checker.png\",\"width\":1200,\"height\":630,\"caption\":\"Featured card: how to check internal links in WordPress\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/internal-link-checker-wordpress\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Check Internal Links in WordPress (Free Tools and Fixes)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/\",\"name\":\"JnK Plugins Blog\",\"description\":\"Guides, comparisons, and tutorials for our WordPress plugins\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/#\\\/schema\\\/person\\\/601d025989fe7e0c285dd7fff36d9feb\",\"name\":\"Suresh K Meena\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a4697e28623a48b2ee5ce631fb355d9e2dcc08a7ffb793cc5dd2885fe53dc4b2?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a4697e28623a48b2ee5ce631fb355d9e2dcc08a7ffb793cc5dd2885fe53dc4b2?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a4697e28623a48b2ee5ce631fb355d9e2dcc08a7ffb793cc5dd2885fe53dc4b2?s=96&d=mm&r=g\",\"caption\":\"Suresh K Meena\"},\"description\":\"Suresh has been building web apps for over 15 years and is the founder of JnK Plugins, where he makes honest, no-bloat WordPress tools that keep your data in your own hands. Away from the keyboard he is usually at a chessboard, thinking a few moves ahead \u2014 and he is always ready to learn something new.\",\"sameAs\":[\"https:\\\/\\\/jnkplugins.com\"],\"url\":\"https:\\\/\\\/jnkplugins.com\\\/blog\\\/author\\\/suresh\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Check Internal Links in WordPress: Free Tools - JnK Plugins Blog","description":"Find orphaned posts, broken links and weak anchor spots with Search Console, Screaming Frog and free plugins \u2014 plus the benchmarks that define healthy.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/","og_locale":"en_US","og_type":"article","og_title":"Check Internal Links in WordPress: Free Tools - JnK Plugins Blog","og_description":"Find orphaned posts, broken links and weak anchor spots with Search Console, Screaming Frog and free plugins \u2014 plus the benchmarks that define healthy.","og_url":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/","og_site_name":"JnK Plugins Blog","article_published_time":"2026-07-30T02:36:56+00:00","article_modified_time":"2026-08-03T13:43:11+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/jnkplugins.com\/blog\/wp-content\/uploads\/2026\/07\/internal-link-checker.png","type":"image\/png"}],"author":"Suresh K Meena","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Suresh K Meena","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/#article","isPartOf":{"@id":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/"},"author":{"name":"Suresh K Meena","@id":"https:\/\/jnkplugins.com\/blog\/#\/schema\/person\/601d025989fe7e0c285dd7fff36d9feb"},"headline":"How to Check Internal Links in WordPress (Free Tools and Fixes)","datePublished":"2026-07-30T02:36:56+00:00","dateModified":"2026-08-03T13:43:11+00:00","mainEntityOfPage":{"@id":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/"},"wordCount":1260,"commentCount":0,"image":{"@id":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/#primaryimage"},"thumbnailUrl":"https:\/\/jnkplugins.com\/blog\/wp-content\/uploads\/2026\/07\/internal-link-checker.png","articleSection":["SEO"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/","url":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/","name":"Check Internal Links in WordPress: Free Tools - JnK Plugins Blog","isPartOf":{"@id":"https:\/\/jnkplugins.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/#primaryimage"},"image":{"@id":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/#primaryimage"},"thumbnailUrl":"https:\/\/jnkplugins.com\/blog\/wp-content\/uploads\/2026\/07\/internal-link-checker.png","datePublished":"2026-07-30T02:36:56+00:00","dateModified":"2026-08-03T13:43:11+00:00","author":{"@id":"https:\/\/jnkplugins.com\/blog\/#\/schema\/person\/601d025989fe7e0c285dd7fff36d9feb"},"description":"Find orphaned posts, broken links and weak anchor spots with Search Console, Screaming Frog and free plugins \u2014 plus the benchmarks that define healthy.","breadcrumb":{"@id":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/#primaryimage","url":"https:\/\/jnkplugins.com\/blog\/wp-content\/uploads\/2026\/07\/internal-link-checker.png","contentUrl":"https:\/\/jnkplugins.com\/blog\/wp-content\/uploads\/2026\/07\/internal-link-checker.png","width":1200,"height":630,"caption":"Featured card: how to check internal links in WordPress"},{"@type":"BreadcrumbList","@id":"https:\/\/jnkplugins.com\/blog\/internal-link-checker-wordpress\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jnkplugins.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Check Internal Links in WordPress (Free Tools and Fixes)"}]},{"@type":"WebSite","@id":"https:\/\/jnkplugins.com\/blog\/#website","url":"https:\/\/jnkplugins.com\/blog\/","name":"JnK Plugins Blog","description":"Guides, comparisons, and tutorials for our WordPress plugins","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jnkplugins.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/jnkplugins.com\/blog\/#\/schema\/person\/601d025989fe7e0c285dd7fff36d9feb","name":"Suresh K Meena","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/a4697e28623a48b2ee5ce631fb355d9e2dcc08a7ffb793cc5dd2885fe53dc4b2?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/a4697e28623a48b2ee5ce631fb355d9e2dcc08a7ffb793cc5dd2885fe53dc4b2?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a4697e28623a48b2ee5ce631fb355d9e2dcc08a7ffb793cc5dd2885fe53dc4b2?s=96&d=mm&r=g","caption":"Suresh K Meena"},"description":"Suresh has been building web apps for over 15 years and is the founder of JnK Plugins, where he makes honest, no-bloat WordPress tools that keep your data in your own hands. Away from the keyboard he is usually at a chessboard, thinking a few moves ahead \u2014 and he is always ready to learn something new.","sameAs":["https:\/\/jnkplugins.com"],"url":"https:\/\/jnkplugins.com\/blog\/author\/suresh\/"}]}},"_links":{"self":[{"href":"https:\/\/jnkplugins.com\/blog\/wp-json\/wp\/v2\/posts\/207","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jnkplugins.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jnkplugins.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jnkplugins.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jnkplugins.com\/blog\/wp-json\/wp\/v2\/comments?post=207"}],"version-history":[{"count":1,"href":"https:\/\/jnkplugins.com\/blog\/wp-json\/wp\/v2\/posts\/207\/revisions"}],"predecessor-version":[{"id":301,"href":"https:\/\/jnkplugins.com\/blog\/wp-json\/wp\/v2\/posts\/207\/revisions\/301"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jnkplugins.com\/blog\/wp-json\/wp\/v2\/media\/208"}],"wp:attachment":[{"href":"https:\/\/jnkplugins.com\/blog\/wp-json\/wp\/v2\/media?parent=207"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jnkplugins.com\/blog\/wp-json\/wp\/v2\/categories?post=207"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jnkplugins.com\/blog\/wp-json\/wp\/v2\/tags?post=207"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}