同じ内容のページが複数のURLで存在していると、Googleはどのページを検索結果に表示すべきか判断できず、評価が分散してしまいます。この「重複コンテンツ」の問題を解消するのが canonicalタグです。

この記事ではcanonicalタグの役割・設定方法・よくあるミスを解説します。

canonicalタグとは?

canonicalタグ(rel="canonical")は、「このページの正規版URLはこちらです」とGoogleに伝えるHTMLタグです。複数のURLで同じコンテンツにアクセスできる場合に、どのURLを代表として評価してほしいかを指定します。

<link rel="canonical" href="https://example.com/blog/article-title" />

このタグを<head>内に記述します。

重複URLが発生する典型的なケース

意識していなくても、サイトには重複URLが生まれやすいです。

  • www有無の違いhttps://example.com/https://www.example.com/
  • http/httpsの違いhttp://example.com/https://example.com/
  • 末尾スラッシュの違い/about/about/
  • UTMパラメータ/article?utm_source=twitterなどトラッキング用URLが別ページと認識される
  • 印刷用ページ/article?print=true
  • ページネーション/blog//blog/?page=1

self-canonical(自己参照canonical)

重複がなくても、すべてのページに自身のURLをcanonicalとして記述することが推奨されています。これにより、外部から予期しないURLでリンクされた場合でも正規URLが明示されます。

<!-- /blog/article-title のページに記述 -->
<link rel="canonical" href="https://example.com/blog/article-title" />

canonicalタグの正しい書き方

<!-- ✅ 絶対URL(推奨) -->
<link rel="canonical" href="https://example.com/blog/article" />

<!-- ❌ 相対URL(非推奨)-->
<link rel="canonical" href="/blog/article" />

必ず絶対URL(https://から始まるフルURL)で記述してください。

クロスドメインcanonical

他サイトに転載した記事の場合、転載元のURLをcanonicalに指定することで、オリジナル記事のSEO評価を守ることができます。

<!-- 転載先のページに記述 -->
<link rel="canonical" href="https://original-site.com/article" />

よくある設定ミス

  • canonicalが別ページを指している:カテゴリページのcanonicalが記事ページを指すなど、誤った指定でGoogleが混乱する
  • 複数のcanonicalタグがある<head>内にcanonicalが2つあると無視される可能性がある
  • noindexとcanonicalが共存している:インデックスさせたいページにnoindexが付いていると効果がない
  • HTTPとHTTPSが混在している:canonicalにhttpを指定していてサイトはhttpsで運用していると矛盾が生じる

よくある質問(FAQ)

canonicalタグとリダイレクト(301)はどちらが優先されますか?
URLを統一するなら301リダイレクトのほうが確実です。canonicalはGoogleへの「ヒント」であり、必ず従ってもらえる保証はありません。www/www無しやhttps/httpの統一は301リダイレクトで行い、canonicalはそれに加えて設定するのが理想です。
Googleはcanonicalタグを必ず従いますか?
必ずしも従いません。canonicalは強制ではなく「推奨」です。リンク数が多い別のURLをGoogleが勝手に正規URLと判断することもあります。しかし設定しておくことで正規URLへの誘導が大幅に高まるため、設定する価値は十分あります。
canonicalタグを確認する方法はありますか?
ブラウザの「ページのソースを表示」で<head>内のcanonicalタグを確認できます。また、Google Search Consoleの「URL検査」ツールでGoogleが認識している正規URLを確認できます。

まとめ

  • canonicalタグは「このページの正規URLはここ」とGoogleに伝えるタグ
  • www/https/スラッシュ/UTMパラメータなど意図せず重複URLは発生しやすい
  • すべてのページにself-canonicalを設定するのがベストプラクティス
  • 絶対URLで記述し、noindexや別URLへの誤った指定に注意する

canonicalタグの生成と設定確認には以下のツールをご活用ください。