How to find and fix broken links on your website

このコンテンツは英語です。

A broken link is a link that leads nowhere useful, usually because the page has moved, been deleted or never existed. They frustrate visitors, waste the time search engines spend crawling your site, and tend to build up quietly as a site grows. This guide covers why they matter, the quickest ways to find them, and how to fix each kind, including how to set up redirects correctly. It reflects Google Search Central documentation checked in October 2026.

The classic broken link ends in a 404 Not Found response, which means the server is running but the page is not there. But there are several other ways a link can fail. A domain may no longer exist, so the request fails before it reaches any server. A server may be down or too slow, returning a 5xx error or timing out. A page may redirect in a loop, or send visitors through a long chain of redirects before it reaches a destination.

There is also the soft 404, which is easy to miss. This is a page that returns a normal success code but shows an error message or an empty page. Google describes soft 404s as pages where the content suggests an error, and reports them in Search Console. To a visitor they look broken, and to a crawler they send mixed signals.

Links can break on either side. Internal broken links point to pages on your own site and are entirely within your control. External broken links point to other websites, and they break whenever the other site moves or removes content, which is outside your control but still your responsibility to tidy up.

The first reason is the visitor. Someone who clicks a link expecting an answer and lands on an error page has to decide whether to search again, go back or leave. Even a helpful custom error page cannot give them what they came for. On pages that matter, such as pricing, contact details or guides, a broken link can cost you an enquiry.

The second reason is search. Google treats all 4xx errors except 429 in the same way. URLs that are already indexed and return a 4xx status code are removed from the index, so a page that disappears by accident drops out of results. Newly discovered 404 pages are not processed, and crawling of them gradually slows. If your server returns 5xx errors, Google's crawlers slow down temporarily, and if the errors persist, the affected URLs are eventually dropped.

Google says a page is more easily found when it is linked from other pages, so links that fail to resolve also weaken the paths by which both people and crawlers move around your site. Broken links are not usually a reason for a penalty, but they are a sign of neglect that is simple to fix.

The fastest method is a link checker, which crawls a page or a whole site, requests every link it finds and reports the response. Start with your most important pages and work outwards. A good report lists the broken URL, the status code and the page that contains the link, which tells you exactly where to fix it.

Google Search Console is a second source. Its indexing reports show pages that return not found errors, soft 404s and server errors, and they cover URLs that Google has tried to crawl, including old addresses that other sites still link to. Those are especially valuable because the broken link is on someone else's website, so you can only fix it by making the old address work.

Your own records can fill the gaps. Server logs show which missing URLs visitors and bots request most often, and analytics can show landing pages that return an error page. Sort by how often each URL is requested, and fix the busiest first.

  • Run a link checker on key pages, then on the full site
  • Review the not found, soft 404 and server error reports in Search Console
  • Check server logs or analytics for frequently requested URLs that return errors
  • Test links by hand after a redesign, a migration or a change of URL structure
  • Check outbound links to other sites on a regular schedule

Understanding the results

Not every flagged link is truly broken. Some sites block automated requests, so a link checker may receive an error for a page that opens normally for a person. A 429 response means too many requests were sent, which can happen if a checker moves too quickly through links to the same site. Always open a sample of reported links by hand before you make changes.

Pay attention to the type of failure. A 404 or 410 means the page is gone. A redirect means the link works but may be pointing at an old address that should be updated. A timeout or 5xx may be temporary, so recheck it a day later before deciding it is a permanent fault.

Group the problems into three buckets: links you can correct at the source, URLs where the destination should be redirected, and external links that should be replaced or removed. Each bucket has a different fix, as set out in the next sections.

For internal links, the best fix is to edit the link so it points directly to the right page. This beats a redirect because it removes an extra request, keeps the path clear for crawlers and means your site does not depend on old addresses. Use search in your content management system or a search of your files to find every occurrence of the old URL, including navigation menus, footers, sitemaps and related-post blocks.

Check the common slips: a typo in a path, a missing trailing character, a changed capitalisation on a case-sensitive server, a link to the HTTP version when the site uses HTTPS, and a link to a page that was merged into another one. Fix the link text at the same time if the page title has changed, so that the anchor still describes the destination.

