Technical SEOCrawl Errors & Broken Links

How to Find and Fix 404 Errors Using Google Search Console and Crawlers

A 404 error means a requested URL doesn't exist on your server. Some 404s are harmless — a user mistyped a URL, or a page was deliberately removed with nothing worth replacing it with. Others represent real lost value: a page that used to rank, attract backlinks, or convert traffic, now returning nothing. The work is in telling these two categories apart quickly and systematically rather than guessing. For a deeper look at this, see our guide, Setting Up & Mastering Google Analytics 4.

Find 404s in Google Search Console

Under Indexing → Pages, filter for "Not found (404)" to see every URL Google has crawled and found missing. This report reflects what Googlebot has actually encountered, which makes it a priority list, but it's not exhaustive or fully real-time — it can lag by days and only shows URLs Google has attempted to crawl, missing some broken internal links that Google hasn't discovered yet. For a deeper look at this, see our guide, Finding Quick-Win Keywords: Using Search Console to Prioritize Content Updates.

Run a Full Site Crawl for Broken Internal Links

Search Console shows what Google found broken; it won't necessarily show every internal link on your own site pointing to a dead URL. Run a full crawl with Screaming Frog, Sitebulb, or Ahrefs' Site Audit, filter for 4xx response codes, and cross-reference the "inlinks" report for each broken URL to see exactly which pages on your site are linking to it — this is often a more actionable list than Search Console's report because it tells you precisely where to fix the source link.

Decide: Redirect, Restore, or Leave As-Is

For each 404, ask three questions. Did this page have organic traffic, backlinks, or rankings historically? Check Ahrefs or Search Console's performance data filtered to the specific URL. If yes, either restore equivalent content or 301 redirect to the closest current equivalent page. Does the page still make sense to exist? If content was retired for a legitimate reason (a discontinued product with no replacement), a clean 404 or a redirect to a relevant category page is often correct — don't force a redirect to an unrelated page just to avoid a 404, since Google treats irrelevant "soft" redirects as a quality signal problem.

Prioritize by Impact, Not Volume

A site audit might surface hundreds of 404s; fixing them all with equal urgency wastes time. Sort by historical traffic or backlink count and fix the top 10-20% first — these represent the overwhelming majority of the actual SEO value at stake. Low-value 404s (an old tag archive page with zero historical traffic, for instance) can often be left alone entirely; not every 404 needs a fix.

Check External Links Pointing to 404s Too

Use Ahrefs' or Semrush's backlink reports filtered to your broken URLs to find external sites linking to pages that no longer exist. For high-value backlinks pointing at a 404, a 301 redirect to relevant current content recovers that link equity; for especially valuable relationships, it's also worth emailing the linking site directly to ask them to update the link to the new URL, which preserves full value rather than relying on a redirect hop.

Cross-Check Against Your Analytics Data

Beyond Search Console and crawl tools, check Google Analytics 4 for landing page reports filtered to 404 or error page templates, which reveals how much real user traffic is actually hitting each broken URL right now — sometimes a URL with a modest backlink count still receives meaningful direct or social traffic that a purely link-based audit would undervalue and deprioritize incorrectly.

Build a Recurring Process, Not a One-Time Sweep

404 rates creep back up as content ages, products discontinue, and pages get restructured. Rather than treating this as an annual audit, add a monthly check to your standing SEO workflow: export the current Search Console 404 list, compare it against last month's, and triage only the new additions. This keeps the review fast and manageable instead of facing a backlog of hundreds of accumulated errors once a year.

Document Decisions So Fixes Don't Get Repeated

Keep a running log of 404s you've deliberately decided to leave alone, along with the reasoning, so a future audit (possibly run by someone else on your team) doesn't waste time re-evaluating the same URL from scratch. This small documentation habit compounds in value as your 404 backlog and site history grow over multiple years.