「canonicalタグ」って、名前は聞いたことがあっても、具体的に何をするものなのか、ちょっと難しそうに感じていませんか?
実はこれ、SEO対策においてとっても大切な役割を持っているんです。簡単に言うと、検索エンジンに対して「これが本物のページですよ!」と伝えるための「名札」のようなもの。
もし、サイト内に似たようなページがいくつもあると、検索エンジンが迷ってしまい、せっかくの良い記事も正しく評価されないかもしれません。これが「重複コンテンツ」の問題です。
この記事では、canonicalタグの基本的な意味から、301リダイレクトとの違い、具体的な書き方やWordPressでの設定方法まで、初心者の方にもわかりやすく解説します。
正しい使い方をマスターして、あなたのサイトの価値をしっかりと検索エンジンに伝えていきましょう。
このページに書いてあること
canonicalタグ(カノニカルタグ)とは?
とは?/canonicalタグ(カノニカルタグ)とは?.jpg?_i=AA)
まずは、canonicalタグ(カノニカルタグ)が一体どんなものなのか、その正体についてお話ししますね。
専門的な用語に聞こえますが、イメージとしては、似たようなページがたくさんある中で「私が本家本元です!」と宣言するための大切な印のようなものです。このタグを正しく理解することで、Googleなどの検索エンジンと上手にコミュニケーションが取れるようになりますよ。
検索エンジンに「正規URL」を伝えるためのHTMLタグ
Webサイトを運営していると、意図せず中身がそっくりなページが複数できてしまうことがあります。そんな時、検索エンジンに対して「このURLが一番重要で、正規のページ(オリジナル)ですよ」と伝えるために記述するのが、canonicalタグ(<link rel="canonical" ...>)です。
これを専門用語で「URLの正規化」と呼びます。例えば、ある商品のページに複数のルートからアクセスできる場合、どのURLを検索結果に出すべきかをGoogleに指示する役割を果たしてくれるんです。
SEO対策におけるcanonicalタグの重要性と役割
SEO対策において、canonicalタグはサイトの評価を守るために欠かせません。
もし同じようなページが複数あると、被リンクなどの評価がそれぞれのページに分散してしまい、検索順位が上がりにくくなってしまうことがあるんです。
canonicalタグを使って「正規URL」を一本化すれば、分散していた評価をその1ページに集約できます。その結果、検索エンジンもサイトの構造を理解しやすくなり、クローラビリティ(巡回しやすさ)の向上にもつながるでしょう。
設定しないと起こりうる「重複コンテンツ」のリスク
もしcanonicalタグを設定せずに放置してしまうと、「重複コンテンツ」というリスクが生じます。
検索エンジンは、内容が酷似したページが複数あると「どれを検索結果に出せばいいの?」と迷ってしまいます。最悪の場合、「コンテンツをコピーして水増ししている」と誤解され、ペナルティに近い形でサイト全体の評価が下がってしまう可能性もゼロではありません。
意図しない順位低下を防ぐためにも、重複コンテンツへの対策としてcanonicalタグは非常に有効な手段なんですよ。
canonicalタグと301リダイレクトの違いと使い分け

「URLを一つにまとめるなら、301リダイレクトでもいいんじゃない?」と疑問に思う方もいるかもしれませんね。
確かにどちらも似たページを扱う技術ですが、ユーザーの体験(UX)という視点で見ると、その役割は大きく異なります。ここでは、canonicalタグと301リダイレクトの違いと、どう使い分ければいいのかを整理してみましょう。
ページを統合・転送するかどうかの違い
一番の大きな違いは、ユーザーを転送するかどうかです。
- 301リダイレクト: ページAにアクセスした人を、自動的にページBへ強制転送(お引越し)します。ユーザーはページAを見ることができません。
- canonicalタグ: 転送はしません。ユーザーはページAを見ることができますが、検索エンジンには「評価はページBに付けてね」と伝えます(「本家はこちら」という看板を立てるイメージ)。
つまり、ページそのものを無くして統合したいなら301、ページ自体は残しておきたいならcanonical、という使い分けになります。
ユーザーのアクセス挙動による判断基準
使い分けに迷ったら、「ユーザーにそのページを見せる必要があるか?」を基準に考えてみてください。
例えば、サイトのリニューアルでURLが変わった場合は、古いURLを見せる必要がないので301リダイレクトが適切です。
一方で、「PC用ページ」と「スマホ用ページ」のように、URLは違うけれどどちらもユーザーに見てもらいたい場合は、canonicalタグを使います。ユーザーの利用シーンに合わせてページを残しつつ、SEOの評価だけを統合したい時に便利なんですよ。
301リダイレクトが使えない場面での活用
実は、301リダイレクトを使いたくても使えない場面というのも存在します。
例えば、無料ブログサービスを使っていてサーバーの設定(.htaccessなど)が触れない場合や、広告計測用のパラメータがついたURLなどがそうです。
そういった技術的な制約がある場合でも、HTML内に記述するだけのcanonicalタグなら設定できることが多いです。「301が使えない時の頼れる代打」としても、canonicalは活躍してくれるでしょう。
canonicalタグを設定すべき具体的なケース

