Broken internal links: find every 404 your site links to
Find broken links by crawling from your homepage plus your sitemap, then fix each link at its source or 301 the URL when other sites still link to it.
LLaunchScaler·Published ·9 min read
A broken links checker requests every link on your pages and reports the ones that answer with an error status, usually 404. To find every 404 your own site links to, crawl from the homepage and add your sitemap URLs to the crawl, then decide per link: fix the link when it sits on a page you control, and add a 301 redirect only when other sites or old bookmarks still point at the dead URL.
The tools differ mainly in reach. A single-page check is instant and needs nothing installed, while a crawler follows links across the whole site. This guide compares the free options, gives the crawl method step by step, and ends with the fix-or-redirect decision for each kind of broken link.
Do broken internal links hurt SEO?
A 404 by itself does not hurt the rest of your site. Google's own answer is that URLs returning 404 do not affect how your other URLs perform in search. The cost of a broken internal link is where it sends people: a visitor hits a dead end, and every crawler that follows it spends a request on nothing.
Google's documentation on status codes is specific about what happens to the dead URL itself. Google does not use content from URLs that return a 4xx status, and if a URL that was previously indexed starts returning 4xx, the indexing pipeline removes it from the index. All 4xx errors except 429 are treated the same, so a 410 does nothing a 404 would not. (A 429 counts as a server overload signal.)
That makes internal links to 404s a double loss when the page used to rank: the URL leaves the index, and the links you built to it now point at nothing. The guide to Not found (404) in Search Console covers the report side of the same problem.
Do broken links cost you visibility in AI answers?
They waste more of an AI crawler's requests than Googlebot's. Vercel's December 2024 study of AI crawler traffic found that ChatGPT's crawler spent 34.82% of its fetches on 404 pages and Claude's 34.16%, against 8.22% for Googlebot. Every one of those fetches is a request that did not reach a page you want cited.
The same study found that none of the major AI crawlers render JavaScript, and recommended keeping redirects in order, sitemaps current and URL patterns consistent to cut down those 404s. Broken links do not stop a site being cited on their own, but a site that sends AI crawlers to dead URLs gives them fewer live pages per visit. The goes further into how those crawlers handle dead and redirected URLs.
Questions, answered
What people ask about this
01
What is the best free broken links checker?
For a quick check with nothing to install, LaunchScaler's free scan tests a sample of the internal links on the page you give it. For a full-site crawl, Screaming Frog's SEO Spider is free up to 500 URLs, and the W3C Link Checker runs online with a recursive option.
Pick by reach and effort. A check of one page answers "is my homepage linking anywhere dead?" in a minute. A crawler answers "where on my site is every broken link?" and needs a download or an account. The table compares five free options, checked on each tool's own site in September 2026.
Tool
What it checks
Cost
Needs
1. LaunchScaler free scan
A sample of the internal links on the page you scan, plus a sample of your sitemap URLs, inside a 156-check readiness scan
Free
A URL; no account
2. Screaming Frog SEO Spider
Every URL it can crawl from your start URL, with the pages that link to each broken one
Free up to 500 URLs; paid licence £199 a year
A desktop install
3. W3C Link Checker
Links, anchors and referenced objects on a page, or recursively across a site to a depth you set
Free
A browser
4. Google Search Console
404s Google found while crawling, including URLs linked from other sites
Free
A verified property
5. Ahrefs Webmaster Tools
Internal and external broken links in its Site Audit
Free; 5,000 crawl credits a month per project
A verified site
1. LaunchScaler: the fastest first check, with nothing to install
LaunchScaler's free scan leads this list for the first check before a launch: you paste a URL, and with no account and no download it requests a sample of the internal links on that page and reports any that resolve to a 4xx status. A second check samples the URLs in your sitemap and flags dead ones, because those waste AI crawlers' requests too. The same scan runs 156 checks across 6 of its 7 categories, so the broken-link result arrives next to redirects, soft 404s and the rest of your launch readiness.
It checks the page you scan and a sample of your sitemap, not every page of your site. For a whole-site sweep, run one of the crawlers below after it.
2. Screaming Frog SEO Spider: the full-site crawl
The SEO Spider is a desktop crawler that is free for up to 500 URLs, with a £199 yearly licence above that. It finds broken links, errors and redirects across everything it can reach from your start URL, and it shows which pages link to each broken URL, which is the part you need to fix them.
3. W3C Link Checker: free and in the browser
The W3C Link Checker at validator.w3.org/checklink checks the links, anchors and referenced objects on a page, and can check linked documents recursively to a depth you set. It suits a small site where you want a free result without installing anything.
4. Google Search Console: the 404s Google actually hit
Search Console does not crawl on request. Its page indexing report lists URLs that returned 404 when Google crawled them, including dead URLs that other sites link to, which a crawl of your own pages never finds.
5. Ahrefs Webmaster Tools: a scheduled audit for verified sites
Ahrefs gives verified site owners free access to its Site Audit, which reports broken internal and external links, with 5,000 crawl credits a month per project.
How do you find every broken link on your site?
Crawl from the homepage so you follow the links visitors follow, add your sitemap so pages nothing links to are covered, then work from the list of broken URLs back to the pages that link to them. The steps below use Screaming Frog's free version; other crawlers have the same controls under different names.
In the SEO Spider, turn on Configuration > Spider > Crawl > Crawl Linked XML Sitemaps, and choose Auto Discover XML Sitemaps via robots.txt, or paste your sitemap URL under Crawl These Sitemaps. The SEO Spider does not crawl XML sitemaps by default.
Enter your homepage URL and click Start. Crawl the production site, not staging, because staging links often differ.
When the crawl finishes, run Crawl Analysis so the sitemap filters populate.
Open the Response Codes tab and apply the Client Error (4xx) filter. This is your list of broken URLs.
Click a broken URL and open the Inlinks tab at the bottom to see every page that links to it, with the anchor text.
Export the lot with Bulk Export > Response Codes > Client Error (4xx) Inlinks. Each row is one source page and one dead link, which is your fix list.
Open Search Console's page indexing report and the Not found (404) row. Add any URL there that you did not already have, because those are usually dead URLs linked from other sites.
Filter the same crawl for 3xx responses. Internal links that pass through a redirect are not broken, but they are worth pointing at the final URL at the same time.
Include links in navigation, footers and templates. One dead link in a shared footer appears on every page, so fixing that one template clears hundreds of rows.
Should you fix the broken link or add a redirect?
Fix the link when the broken link is on a page you control; it is one edit and costs nothing. Add a 301 redirect when the content moved and people or sites you do not control still link to the old URL. When the content is gone for good with no replacement, remove your links to it and let the URL return 404 or 410.
The situation
What to do
Why
Your own link has a typo or an old slug
Edit the link to the correct URL
One change fixes it for visitors and crawlers, with no extra hop
You renamed or moved a page
Update your internal links and 301 the old URL to the new one
Your links go direct; outside links and bookmarks still arrive
Another site links to a misspelled URL on your site
301 the misspelled URL to the right page
Google's own advice for typo links: capture the traffic that link was meant to send
The page is gone and nothing replaces it
Remove or replace your links; let the URL return 404 or 410
Google prefers a real 404 or 410 to a page that pretends to exist
Every unknown URL redirects to your homepage
Stop the catch-all redirect; return 404
Google says this pattern can have negative effects on how it understands and indexes your site
Internal links go through one or more redirects
Point them at the final URL
Saves a hop on every visit; Googlebot follows at most 10
Google calls a 301 or 308 a strong signal that the redirect target should be processed, so a redirect does move Google's attention to the new URL. It is still no substitute for fixing your own links: a redirect adds a hop on every visit, and chains of redirects are where hop limits and slow pages start. The guide to redirect chains and loops shows how to collapse them to one step.
Do not redirect every 404 to the homepage to make the report look clean. Google's advice is that a URL whose content is gone for good should return 404 or 410, and it warns that sending unknown URLs to the homepage can have negative effects on how it understands and indexes your site.
How do you stop links breaking again?
Broken internal links usually appear the day a page is renamed, moved or deleted. Tie the link check to those changes and the list stays short.
When you change a slug, add the 301 from the old URL in the same release, then search your codebase or CMS for the old path and update every link.
Before deleting a page, check its inlinks in your crawler, remove or replace each one, and decide whether a 301 target exists.
Keep your sitemap generated from your live routes rather than edited by hand, so it never lists a deleted page.
Re-crawl after every release that touches navigation, templates or URLs, and at least monthly otherwise.
Check Search Console's Not found (404) row after large changes. Google's help notes that the row lists URLs that returned 404 over the past month.
Check your links in one minute before you launch
Before you install a crawler, run the free scan on your homepage or any landing page. LaunchScaler requests a sample of the internal links in that page's HTML and reports each one that resolves to a 4xx status, flags dead URLs in a sample of your sitemap, and checks whether internal links pass through redirects. It needs only the URL, no account, and runs the same 156 checks across 6 of 7 categories that every scan gets, so the link results come with the rest of what a launch needs. Fix what it flags, then crawl the full site with one of the tools above.
A 404 on its own does not hurt your other pages, according to Google. Internal links to 404s still send visitors and crawlers to dead ends, and Google removes a previously indexed URL from its index once it returns a 4xx status.
03
Should I redirect a 404 or fix the link?
Fix the link when it is on a page you control. Add a 301 redirect when the content moved and other sites, emails or bookmarks still point at the old URL. If the content is gone with no replacement, remove your links and let the URL return 404 or 410.
04
Is a 410 better than a 404 for SEO?
No. Google says all 4xx errors except 429 are treated the same, so 404 and 410 both lead to the URL being dropped from the index.
05
How often should I check for broken links?
After every release that renames, moves or deletes pages, and on a schedule for the rest. Search Console's page indexing report also lists 404s Google found, including ones linked from other sites.
Consent Mode v2 sends ad_storage, analytics_storage, ad_user_data and ad_personalization. Set all four to denied before tags load, then update on consent.