リンク切れはSEOに悪い?Google公式情報で404と内部リンクを分けて確認する
404があるだけでサイト全体の順位が下がるわけではありません。一方、内部リンクが404を指す状態は、ページ発見やサイト構造の理解、ユーザー導線に影響します。Google公式情報とゆまラボの404実装をもとに整理します。

404ページを作ったとき、SEOについてはかなり限定的に考えていた。
404ページの役割を確認した単発記事では、カスタム404を作れば検索順位が上がる、という扱いにはしていない。
その後、ゆまラボ専用の404ページを実装し、存在しないURLには404 Not Foundを返したまま、トップページや記事一覧へ戻れるようにした。
この考え方自体は変わらない。
ただ、「404ページはSEO施策ではない」と「サイト内のリンク切れを放置してよい」は別の話になる。
Googleの公式情報を確認すると、404そのものは正常なWebの状態として扱われている。一方で、Googleはリンクを新しいページの発見や関連性の判断に使っている。
リンク先が404なら、その先には取得できるコンテンツがない。
SEOとして見る場所は、404というステータスの数より、どのページから何へリンクしているか、そのリンク先が本来存在するべきページなのかになる。
404があるだけでサイト全体の順位は下がらない#
Google Search Centralの2024年8月SEO Office Hoursでは、「404が多いとサイトのランキングを失うか」という質問に対し、404はサイト内の他ページのランキングには影響しないと説明している。
2022年11月のOffice Hoursでも、404が多いことでサイト全体のクロールが止まるわけではなく、404はWeb上で正常に存在するものとして説明されている。
削除した記事があり、代替ページもない。
存在しないURLを誰かが入力した。
昔のURLが外部に残っている。
こうしたURLへ正しい404 Not Foundを返すこと自体を、SEO上のエラーとして全部消す必要はない。
Googleのクロールエラーに関する現在のドキュメントでも、コンテンツがなく代替ページもない場合は404または410を返す方法が案内されている。
ゆまラボで404ページを実装したときも、ここは変えていない。

修正前もHTTP 404。
修正後もHTTP 404。
変えたのは、404へ来た利用者がサイト内へ戻れるかどうか。
Googleのドキュメントにも、カスタム404ページはユーザー向けとして作り、サーバーは正しい404ステータスを返すよう書かれている。
この部分だけを見るなら、以前の記事で書いた「404ページは検索順位を上げるためのページではない」という整理で問題ない。
内部リンクが404を指す状態は別に見る#
リンク切れになると話が変わる。
Googleはリンクを、ページの関連性を判断するシグナルとして使い、新しいページを見つけてクロールするためにも使っている。
Googleのリンクに関するベストプラクティスでは、重要なページにはサイト内の少なくとも1つの別ページからリンクすることを推奨している。
例えば記事Aに次のリンクがある。
<a href="/blog/article-b/">関連記事</a>
/blog/article-b/が正常に存在すれば、ユーザーもGooglebotもリンク先へ進める。
リンク先が削除されて404になっていれば、そこで終わる。

