canonicalタグは、同じ内容のページが複数のURLで存在する場合に、検索エンジンへ正規のURLを伝えるHTMLタグです。設定を誤るとSEO評価が分散し、狙ったページが検索結果に表示されなくなるリスクがあります。
本記事では、canonicalタグが必要なケースや書き方、確認方法、設定時の注意点までわかりやすく解説します。
canonicalタグとは
canonicalタグとは、同じ内容のページが複数のURLで存在する場合に、検索エンジンへ正規のURLを伝えるためのHTMLタグです。
ホームページには、意図しない形で同じ内容のページが複数のURLで生まれることがあります。こうした重複が放置されると、検索エンジンはどのページを評価すべきか判断できず、本来評価されるべきページの検索順位が下がるリスクがあります。
canonicalタグを設定することで、検索エンジンは余分なURLを無視して正規ページを基準にホームページを評価するようになります。制作時から適切に設定しておくことが、SEO対策の基本です。
canonicalタグを設定するSEO効果

canonicalタグを正しく設定することで、検索エンジンはページをより適切に評価できるようになります。具体的なSEO効果を解説します。
重複コンテンツによるマイナス評価を防げる
同じ内容のページが複数のURLで存在すると、検索エンジンはどのページをインデックスすべきか判断できなくなります。
重複コンテンツとみなされると、サイト全体のSEO評価が下がり、本来上位表示させたいページの検索順位に悪影響が出ます。特に問題になるのが、キーワードカニバリゼーションと呼ばれる現象です。似たような内容のページが複数存在することで、ページ同士が検索結果で競合し、どちらのページも中途半端な検索順位に落ち着いてしまいます。
狙ったキーワードで成果を出すためには、canonicalタグで正規URLを明示して検索エンジンの評価を集中させることが重要です。余分なページが無視されることで、重複によるマイナス評価を確実に防げます。
リンク評価を正規URLに集約できる
外部サイトからの被リンクや内部リンクは、ページの検索順位を左右する重要な評価要素です。
同じ内容のページが複数のURLで存在すると、せっかく獲得したリンク評価が分散してしまいます。たとえば、美容室のホームページがSNSで紹介された場合、パラメーター付きのURLと通常のURLの両方にリンクが集まることがあります。canonicalタグを設定していないと、この2つのURLへのリンク評価は別々にカウントされ、どちらのページも十分な評価を得られません。
canonicalタグで正規URLを指定することで、分散していたリンク評価を1つのページに集約でき、狙ったページのSEO効果の向上につなげることができます。
クローラーの巡回効率が上がる
検索エンジンのクローラーはリンクを辿りながらページを読み込み、インデックスに登録していきます。重複ページや類似ページが多いと、クローラーがそれらを無駄に巡回することになり、本当に重要なページの発見やインデックス登録が遅れる原因になります。
canonicalタグを設定することで、クローラーは正規ページを優先的に巡回するようになります。結果として、新たに公開したページや内容を更新したページが検索結果に反映されるまでの時間を短縮できます。
ページ数が多いECサイトやブログメディアでは、canonicalタグによるクロール効率の改善が、重要ページのSEO速度に直結します。
canonicalタグが必要なケース

canonicalタグが必要になるのは、同じ内容のページが複数のURLで存在する状況です。意図して作った重複ではなく、ホームページの仕組み上で自動的に発生するケースがほとんどです。自社サイトに当てはまる状況がないか確認してみてください。
wwwとindex.phpの有無などURLの表記揺れがある場合
同じページでも、wwwあり・なし、末尾のスラッシュあり・なし、index.htmlやindex.phpの有無など異なるURLとしてアクセスできる状態になっていることがあります。ユーザーからは同じページに見えても、検索エンジンのクローラーはそれぞれを別のページとして認識します。
こうした表記揺れが放置されると、同一のページに対してリンク評価が分散し、canonicalタグで正規URLを統一することで評価を1つに集約できます。制作時にサーバー設定でリダイレクトを設定するのが理想ですが、対応が難しい場合はcanonicalタグで正規URLを指定しておくことが有効です。
計測用パラメーターがURLに付いている場合
ホームページへの流入経路を計測するために、URLの末尾に「?utm_source=xxx」のようなパラメーターを付けることがあります。パラメーターが異なるだけで内容はまったく同じページですが、検索エンジンはそれぞれを別のURLとして判断します。
広告やメールマガジンなど複数の経路でアクセスを集めているホームページでは、気づかないうちに大量の重複ページが発生していることがあります。こうしたケースではパラメーターのない正規URLをcanonicalタグで指定することで、計測の精度を保ちながらSEO評価の分散を防ぐことができます。
カテゴリ・タグページで重複ページが発生する場合
ブログやメディアサイトでは、カテゴリページやタグページによって同じ記事が複数の一覧ページに表示されることがあります。また、ECサイトで商品一覧を価格順・人気順で並び替えると、URLは異なっても内容がほぼ同じページが複数生成されるケースも見られます。
こうした重複はCMSの仕組み上、自動的に発生するため完全に防ぐことが難しい場合があります。canonicalタグで代表となる正規URLを指定しておくことで、検索エンジンが評価すべきページを正しく判断できるようになり、重複コンテンツによるSEO評価の低下を防げます。
ECサイトで色違い・サイズ違いのページがある場合
ECサイトでは、同じ商品の色違いやサイズ違いで個別のURLが生成されることがよくあります。商品説明や画像、スペックがほぼ同じで、色やサイズのバリエーションだけが異なるページが大量に存在する状態です。
このような場合、それぞれの検索需要を見極めたうえでcanonicalタグの設定を判断することが重要です。各バリエーションページに独自の検索需要がない場合は、メインの商品ページを正規URLとしてcanonicalタグで指定し、類似ページの評価を1つに集約することで重複判定を避けることができます。
PCとスマホでURLが異なる場合
レスポンシブデザインが普及する以前は、PCサイトとスマートフォンサイトで異なるURLを使い分ける運用が一般的でした。この場合、内容は同じでもURLが異なるため、検索エンジンは別々のページとして認識します。
対応方法はスマートフォンサイト側にcanonicalタグでPCサイトのURLを正規URLとして指定し、PC側にはalternateタグでスマートフォン版の存在を伝える形になります。canonicalタグとalternateタグを組み合わせることで、検索エンジンはPC版を正規ページとして評価しながら、スマートフォンユーザーには適切なページを表示できるようになります。
301リダイレクトが使えないサイト移転
サイト移転の際は、本来であれば301リダイレクトを設定して移転先を伝えるのが理想です。しかしサーバーの制約や技術的な事情でリダイレクトの設定が難しいケースも存在します。
そうした場合にcanonicalタグで新しいURLを正規ページとして指定することで、検索エンジンに移転先を伝えることができます。301リダイレクトと比べると効果は限定的ですが、旧URLと新URLのSEO評価が分散するリスクを軽減する手段として活用できます。サイト移転時にリダイレクトが設定できない場合の応急処置として、canonicalタグの設定を検討してみてください。
canonicalタグの書き方
canonicalタグは、HTMLの<head>タグ内に以下のように記述します。
<link rel="canonical" href="https://www.example.com/page/" />
記述する際のポイントは3つです。
必ず<head>タグ内に記述すること、相対パスではなく絶対パスで指定すること、1ページにつき1つだけ設置することです。複数記述すると検索エンジンがどのURLを正規と判断すべきか混乱するため注意が必要です。
WordPressを使用している場合は、Yoast SEOやAll in One SEOなどのプラグインがcanonicalタグを自動で出力するため、特別な記述は不要です。ただしテーマとプラグインが同時にcanonicalタグを出力すると二重記述になるケースがあるため、ソースコードで重複がないか確認しておきましょう。
canonicalタグの確認方法