では、具体的にどんなシチュエーションでcanonicalタグを使うべきなのでしょうか?
「自分のサイトには関係ないかも」と思っていても、意外と身近なところで重複コンテンツは発生しているものです。ここでは、canonicalタグの設定が推奨される代表的なケースをいくつかご紹介します。
PCサイトとスマホサイトでURLが別々に存在する場合
最近はレスポンシブデザインが主流ですが、もしPCサイトとスマホサイトで別々のURL(例:www.example.com と sp.example.com)を運用している場合は注意が必要です。
中身の記事は同じなのにURLが違うため、検索エンジンが重複コンテンツとみなす可能性があります。この場合、スマホ版のページからPC版のURLに向けてcanonicalタグを設定し、「PC版が正規ですよ」と伝えてあげるのが一般的です。
広告や計測用のパラメータがURLに付く場合
Web広告を出稿したり、アクセス解析を行ったりする際、URLの末尾に ?utm_source=twitter のようなパラメータが付くことがありますよね。
これらはシステム上は「別のURL」として扱われますが、表示されるページの内容は元のページと全く同じです。こうしたパラメータ付きのURLが増殖すると評価が分散してしまうため、パラメータのない元のURLに向けてcanonicalタグを設定する必要があります。
ECサイトで色違い・サイズ違いの商品ページがある場合
ECサイト(ネットショップ)を運営している方によくあるのが、色違いやサイズ違いの商品ページです。
例えば、「Tシャツ(赤)」と「Tシャツ(青)」で別々のURLがあるけれど、商品説明文はほとんど同じ、というケース。これも重複コンテンツのリスクが高くなります。
こういった場合は、代表的な商品ページ(例えば「赤」や、色を選択できる親ページ)を正規URLとして指定することで、評価の分散を防ぐことができます。
サイト内のシステムにより自動生成されるページがある場合
サイト内検索の結果ページや、商品一覧の「価格順」「新着順」などのソート機能で生成されるURLも、重複コンテンツの温床になりがちです。
これらの自動生成ページは便利ですが、検索エンジンにとっては「似たような質の低いページが大量にある」と判断される原因にもなります。重要なページ以外はcanonicalタグで正規化するか、あるいはnoindexタグを使って検索結果に出さないようにする工夫が必要です。
外部メディアへ記事を配信・転載する場合
自社のブログ記事を、ニュースサイトや他のメディアに配信・転載してもらうこともあるでしょう。
この時、何も対策をしないと、自社のオリジナル記事よりも、ドメインパワーの強い転載先の方が検索上位に来てしまうという逆転現象が起きることがあります。
これを防ぐために、転載先のメディアにお願いして、自社の元記事URLに向けたcanonicalタグ(クロスドメインcanonical)を設定してもらうのが理想的です。
ABテストで検証用の別URLを使用する場合
Webマーケティングを行っていると、キャッチコピーやデザインを変えた2つのページ(AとB)でABテストを行うことがありますよね。
テスト期間中、内容は似ているけれどURLが違うページが同時に存在することになります。テスト用のページが重複コンテンツとしてインデックスされないよう、テストページからオリジナルページへcanonicalタグを向けておくことが推奨されています。
canonicalタグの正しい書き方と記述場所

canonicalタグの役割や使う場面がわかったところで、次は実際の「書き方」を見ていきましょう。
記述自体はとてもシンプルですが、間違った書き方をしてしまうと効果がないどころか、SEOに悪影響を与えてしまうこともあります。ここで正しいルールをしっかり押さえておきましょう。
HTMLのheadセクション内への記述方法
canonicalタグは、WebページのHTMLソースコードの中にある<head>セクション内に記述します。
<body>タグの中に書いても検索エンジンは無視してしまうので、必ず<head>から</head>の間に配置するようにしてください。他のメタタグ(descriptionなど)の近くに書くと管理しやすいでしょう。
link rel=”canonical”を使った基本構文
基本的な構文は以下の通りです。これをコピペして、URL部分を書き換えるだけで使えます。
<link rel="canonical" href="https://example.com/original-page/">Code language: HTML, XML (xml)
- rel=”canonical”: 「これはカノニカル(正規)タグですよ」という宣言
- href=”…”: 正規化したい(本物としたい)ページのURL
この1行を追加するだけで、検索エンジンへの指示は完了です。簡単ですよね。
カノニカルURLは相対パスではなく「絶対パス」で記述する
ここで一つ、とても重要なポイントがあります。hrefの中に書くURLは、「絶対パス」で記述することを強くおすすめします。
- × 相対パス:
/original-page/ - ○ 絶対パス:
https://example.com/original-page/
相対パスだと、サイトの構成やプロトコル(http/https)の違いによって、検索エンジンが意図しないURLとして解釈してしまうリスクがあるからです。トラブルを避けるためにも、必ず「https」から始まるフルパスで書きましょう。
自分自身に向ける「自己参照canonical」の設定
「重複するページがない場合、canonicalタグは書かなくていいの?」と思うかもしれません。ですが、実は自分自身のURLを指定する(自己参照canonical)ことが推奨されています。
なぜなら、外部サイトからのリンクやシステムの都合で、意図せずパラメータ付きのURLが発生することがあるからです。そんな時でも、「私が正規です」と自分自身に名札をつけておけば、予期せぬ重複トラブルを未然に防ぐことができるんですよ。
WordPressやCMSでcanonicalタグを設定する方法

