How to Find and Fix Broken Links
Broken links are URLs on your site that no longer resolve: 404 not found, server errors, timeouts, or redirects that go nowhere. They frustrate visitors, waste crawl budget, and can quietly erode trust. This guide shows how to find them across a site, prioritize the fixes, and keep new ones from appearing.
If you want an automated crawl, use the Dead Link Checker. It follows the pages on a site, checks each link, and reports HTTP status, redirect chains and response times. Up to 100 pages and 10,000 unique links per run.
Internal, external and backlink broken links
Broken links fall into three groups, and each needs a different fix:
- Internal links. Links from your own pages to other pages on your site. These are the ones you can fix directly, and they are the most important: they waste crawl budget, confuse visitors and break the path between your pages.
- External links. Links from your pages to other websites. You cannot fix the other site, so your job is to replace the link with a working source or remove it.
- Backlinks (broken inbound). Links from other sites pointing at a page you deleted or moved. You cannot edit the other site, so the fix is to keep a 301 redirect in place at the old address so the link still resolves.
Backlinks vs internal links
Internal broken links and broken backlinks look the same in a crawl report — both produce a 404 — but you handle them differently:
| Internal broken link | Broken backlink | |
|---|---|---|
| Source | A page you control | Another website you do not control |
| Fix | Update or remove the link on your page | Keep a 301 redirect at the old URL |
| Priority | High — you control both ends | High if the referring page sends traffic or authority |
| Risk of ignoring | Stranded pages, wasted crawl budget | Lost referral traffic and link equity |
You find internal broken links by crawling your own site. You find broken backlinks by checking which external domains link to URLs that return 404 on your site — your crawl tool flags inbound links whose target is dead, or you can cross-reference your server logs / search console "not found" report with referring domains.
Never delete a page that still earns backlinks without a 301 redirect in place; the redirect preserves the value those external links pass.
The 301-or-restore decision tree
When a link is broken, work through these four questions before you fix anything:
- Was the page moved to a new address? If yes, add a 301 redirect from the old URL to the new one, then update the internal link so it points straight at the final address.
- Was the page deleted and is there a close replacement? If yes, redirect the old URL to the replacement or repoint the link at it.
- Is the page gone with no useful replacement? If yes, remove the link or replace it with a better related page. A redirect to the homepage is rarely the right answer.
- Is the link external and the other site is gone? If yes, replace it with a working source or delete it. Do not leave a dead reference.
Why broken links matter
- User experience. A visitor who hits a 404 mid-task often leaves.
- Crawl budget. Search engines spend time on dead ends instead of fresh content.
- Link equity. Internal links to dead pages waste the authority those links could pass.
- Trust. A site with many broken links looks unmaintained.
Broken links are rarely urgent individually, but they accumulate. A quarterly audit keeps them under control.
What counts as broken
The Dead Link Checker groups results into four buckets:
- OK (200). The link works. Nothing to do.
- Dead (404, 410, 5xx). The page is gone or the server errored.
- Redirect (301, 302, 307, 308). The address sends the visitor elsewhere.
- Timeout. No answer within 6 seconds.
A timeout is not always a dead link; the server may just be slow. Open it in a browser before removing it.
Step 1: Crawl your site
Run the Dead Link Checker on your homepage or a key section. It follows same-origin links and checks external ones without crawling them. Results stream in as pages are scanned, so you can start reviewing before the crawl finishes.
For large sites, crawl section by section rather than the whole domain at once.
Broken link checker for large websites
A site-wide link checker works fine for a few hundred pages, but large sites need a different approach:
- Crawl in sections. Split by subfolder, language, or content type (for example
/blog,/docs,/products) so each run stays within page and link limits and finishes in a reasonable time. - Budget your crawl. Large sites can have tens of thousands of unique links. Prioritize high-traffic and high-depth sections first; a broken link in navigation or on a landing page matters more than one in an archived post.
- Sample when needed. If a full crawl is too slow, check a representative sample of each section, then expand to the rest across several runs.
- Watch timeouts. Large crawls take longer and can trigger rate limiting or slow server responses. Space runs out and retry timeouts before marking a link dead.
- Track state between runs. Export CSV after each section and keep a running list of dead URLs, redirects to fix, and pages already audited, so you do not re-check the same pages.
Even on a large site, a quarterly section-by-section audit keeps broken links under control without a single massive run.
Step 2: Filter and sort
Once the crawl completes:
- Filter to Dead first. These are the clear problems.
- Then review Redirect results. A redirect still works, but pointing the link straight at the final address is faster and cleaner.
- Ignore OK unless you are auditing redirect chains.
Export the visible results as CSV for tracking.
Step 3: Prioritize fixes
Not every broken link deserves immediate attention. Prioritize by:
- Traffic. Fix broken links on your most visited pages first.
- Depth. A broken link in the main navigation matters more than one buried in an old post.
- External vs internal. Internal broken links are yours to fix; external ones depend on the other site.
- Intent. A broken "Buy" link costs more than a broken "About us" link.
Step 4: Fix by cause
Most broken links come from a small set of causes:
- Page deleted or moved. Add a 301 redirect from the old address to the new one, or to the closest useful page. Then update the links so they point straight to the final address.
- Typo in the URL. Correct the link.
- Site restructure. Update links to match the new paths (for example
/blog/post→/articles/post). - External site gone. Replace the link with a working source or remove it.
- File removed (PDF, image). Re-upload or remove the reference.
- http:// no longer works. Update to https://.
- Login-gated page. Open in a browser; if it works there, ignore the 403/401.
Step 5: Handle redirects
Redirects keep links working but add latency. For internal links, update them to point directly at the final URL. For external inbound links you cannot change, keep the redirect in place.
Step 6: Re-crawl and confirm
After fixing, run the crawl again on the same starting page. Confirm the dead count dropped and no new broken links appeared. Keep the CSV for your records.
Preventing new broken links
- Redirect on rename. Whenever you move or rename a page, add a 301 before publishing.
- Check links before publishing. Run a quick check on new pages.
- Monitor external links. They break over time; a quarterly audit catches them.
- Use relative or root-relative internal links. They survive domain changes.
- Keep a sitemap. It helps you notice when URLs disappear.
A 10-minute audit routine
- Crawl your homepage (5 minutes).
- Filter to Dead + Redirect (1 minute).
- Fix the top 5 by traffic (3 minutes).
- Re-crawl to confirm (1 minute).
Where to go next
Run the Dead Link Checker on your homepage now. Then read How to Fix Duplicate URLs and Canonical Issues to clean up the URL structure, 301 vs 302 Redirects Explained for the redirect side, and XML Sitemaps: What They Do and Do Not Do for the sitemap side. The on-page SEO checklist covers the broader review. Google's documentation on 404 errors covers what search engines do with broken pages.
Related guides
Try it on your own content
The Dead Link Checker checks content against these practices in seconds. Free and no sign-up; see the tool page for how analysis works.