※ 記事内の図は内容を整理するために作成した概念図です。各社の公式資料や実際の製品画面ではありません。
ここで「リンク切れ1本につき順位が何点下がる」という公式ルールがあるわけではない。
ただ、内部リンクにはページを見つけてもらう役割がある。
そのリンクが404へ向いていれば、本来見せたいページへの導線として機能しない。
Googleの2022年12月Office Hoursには、404になっていたページが再びオンラインになると、リンク元が再クロールされた後にそのページへのリンクが再び評価対象になるという説明もある。
少なくとも、404の間はリンク先ページに取得できる内容がない。
「404は問題ない」という説明だけを切り出して、内部リンク切れまで放置してよいと考えるのは違う。
カスタム404ページはリンク切れを修復しない#
ゆまラボではカスタム404ページを追加した。
これは必要な変更だった。
存在しないURLへ来ても、通常のヘッダーとフッターが表示され、トップページや記事一覧へ戻れる。
ただし、記事Aの中に古いURLが残っている場合、そのリンク自体は直っていない。
記事A
↓
古いURL
↓
404ページ
が、
記事A
↓
新しい記事B
に変わるわけではない。
カスタム404は、リンク切れが起きた後のユーザー導線を改善するもの。
内部リンクの修正は、リンク切れそのものをなくす作業。
役割が違う。
404ページを作ったことで「リンク切れ対策も終わった」とはしない方がよい。
修正方法はリンク先の状態で変える#
リンク切れを見つけたとき、全部301リダイレクトにすればよいわけでもない。
Googleは、明確な移動先がある場合には301を使うよう案内している。一方、代替ページがないURLは404または410でよい。
サイト内のリンクなら、状態ごとに次のように処理できる。
| 状態 | 対応 |
|---|---|
| URLだけ変更し、同じ記事が存在する | 内部リンクを新URLへ変更し、旧URLから301 |
| 記事を削除したが明確な代替記事がある | 内容が対応する場合だけ301し、内部リンクも更新 |
| 記事を削除し、代替がない | 内部リンクを削除し、旧URLは404または410 |
| Markdown内のURLを単純に間違えた | リンク先を正しいURLへ修正 |
| 外部参考リンクが消えた | 新しい公式URLへ差し替えるか、その参照自体を見直す |
特に内部リンクは、301があるから古いURLのままでよいとしない。
Googleのサイト移行ドキュメントでも、リダイレクトを設定した上で、自サイト内のリンクは新しいURLへ更新するよう案内している。
リダイレクトは旧URLへのアクセスを受け止める。
内部リンクは最初から新しいURLへ向ける。
両方を分けて扱う。
soft 404と通常の404も混同しない#
404でSEO上気を付けるなら、通常の404よりsoft 404の方が分かりやすい問題になる。
soft 404は、画面には「ページがありません」と表示しているのに、HTTPレスポンスが200 OKになっているような状態。
Googleはこの種のページをSearchから除外し、クロール効率にも影響する可能性があるとしている。
現在のGoogle Crawling Infrastructureのドキュメントでも、恒久的に削除したページには404または410を返すこと、soft 404をなくすことがクロール効率の改善策として挙げられている。
ゆまラボの404実装では、
/ → 200
/blog/ → 200
/404-test-before-custom-page/ → 404
という状態をローカルで確認している。
これはそのままでよい。
404をSEO対策として200に変える必要はない。
逆に、404風のページを200で返す方を避ける。
小規模ブログではcrawl budgetを大げさに考えない#
リンク切れの説明では「404がクロールバジェットを大量に消費する」と書かれることもある。
ここも範囲を分けたい。
Googleのクロールバジェットに関する資料は、主に大規模サイトや非常に多くのURLを持つサイトでのクロール効率を扱っている。
ゆまラボのような規模のブログで、数本の404を見つけたからクロールバジェットが危険、という話にはしない。
ただし、soft 404や長いリダイレクトチェーンを大量に作らない方がよい、という基本は同じ。
小規模サイトでリンク切れを直す理由はもっと単純。
- 読者を存在しないページへ送らない
- 重要な記事への内部導線を切らない
- URL変更後も古いリンクを残さない
- Googleがサイト内ページをたどれる状態を維持する
こちらを優先する。
ゆまラボでは内部リンク切れを修正対象にする#
404ページを作った時点では、404自体を正しく返し、利用者がサイト内へ戻れることを優先した。
SEOまで含めて考えると、その先にもう1段ある。
404ページは残す。正しい404も残す。ただし、サイト自身が重要な404 URLへリンクしている状態は残さない。
この扱いにする。
Search Consoleで404が出たから、すべてのURLを無理に正常化する必要はない。
削除済みで代替のないURLなら404でよい。
確認したいのは、そのURLが現在の記事、カテゴリ、連載、タグ、固定ページなどからリンクされていないか。
記事数が増えれば、Markdown内の内部リンクを目視だけで追うのは難しくなる。
Astroで静的HTMLを生成しているため、次の対策としてはビルド後のページを巡回し、内部リンクの404を検出する処理を入れる方法が合う。
これはカスタム404ページとは別の作業になる。
正しい404ページ
→ 存在しないURLへ来た後の処理
リンク切れ検出
→ 存在しないURLへ送るリンクを公開前に見つける
Googleの公式情報を確認すると、「リンク切れはSEOに悪い」という言い方は少し雑になる。
404が存在するだけで、サイト全体にランキングペナルティが付くわけではない。
一方、内部リンクはGoogleがページを発見し、サイトを理解するために使う。
そのリンクが本来存在するべきページではなく404へ向いているなら、修正対象として扱う理由は十分にある。
ゆまラボでは、404を消すのではなく、必要な404と壊れた内部リンクを分けて管理する。
この方が現在の実装とも矛盾しない。
参考#
- Google Search Central「Google のリンクに関するベスト プラクティス」
- Google Search Central「Google 検索のクロールエラーのトラブルシューティング」
- Google Search Central「August 2024 Google SEO Office Hours」
- Google Search Central「December 2022 Google SEO Office Hours」
- Google Crawling Infrastructure「Crawl Budget Management」
- Google Search Central「Site Moves and Migrations」