「HTMLを直接編集するのはちょっと怖い…」という方も安心してください。
WordPressなどのCMS(コンテンツ管理システム)を使っていれば、プラグインや標準機能を使って、コードを書かずに簡単に設定できることがほとんどです。ここでは代表的なツールでの設定方法をご紹介します。
WordPressのSEOプラグインを利用した設定手順
WordPressでは、「All in One SEO」や「Yoast SEO」、「SEO SIMPLE PACK」といったプラグインを導入するのが一般的です。
これらのプラグインを入れると、記事の投稿画面の下部にSEO設定のエリアが表示されます。「カノニカルURL」や「正規URL」という入力欄にURLを入れるだけで設定完了です。空欄の場合は、自動的にその記事のURL(自己参照)が設定される仕様になっていることが多いので、基本的にはそのままで大丈夫ですよ。
ShopifyなどのECカートシステムでの対応
Shopify(ショッピファイ)などのECカートシステムでは、デフォルトでcanonicalタグが自動出力されるように設計されているものが多いです。
商品ページやコレクションページなど、システムが生成するURLに対して自動的に適切な正規化が行われます。ただし、テーマのカスタマイズ状況によっては設定が変わることもあるので、念のためソースコードを確認しておくと安心でしょう。
HTMLを直接編集できない場合のHTTPヘッダーでの指定
少し上級者向けの内容になりますが、PDFファイルや画像ファイルなど、HTMLが存在しないファイルにもcanonicalを設定したい場合があります。
その場合は、HTMLタグではなく、サーバーからのレスポンスヘッダー(HTTPヘッダー)で指定する方法があります。サーバーの設定ファイル(.htaccessなど)を編集する必要があるため、エンジニアの方に相談してみるのが良いでしょう。
canonicalタグ使用時の注意点とよくある間違い

canonicalタグは強力なツールですが、使い方を誤ると検索エンジンを混乱させてしまいます。
良かれと思ってやった設定が、逆にSEOの足を引っ張ってしまう…なんてことにならないよう、よくある間違いと注意点をチェックリスト形式で確認しておきましょう。
1つのページに複数のcanonicalタグを設置しない
1つのページのhead内に、canonicalタグが2つ以上存在してはいけません。
よくあるのが、WordPressのテーマ自体の機能と、後から入れたSEOプラグインの機能が競合して、タグが二重に出力されてしまうケースです。検索エンジンはどちらを信じていいかわからず、設定を無視してしまうことがあります。ソースコードを確認して、必ず1つだけになるようにしましょう。
bodyタグの中には記述しない
前述の通り、canonicalタグは<head>セクションに書くのがルールです。
ブログ記事の本文作成画面(HTML編集モード)などに貼り付けてしまうと、それは<body>タグの中に記述されたことになり、検索エンジンには認識されません。必ずhead内に出力される設定欄やヘッダー編集機能を使用してくださいね。
内容が大きく異なるページを正規化先に指定しない
canonicalタグは、あくまで「内容が重複しているページ」をまとめるためのものです。
内容が全く違うページ(例えば、記事Aから記事Bへ)に向けて設定してしまうと、Googleは「これは間違いだろう」と判断して設定を無視します。無理やり異なるページに評価を移そうとしても効果はありませんし、サイトの信頼性を損なう原因にもなります。
ページネーション(2ページ目以降)を1ページ目に正規化しない
ブログの一覧ページなどで「2ページ目」「3ページ目」がある場合、これらを全て「1ページ目」に正規化するのは間違いです。
2ページ目には2ページ目の固有の記事リストがあり、1ページ目とは内容が異なります。すべてを1ページ目に統合してしまうと、2ページ目以降の内容が検索エンジンにインデックスされなくなってしまいます。ページネーションには、それぞれのページ自身を正規URLとして設定しましょう。
noindexタグと矛盾する設定をしない
noindexタグ(インデックスさせない)と、他のページに向けたcanonicalタグ(正規URLを指定する)を同時に設定するのは避けましょう。
「このページは検索に出さないで(noindex)」と言いつつ、「正規URLはあちらのページです(canonical)」と別の場所を指定するのは矛盾しています。これでは検索エンジンへの指示が曖昧になり、正しく処理されない可能性があるでしょう。
ただし、自分自身のURLを指定する「自己参照」の場合なら、canonicalタグとnoindexタグが一緒にあっても問題ありません。設定するときは、canonicalタグがどのページを向いているか、しっかり確認してみてくださいね。
canonicalタグの設定を確認する方法