For external links, visit the destination. If the content has moved, update the link to the new address. If the page has gone and there is no equivalent, find another reputable source or remove the link and adjust the sentence around it.

Fix 2: Use a redirect when a page has moved

A redirect sends visitors and crawlers from an old address to a new one. Use it when a page has moved or been replaced by a close equivalent, and especially when other websites or bookmarks still point to the old address. Google says permanent redirects tell it that the target should be the canonical URL, and that server-side redirects have the highest chance of being interpreted correctly. Use a 301, or a 308, for a permanent move.

A 302 or 307 is for temporary moves. Google follows them but does not use them to make the target the canonical URL, so the original address may stay in results. If you use a temporary redirect for a permanent change, you are sending the wrong signal. Meta refresh and JavaScript redirects are fallbacks for cases where you cannot change server settings, with JavaScript being the least reliable.

Redirect to the most relevant page, not just the home page. Sending every old address to the home page leaves visitors confused about where the content went. If there is no suitable replacement, it is better to return a genuine 404 or 410 and show a helpful error page.

How to set up redirects

The method depends on how your site is hosted. On an Apache server, a line in the configuration or .htaccess file such as Redirect 301 /old-page /new-page sends requests for the old path to the new one. On nginx, a location block containing return 301 followed by the new address does the same job. Content management systems often offer a redirect setting or plugin, and many hosting dashboards have a redirect manager.

Keep a spreadsheet that maps each old URL to its new URL, and test a sample after you apply the changes. Check that each redirect goes straight to the final page in a single step, because chains and loops slow visitors down and make crawling less efficient. If a destination later changes again, update the original redirect so it points to the latest address instead of adding another hop.

After applying redirects, run a redirect checker on the old URLs to confirm the status code and final destination, and update any internal links so they no longer rely on the redirect. Google notes that after a redirect it keeps both URLs and the old one may still appear in results for a while, which typically fades over time.

Fix 3: Retire pages properly and prevent new problems

Sometimes a page really is gone with no replacement. In that case a 404 or 410 is the honest response. Google treats all 4xx codes alike, so the choice between 404 and 410 makes no practical difference to it, and either will lead to the URL being dropped from the index. What matters is that a missing page returns an error status rather than a normal page that says it is missing, which would be a soft 404.

Create a custom error page that helps people recover. It should explain that the page is missing, offer a search box, and link to your main sections. Make sure it returns the correct error status.

To prevent new problems, build checks into your routine. Run a link check after publishing larger changes, review Search Console monthly, and set a rule that nobody deletes or renames a page without updating links and adding a redirect. Link checking tools linked below make this routine quick.

このガイドで紹介したツール

よくあるご質問

Do broken links hurt my search rankings?

They can affect visibility indirectly. Google removes indexed URLs that return a 4xx status, and if a page you care about starts returning an error it can drop out of results. Broken links also waste crawling and frustrate visitors. They are rarely a penalty in themselves, but fixing them is straightforward.

Should I use a 404 or a 410 for a deleted page?

For Google it makes no practical difference, because it treats all 4xx errors except 429 in the same way and removes indexed URLs that return them. Choose the one that reflects reality, and make sure the page returns a genuine error status rather than a normal page that merely says the content is missing.

Is it fine to redirect every old URL to my home page?

It is better to redirect each old address to the closest equivalent page. Sending everything to the home page leaves visitors unsure why they arrived there and does not preserve the purpose of the original link. If there is no suitable replacement, return a proper 404 or 410 with a helpful error page.

What is the difference between a 301 and a 302 redirect?

A 301 signals a permanent move, and Google treats the target as the canonical URL. A 302 signals a temporary move, which Google follows without making the target canonical, so the original URL can remain in results. Use 301 or 308 for permanent changes and 302 or 307 only for short-term situations.

How often should I check for broken links?

Check after any redesign, migration or large content change, and review Search Console reports about once a month. A full link check every few months suits most small sites. External links break without warning when other sites change, so periodic checks are the only reliable way to catch them.