- カニバリを直すべき状態と放置してよい状態の見極め方
- Search Consoleだけでできる食い合いの検出手順
- 統合・canonical・書き分けの判断基準
- 解消後の確認方法と再発防止の運用
同じキーワードで検索しているのに、狙っていたページではなく別のページが出てくる。順位が10位前後で上がったり下がったりして、どちらのページも安定しない。社内でSEOを運用していると、こうした症状に一度は出会います。原因として名前が挙がるのが、いわゆるカニバリゼーション(カニバリ)です。
ただ、カニバリは「疑って確認するもの」であって、順位が動いたらとりあえず疑うものではありません。検索意図が違う2ページが同じ語で表示されているだけなら、直す必要はありません。逆に、本当に食い合っているのに放置すると、評価も内部リンクも更新の手間も二重に消費されます。
この記事では、サイト内のページが同じキーワードで食い合っている状態の見つけ方と、見つけたあとの解消手順を扱います。検出にはSearch Consoleだけを使い、有料ツールは前提にしません。解消方法は、統合、正規化、書き分けなど手段が複数あるため、どれを選ぶかの判断基準を中心に整理します。
結論を先に書きます。カニバリの解消は、ページを消す作業ではなく「1つのクエリに対して、どのページを答えとして残すか」を決める作業です。残すページを決めてから、検索意図の違いで書き分けるか、統合するかを選びます。
カニバリの定義と、直すべき状態の見極め

カニバリとは、同じサイトの複数ページが同じ検索意図のクエリで競合し、検索結果での見え方が不安定になる状態を指します。単に同じ語が複数ページに含まれているだけでは、カニバリとは呼べません。ここを取り違えると、問題のないページまで統合してしまい、かえって流入を落とします。
重複コンテンツとの違い
重複コンテンツは、ほぼ同じ内容のページが別URLで存在することです。パラメータ付きURLや、wwwの有無で同じページが複数見えているケースがこれにあたります。一方、カニバリは内容が違うページでも起こります。「SEO対策 やり方」と「SEO対策 手順」のように、言い回しは違っても探している答えが同じなら、2本の別記事が競合します。
Googleは、重複するURLを1つにまとめる方法を公式ドキュメントで説明しています。https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls によると、リダイレクトとrel="canonical"はどちらも、指定したURLを正規にすべきという強いシグナルとして扱われます。これは重複対策の話であり、検索意図が重なる別内容のページを整理するときにも、同じ手段が使えるという位置づけです。
放置してよいカニバリ、直すべきカニバリ
2ページが同じクエリで表示されていても、次の条件なら急いで直す必要はありません。
- 2ページとも上位に表示され、合計のクリック数が安定している
- 検索意図が異なり、ユーザーがどちらを選んでもサイト内で回遊できる
- 片方が比較検討、もう片方が手順解説のように、役割が分かれている
直すべきなのは、次のような状態です。
- 狙っているページが出ず、評価の低いページが代わりに表示され続けている
- 同じクエリで2ページが入れ替わり、どちらも上位に定着しない
- 2ページの内容がほぼ重なり、読者がどちらを読んでも同じ結論になる
ここがポイント
判断の軸は順位ではなく、検索結果に出てほしいページが出ているかどうかです。順位が悪くなくても意図しないページが表示されているなら、コンバージョンの導線が切れている可能性があります。
Search Consoleによる食い合いの特定手順