設定作業が終わったら、最後に必ず「正しく反映されているか」を確認しましょう。
設定したつもりでも、タイプミスやプラグインの不具合で反映されていないこともあります。ここでは、誰でも簡単にできる3つの確認方法をご紹介します。
ブラウザの「ページのソースを表示」で確認する
一番アナログですが、確実な方法です。確認したいページをブラウザで開き、右クリックして「ページのソースを表示」を選択します。
ソースコードが表示されたら、「Ctrl + F」(MacならCommand + F)で検索窓を開き、「canonical」と入力してみてください。<link rel="canonical" href="..."> という記述が見つかれば、正しく出力されています。URLが間違っていないかも合わせてチェックしましょう。
Google Search ConsoleのURL検査ツールを使う
Googleが実際にどう認識しているかを知りたいなら、Google Search Console(サーチコンソール)の「URL検査ツール」が最適です。
ページの上部にある検索窓にURLを入力して検査を実行すると、「ページのインデックス登録」という項目の中に「ユーザーが指定した正規URL」と「Googleが選択した正規URL」が表示されます。ここが一致していれば、Googleに正しく伝わっている証拠です。
SEOツールやブラウザ拡張機能でチェックする
もっと手軽に確認したい場合は、ブラウザの拡張機能を使うのがおすすめです。
例えば、Google Chromeの拡張機能「SEO META in 1 CLICK」などをインストールしておくと、ページを開いてアイコンをクリックするだけで、canonicalタグの設定状況を一瞬で確認できます。ソースコードを見るのが苦手な方でも、これなら直感的にチェックできますよ。
まとめ

canonicalタグは、Webサイト内に増えてしまいがちな「重複コンテンツ」を整理し、検索エンジンに「どのページを評価してほしいか」を伝えるための重要な「名札」です。
少し技術的な内容も含まれていましたが、基本は「本物のページURLを、head内に絶対パスで書く」これだけです。
- 似たページがあるときは、正規ページへcanonicalを向ける
- 301リダイレクトが使えない時の代わりとして使う
- 自分自身のページにも自己参照canonicalを設定しておく
これらを意識するだけで、意図しない順位低下のリスクを減らし、あなたのサイトのSEO評価を健全に保つことができます。
WordPressなどの便利なツールも活用しながら、ぜひ正しい設定にチャレンジしてみてくださいね。あなたの発信する良質なコンテンツが、迷うことなくユーザーに届くことを応援しています。
canonicalタグについてよくある質問

最後に、canonicalタグに関してよく寄せられる質問をQ&A形式でまとめました。疑問点の解消に役立ててください。
- Q. canonicalタグはすべてのページに設定する必要がありますか?
- A. はい、基本的にはすべてのページに「自己参照canonical」を設定することが推奨されています。重複ページがない場合でも、自分自身のURLを指定しておくことで、パラメータ付きURLなどが勝手に生成された際の重複トラブルを防ぐことができます。
- Q. canonicalタグを設定すれば、すぐに検索順位に反映されますか?
- A. いいえ、即時反映ではありません。検索エンジンのクローラーがページを巡回し、設定を読み取ってインデックスを更新するまでに、数日から数週間かかる場合があります。気長に待ちましょう。
- Q. 別のドメインのサイトを正規URLに指定することはできますか?
- A. はい、可能です(クロスドメインcanonical)。例えば、自社サイトの記事を外部メディアに転載する場合などに、外部メディア側から自社サイトへcanonicalを向けてもらうことで、オリジナル記事の評価を守ることができます。
- Q. canonicalタグの設定はGoogleに無視されることがありますか?
- A. はい、あります。canonicalタグはあくまで「ヒント」として扱われるため、Googleが「指定されたURLよりも、こちらのページの方が正規にふさわしい」と判断した場合は、設定が無視されることがあります。内容はできるだけ統一させましょう。
- Q. canonicalタグと301リダイレクト、迷ったらどちらを使えばいいですか?
- A. 「古いページをユーザーに見せる必要がない」なら301リダイレクト、「古いページもユーザーに見せたい(アクセスさせたい)」ならcanonicalタグ、という基準で選ぶのが分かりやすくておすすめです。