canonicalタグは設定したつもりでも、誤ったURLを指していたり抜け漏れが発生していたりすることがあります。設定後は必ず以下の方法で正しく反映されているか確認してください。
ソースコードで確認する
ブラウザで対象のページを開き、右クリックからページのソースを表示します。<head>タグ内に以下のような記述があればcanonicalタグは正しく設定されています。
<link rel="canonical" href="https://www.example.com/page/" />
確認すべきポイントは、正しいURLが指定されているか、絶対パスで記載されているか、1ページにつき1つだけ記述されているかの3点です。設定後は必ずソースコードで出力内容を確認する習慣をつけておきましょう。
GoogleサーチコンソールのURL検査ツールで確認する
GoogleサーチコンソールのURL検査ツールでは、対象のURLを入力することでGoogleが認識しているcanonicalタグの情報を確認できます。検査結果の画面には「ユーザーが指定した正規URL」と「Googleが選択した正規URL」の2つが表示されます。
この2つが一致していれば、canonicalタグは正しくGoogleに認識されています。一致していない場合は、Googleが指定したURLとは別のURLを正規ページと判断していることを意味するため、canonicalタグの設定内容やページの内容を見直す必要があります。
canonicalタグ設定時の注意点

canonicalタグは設定を誤ると、本来評価されるべきページが検索結果に表示されなくなるなど、SEOに深刻な悪影響を与えることがあります。設定前に以下の注意点を確認してください。
内容が異なるページに設定しない
canonicalタグはあくまで同じ内容または類似した内容のページに対して使うものです。内容がまったく異なるページのURLを正規URLとして指定してしまうと、本来インデックスされるべきページが検索結果から消えるリスクがあります。
たとえば整骨院のホームページで、肩こりの施術ページに腰痛の施術ページのURLをcanonicalタグで指定してしまうと、肩こりのページは検索結果に表示されなくなります。canonicalタグは重複・類似コンテンツの調整にのみ使用し、異なる内容のページへの指定は避けてください。
ページネーションの各ページに個別に設定する
ブログの記事一覧や商品一覧など、複数ページに分割されるページネーションでは、2ページ目以降のcanonicalタグを1ページ目に設定してはいけません。すべてのページを1ページ目に正規化してしまうと、Googleは2ページ目以降を独立したページとして認識できなくなり、インデックスされなくなるリスクがあります。
ページネーションでは各ページに自己参照のcanonicalタグを設定するのが正しい方法です。2ページ目には2ページ目のURL、3ページ目には3ページ目のURLをそれぞれcanonicalタグで指定してください。
noindexページのURLを指定しない
noindexタグが設定されたページは、検索エンジンのインデックスに登録されません。そのため、noindexが設定されたページのURLをcanonicalタグで正規URLとして指定すると、評価を集約しようとしたページ自体が検索結果に表示されなくなります。
canonicalタグを設定する際は、指定先のURLにnoindexタグが設定されていないか必ず確認してください。canonicalタグとnoindexタグは目的が相反するため、同じページに対して併用しないよう注意が必要です。
まとめ
canonicalタグは、重複・類似ページが複数のURLで存在する場合に、検索エンジンへ正規のURLを伝えるHTMLタグです。適切に設定することで、重複コンテンツによるマイナス評価を防ぎ、リンク評価を正規URLに集約し、クローラーの巡回効率を高めることができます。
設定が必要なケースはURLの表記揺れやパラメーター付きURL、ECサイトのバリエーションページなど多岐にわたります。制作時から正しく設定しておくことがSEO対策の基本ですが、既存サイトでも今から見直すことで効果が期待できます。
注意点を守りながら、ソースコードやGoogleサーチコンソールのURL検査ツールで定期的に確認する習慣をつけておきましょう。