検出は、Search Consoleのパフォーマンスレポートで足ります。ここで大事なのは、気になったクエリを1つずつ見るのではなく、候補を機械的に洗い出してから、人が検索意図を判断する二段構えにすることです。
クエリ単位で見る基本の確認方法
Search Consoleの検索パフォーマンスで、確認したいクエリを絞り込み、「ページ」タブを開きます。同じクエリに対して複数のURLが表示されていれば、食い合いの候補です。
このとき見るのは、ページごとのクリック数、表示回数、平均掲載順位の3つです。国内の解説記事でも、数値が拮抗しているときに注意するという説明がされています(https://www.sungrove.co.jp/cannibalization-seo/)。一方のページが大半を取っていて、もう一方がわずかに表示される程度なら、食い合いというより補助的な表示です。
全体を一覧にして候補を洗い出す
クエリが数百ある場合、1つずつ見るのは現実的ではありません。Search Consoleのデータをエクスポートし、クエリとページの組み合わせで並べると、同じクエリに2つ以上のURLが付いている行を抽出できます。表計算ソフトのピボットで十分です。
候補を出したら、次の優先順位で見ます。
- 表示回数の多いクエリから見る(影響が大きいため)
- 平均掲載順位が10位前後から30位の範囲にあるクエリを優先する(改善余地があるため)
- ブランド名を含むクエリは除外する(会社名での検索は競合ではなく自然な重なりのため)
検索結果での目視確認
最後に、サイト内検索の演算子(site:ドメイン キーワード)で、サイト内でそのキーワードを含むページを確認します。演算子の結果は網羅的な件数を保証するものではないため、候補の裏取りに使うのが適切です。Search Consoleの数値で見つけた候補を、実際の検索結果で見て、どのページが何番目に出ているかを自分の目で確認します。
同じクエリで2ページが出る原因の切り分け

カニバリを検出できたら、すぐに統合や削除に進まず、原因を切り分けます。原因によって最適な打ち手が変わるためです。社内で運用している場合は、過去の担当者が作った記事と、いま作っている記事がぶつかる形で起きることがあります。
狙いキーワードの設計の重複
典型的なのが、記事を作った時点でキーワードの割り当てが決まっておらず、似た語で別々に記事を書いてしまったケースです。たとえば「SEO 内製化 メリット」と「SEO 内製化 デメリット」を別記事にすると、読者が知りたい「内製化すべきか」という同じ意図に、2本で答えることになります。
確認方法は、各記事のタイトルとH2を並べて、どの検索意図に答えているかを一言で書き出すことです。同じ一言になる記事があれば、設計の重なりが原因です。
内部リンクとアンカーテキストの分散
意図が違う記事でも、内部リンクのアンカーテキストが同じ語で複数ページに向いていると、どのページがその語の答えなのかが曖昧になります。「SEO対策」というアンカーで、トップページにも解説記事にもサービスページにもリンクしている状態です。
サイト内リンクを一覧にして、同じアンカーテキストの向き先が複数に割れていないか見ます。割れている場合、記事そのものは直さなくても、リンクの向き先を揃えるだけで解消することがあります。
古い記事と新しい記事の役割の重複
更新が止まっていたサイトで、あとから新しい記事を足した場合に起きるパターンです。古い記事が過去の評価を持ち、新しい記事が内容では勝っているのに、検索結果では古い方が出る、という状態になります。
この場合は、どちらが答えとして優れているかを内容で判断し、劣る方を統合するのが基本です。古いから消す、新しいから残す、という機械的な決め方は避けます。
解消の選択肢:統合、正規化、書き分けの判断基準

解消方法は複数あります。大切なのは、手段から入らず、2ページの関係を見てから選ぶことです。
| 状況 | 選ぶ手段 | 注意点 |
|---|---|---|
| 両方に評価があり、意図が同じ | 統合して301リダイレクト | 残すページに内容を移してから転送する |
| 意図は同じで、ページは残したい | rel="canonical"で優先ページを指定 | 内容がほぼ同一の場合に向く |
| 意図が違う | 書き分けて役割を分ける | タイトルとH2も変える |
| 評価が低く、残す価値がない | 削除またはリダイレクト | 関連ページへの転送を優先する |
統合とリダイレクト
2ページとも検索意図が同じで、どちらも評価を持っている場合は、1ページに統合します。残すページに、もう一方の記事の有用な部分を移したうえで、不要になったURLから残すURLへ301リダイレクトを設定します。
Googleのドキュメントでは、恒久的な変更だと確信できる場合に恒久リダイレクトを使うよう案内されています(https://developers.google.com/search/docs/crawling-indexing/301-redirects)。リダイレクトは、転送先を正規にすべきというシグナルになります。ただし、リダイレクト先の内容が元ページとまったく違うと、ユーザーにとっても検索エンジンにとっても不自然になります。内容を移してから転送することが前提です。
canonicalとnoindexによる整理
内容がほぼ同一で、ページ自体はサイト内に残したい場合は、rel="canonical"で優先するURLを示します。Googleは、同一サイト内でnoindexによって正規ページの選定を避けることは推奨していないと説明しています。同一サイト内の整理では、canonicalの方が適した手段です。
また、robots.txtでブロックして整理する方法も、正規化の手段としては推奨されていません。ブロックしても、内容を読まれないままURLだけがインデックスされる場合があるためです。
検索意図による書き分け
2ページの検索意図が違うなら、統合はしません。タイトル、H1、H2を見直し、それぞれが別の問いに答えていることを明確にします。たとえば「SEO 外注 費用」は費用の相場を知りたい人向け、「SEO 外注 選び方」は比較検討中の人向け、というように役割を分けます。
書き分けたあとは、2ページを内部リンクでつなぎます。「費用の相場はこちら」「選び方はこちら」と、読者が次に知りたいことへ案内する形にします。
解消後の順位回復と再発防止

カニバリの解説は、統合やリダイレクトを実施したところで終わるものが目立ちます。しかし、順位が落ちているサイトを立て直す場面では、解消したあとの確認と運用の変更が、成否を分けます。
解消後に確認する指標と期間
統合やリダイレクトを実施した直後は、数値が動くことがあります。Googleのドキュメントでも、リダイレクト後に古いURLが検索結果にときどき表示され続け、時間とともに表示されなくなると説明されています。すぐに「失敗した」と判断して設定を戻すと、かえって状態を悪化させます。
確認する指標は次の3つです。
- 統合先ページの表示回数とクリック数の推移
- 同じクエリで表示されるURLが1つに絞られているか
- 平均掲載順位の変化(上下の振れ幅が小さくなっているか)
確認の頻度は、実施から数週間は週1回程度、その後は月1回程度で足ります。変化が出るまでの期間は、サイトの規模やクロールの頻度によって異なるため、特定の日数を目安にはしません。
再発を防ぐキーワード割り当て表
再発を防ぐ最も確実な方法は、記事を書く前にキーワードの割り当て表を作ることです。列は、URL、狙いキーワード、検索意図の一言、公開日の4つで足ります。
新しい記事を企画するたびに、この表で似た意図の記事がないかを確認します。すでにある場合は、新規で書かずに既存記事のリライトで対応します。更新が止まっているサイトでは、新規の記事を足すより、既存記事の整理と更新を先に行う方が手戻りがありません。
注意したいこと
割り当て表は、作ること自体が目的ではありません。担当者が変わっても同じ判断ができるように、検索意図の一言を必ず書き込みます。
内製運用で起きがちな失敗
内製で運用していると、次の失敗が起きやすくなります。
- 順位が下がった記事を、原因を見ずに丸ごとリライトする
- 古い記事を消してしまい、リダイレクトを設定しない
- 担当者が変わり、過去の割り当ての意図が引き継がれない
どれも、検出と判断の手順が決まっていれば防げるものです。逆に言えば、手順がない状態でツールの数値だけを見ても、再現性のある改善にはなりません。
よくある質問
カニバリは必ず直す必要がありますか
必ずしも直す必要はありません。2ページが異なる検索意図に答えていて、どちらも安定して表示されているなら、そのままで問題ありません。直すかどうかは、狙っているページが出ているか、順位が安定しているかで判断します。
統合すると順位は上がりますか
統合すれば必ず上がるとは言えません。統合は、評価と内部リンクを1ページに集める手段であり、順位を保証するものではありません。統合後の内容が検索意図に合っていることが前提になります。
古いページは削除してよいですか
削除する前に、そのページが流入や被リンクを持っていないかを確認します。持っている場合は、削除ではなく関連するページへの301リダイレクトを検討します。
カニバリの確認はどのくらいの頻度で行うべきですか
記事数が増えたタイミングや、順位が不安定になったタイミングで確認します。定期的に行う場合は、月1回程度の確認で運用負荷を抑えられます。SE Rankingの解説記事も、月に一度の確認を推奨しています(https://seranking.com/jp/blog/keyword-cannibalization/)。
まとめ
- カニバリは、同じ検索意図に複数ページが答えていて、狙ったページが出ない状態を指す
- 同じ語が複数ページに出ているだけなら、直さなくてよい場合がある
- 検出はSearch Consoleでクエリ別に「ページ」を見る方法で足りる
- 解消は、統合、canonical、書き分けのうち、2ページの関係で選ぶ
- 解消後の確認と、キーワード割り当て表による再発防止まで行って完了する
カニバリの解消は、ページを減らす作業ではなく、1つの問いに対する答えのページを決める作業です。残すページを決め、サイト全体でその決め方をそろえることが、順位を安定させる近道になります。
