What broken-link audits actually find
We've been auditing websites for clients for over a decade. The same five categories of broken links come up over and over again, regardless of platform, industry, or site age. Knowing what to expect makes triage faster — instead of treating every dead link as a separate problem, you can group them into patterns and fix them in batches.
1. Old blog posts pointing to news articles that have since 404'd
This is the single most common pattern we see, especially on sites that have been publishing content for more than a few years. You wrote a post in 2019 citing an interesting study or industry article, the source site has since redesigned (or gone offline), and now your post has a dead reference. These rarely hurt rankings on their own, but they erode trust with returning readers and they pile up faster than most teams realise. A 5-year-old blog with 200 posts will typically have between 30 and 80 of these.
Fix priority: low to medium. Group them by topic and update the highest-traffic posts first. For posts that get little traffic, removing the link (and adapting the sentence) is usually a better use of time than chasing down a replacement source.
2. Footer and sidebar links to social profiles or product pages that have moved
Sites change their LinkedIn handle, retire a Facebook page, swap social platforms entirely, or rename a flagship product. The footer or sidebar links don't get updated because nobody looks at them. We've seen production sites where the "Follow us on Twitter" link in the global footer pointed to a 404 for over two years.
Fix priority: high. These links appear on every page of the site, so a single broken footer link is hundreds or thousands of broken links by URL count, and search engines see it on every crawl. Open the footer once, fix it once, done.
3. Internal links to product or service pages that got renamed without redirects
The most damaging type from an SEO perspective. The marketing team rewrote your "/services/web-design/" page as "/services/website-design/" and forgot to set a 301 redirect from the old URL. Now every internal link, every external backlink, and every Google index entry pointing at the old URL is dead. Link equity that took years to accumulate gets dropped on the floor.
Fix priority: critical. Set up 301 redirects from old to new at the server or platform level — don't try to chase down every internal link individually. Then run a scan to make sure the redirect is doing what you think it's doing (some platforms set up redirects that go to the homepage instead of the new page).
4. PDFs and resource downloads that no longer exist
"Download our 2021 industry report (PDF)" — the PDF is gone. Either it got moved during a CMS migration without keeping the URL stable, or someone deleted it from the media library because they thought it was unused. These break silently and often nobody reports them, since most people who click them just give up rather than emailing the site owner.
Fix priority: medium. If you have the file, re-upload it. If you don't, either replace with an updated version or remove the link and the surrounding promotional text.
5. CMS migration leftovers
Every site migration leaves a tail of broken links — links to old admin URLs, old preview URLs, links that hardcoded the staging domain, image references that pointed to the old CDN, embeds that used the old plugin syntax. These show up most visibly in the first few months after a migration but can persist for years if nobody runs a scan.
Fix priority: high in the first 30 days after migration; medium thereafter.
What broken links actually cost you
Most articles on this topic stop at "broken links are bad for SEO" and move on. That's too vague to be useful. Here's the concrete list of what dead links cost a site, ranked by how much we see each one matter in practice.
Wasted crawl budget
Search engines allocate a finite number of crawls per site per visit. Every time Googlebot follows a link to a 404, that's a request that could have indexed a useful page. On large sites this becomes measurable — your new content can take longer to appear in search results because the crawler is spending its budget on dead pages. Smaller sites are usually under their crawl budget anyway, so this matters less than people claim. But once you're over a few thousand URLs, it's real.
Dropped link equity
A 404 is the end of the line — no link equity flows through it. If you've earned backlinks to a page that's now broken (because you renamed it without a redirect), every one of those backlinks is now wasted. This is the single most damaging cost of broken internal links, and it's invisible until you go looking. The fix is almost always a 301 redirect from the old URL to its closest current equivalent.
User trust
A visitor who clicks a broken link on your site has just learned that your site isn't well maintained. They're less likely to trust your other content, less likely to share it, and more likely to bounce. This is hard to measure but easy to predict: in our experience, the sites that take broken-link maintenance seriously have noticeably better engagement metrics than the sites that don't.
Bounce rate and engagement metrics
Most browsers' back button behaviour means visitors who hit a 404 leave fast — often without exploring other pages. That single-page session counts as a bounce, and your engagement metrics suffer. Google has been increasingly clear that engagement signals influence rankings, so this is more than a UX issue.
How to triage a long list of broken links
The first time you run a thorough scan on a site that hasn't been audited in a while, you'll likely come back with dozens or hundreds of broken links. Working through them in the order they appear is the slowest possible approach. Use this triage framework instead.
Tier 1 — fix this week
- Broken internal links from your top 10 most-trafficked pages.
- Broken footer or sidebar links (because they're on every page).
- Internal links pointing to URLs that have moved without redirects — fix the redirect first, not the individual links.
- Broken links in your main navigation menu.
Tier 2 — fix this month
- Broken external links on pages that bring meaningful traffic (over 100 visits/month).
- Broken internal links from older, indexed pages.
- Broken PDF or download links anywhere on the site.
- Redirect chains (one redirect leading to another) on your top pages.
Tier 3 — fix when you have time
- External links on old blog posts with low traffic.
- Broken links in archived content nobody's reading.
- Edge-case redirect chains that only add 50ms to load time.
Don't fix
- Links to pages that were intentionally removed and have no successor. Remove the link instead of redirecting to a generic page — Google treats "redirect-to-homepage" as a soft 404 and it hurts you more than the original 404 did.
- Links to other sites you no longer want to be associated with. Remove the link entirely.
What this scanner does — and what it doesn't
We get asked this often enough that it's worth being explicit about. This is a single-page scanner, not a full site crawler. Specifically:
- It scans one URL at a time. Point it at any public page and we'll extract every
<a href>on the page and check each one. It will not crawl into the linked pages or follow internal links to scan your whole site. - It uses real HTTP requests. A HEAD request first to save bandwidth, with a GET fallback when servers return 405 (Method Not Allowed) or 0 (no response). This catches a category of broken links that lighter tools miss.
- It caps results at 150 links per page. Most pages have far fewer than that. The cap exists so a single scan doesn't take forever — if you hit it, you've got a structural issue (probably a sitemap or massive footer) that needs a different approach.
- It does not execute JavaScript. If your page injects links via JavaScript after load (common on SPAs and React sites), we won't see those. This is intentional — most search engine crawlers don't execute JS either, so the links we find are the links Google sees.
- It does not check anchor fragments. A link to
/page#sectionis treated the same as a link to/page. Fragment validity is a browser concern, not a server concern. - It does not store your data. Scans are processed in-memory and discarded after the response is returned. We don't keep a database of what you've scanned.
When to run a broken-link check
The right cadence depends on how often your site changes:
- After publishing new content — five minutes after you hit publish, scan the page. This catches typos in URLs you've just pasted in and broken references in things you've embedded.
- After any site redesign or CMS migration — essential. The single biggest cause of broken links is migration without proper redirects. Scan your top 20 pages within 48 hours of the migration going live.
- Monthly for active blogs or content sites — link rot accumulates fastest on sites that link out frequently.
- Quarterly for stable brochure sites — once a quarter is plenty if your content rarely changes.
- Before any link-building outreach — if you're emailing other sites about a resource on your site, make sure that resource and all the links on it are working first.
What to do with the results
Every broken link has three possible fixes. Pick the right one based on what the original link was trying to accomplish.
- Redirect. If the content has moved to a new URL on the same site, set up a 301 redirect from old to new. This preserves any backlink equity and avoids manually updating every reference.
- Replace. If you know the correct destination (and it's a different URL than where the link currently points), edit the link to point to the new URL. Cleaner than a redirect chain and faster for visitors.
- Remove. If the destination genuinely no longer exists and there's no good replacement, remove the link entirely. Adapt the surrounding sentence so it still reads naturally without the link. A removed link is always better than a broken link.
The mistake we see most often is teams that try to redirect everything to the homepage when they can't find a better destination. Google explicitly calls this a "soft 404" pattern and penalises it more than a regular 404. If you can't find a sensible destination, remove the link.
Read more
For deeper guides on specific aspects of link health, the blog covers choosing between 301 and 302 redirects, untangling redirect chains, spotting soft 404 errors, and migrating without losing rankings. There's also a glossary of the terms used in scan results and a reference of common HTTP status codes with what each one usually means in practice.