A useful broken-link audit does more than list error codes. Crawl the public site, confirm each result directly, decide whether the missing destination was moved, replaced, intentionally removed, or mistyped, and then verify both the repair and the pages that link to it.
Define the audit boundary
Start with the canonical production domain and include navigation, footer links, article links, images, downloads, forms, and structured-data URLs that users or search engines can reach. Exclude authenticated tools and private environments unless they are explicitly in scope. Save the crawl time, starting URL, user agent, and redirect limit so a future run can reproduce the check.
Collect status codes and the source page for every URL. Recheck suspicious results in a browser or a direct request because temporary network errors, bot protection, and rate limits are not proof that a page is permanently broken. Record redirect chains as well as final destinations.
Classify each result
Use four buckets: incorrect source link, moved content, intentionally removed content, and transient or access-limited result. A true missing page can return a 404 or 410. A page that displays an error while returning a successful status may be a soft 404; Google's crawling-error guidance recommends returning an appropriate not-found status for content that does not exist.
Do not redirect every missing URL to the home page. If a clear replacement exists, update internal links to the final URL and add a permanent server redirect for old external or bookmarked paths. Google's redirect documentation distinguishes permanent redirects such as 301 and 308 from temporary redirects such as 302 and 307. If no equivalent content exists, keep a genuine not-found response and provide a helpful custom error page with navigation or search.
Repair the source and destination
For a typo or outdated internal link, correct the link at its source. For renamed content, link directly to the canonical replacement so users do not traverse a redirect chain. For external links, confirm that the destination belongs to the expected organization before substituting a new URL. Remove a link only when it no longer serves the reader.
Check templates separately. A broken footer, header, or reusable component can appear across the whole site even though the underlying mistake exists in one file or content record. Repair the shared source and then sample several page types.
Verify after deployment
Crawl the changed URLs again from the production site. Confirm that corrected links return the intended final status and content, that permanent redirects end at the right canonical page, and that intentional 404 pages still return a not-found code. Test with redirects enabled and disabled to expose loops or long chains.
Finally, check analytics or search-console reports for high-traffic not-found URLs and repeat the audit on a schedule appropriate to the site's publishing pace. Keep the before-and-after list as evidence; a zero-error tool summary is useful only when the crawl actually covered the public paths that matter.
Sources
- Troubleshoot crawling errors — Google Search Central
- Redirects and Google Search — Google Search Central