SEOガイド

メタタグの確認方法
どこで見るかで答えが変わる

ソース表示・開発者ツール・Search Consoleは、同じページでも違うものを見せます。どこを信じて、何を見て、どう直すかを、このサイトで見つかった実例で説明します。

8分で読める2026-10-23

メタタグは、ページのソース表示(Ctrl+U)でtitle・description・canonical・OGPを検索すれば確認できます。ただし、ソース表示はサーバーが返した元のHTML、開発者ツールはJavaScriptが動いた後のページ、Search ConsoleのURL検査はGoogleが受け取った結果を見せるので、3か所で中身が食い違うことがあります。canonicalとrobotsは元のHTMLの <head> にあるかで判断し、canonicalがGoogleに届いたかはURL検査の「ユーザーが指定した正規URL」で確かめます。

確認する場所は3つ:それぞれ見えるものが違う

場所見えるもの向いている確認見落とすこと
ソース表示(curlも同じ)サーバーが返した元のHTMLcanonical・robots・OGPが最初から入っているかJavaScriptで後から足したタグは見えない
開発者ツール(要素パネル・コンソール)JavaScriptが動いた後のページブラウザで最終的にどうなったか元のHTMLに無いタグも見えるので「入っている」と誤解しやすい
Search ConsoleのURL検査Googleが受け取ったページと、Googleの判断canonicalがGoogleに届いたか(ユーザーが指定した正規URL)タグの一覧画面は無い。インデックス登録済みか、ライブテストで登録可能なURLでないと詳細が出ない

判断の軸は1つです。canonicalについてGoogleは、<head> 内にある場合だけ受け付け、できるだけ元のHTMLに書き、JavaScriptで書き換えないよう求めています。だから「開発者ツールで見えた」は合格の根拠になりません。元のHTMLの <head> に正しい値がある状態を合格にします。

確かめる順番:5つの手順

  1. 1. ソース表示で、元のHTMLにタグがあるかを見る

    Windowsは Ctrl+U、Macは Command+Option+U でソースを開き、ページ内検索で <title、name="description"、name="robots"、rel="canonical"、og: を順に探します。canonicalとrobotsは、ここに無ければ「無い」と判断します。

  2. 2. 開発者ツールのコンソールで、描画後のタグを一覧にする

    下のコードをコンソールに貼ると、描画後のページにあるtitle・meta・canonicalを一覧にし、それぞれが <head> と <body> のどちらにあるかも出します。手順1と食い違うタグは、JavaScriptで足されたか書き換えられたものです。

  3. 3. SNSのクローラーとして取ったHTMLと比べる

    OGPはSNSのクローラーが読みます。ターミナルで User-Agent をFacebookのクローラー(facebookexternalhit)にして取ると、SNSに渡るHTMLが確かめられます。フレームワークによっては、ブラウザ向けと中身が変わります。

  4. 4. URL検査で、canonicalがGoogleに届いているかを見る

    Search ConsoleのURL検査で「ユーザーが指定した正規URL」を見ます。ページにcanonicalを書いたのにここが空なら、Googleは受け取れていません。「Googleが選択した正規URL」が別のURLなら、Googleは別のページを正規と判断しています。

  5. 5. チェックツールで、抜けと文字数をまとめて確かめる

    最後にツールで全体を見ます。ツールはサーバーが返した元のHTMLを読むので、手順1と同じ立場の結果です。描画後にしか無いタグは「無い」と出ます。それが正しい指摘か、手順2と比べて判断します。

手順2:コンソールに貼るコード

[...document.querySelectorAll('title, meta[name], meta[property], link[rel="canonical"]')]
  .map((el) => ({
    where: document.head.contains(el) ? 'head' : 'body',
    tag: el.getAttribute('name') || el.getAttribute('property') || el.getAttribute('rel') || 'title',
    value: el.getAttribute('content') || el.getAttribute('href') || el.textContent,
  }))

手順3:SNSのクローラーとして取る

curl -s -A "facebookexternalhit/1.1" https://example.com/ | grep -oE '<(title|meta|link)[^>]*(og:|description|canonical|robots)[^>]*>|<title>[^<]*'

curlの結果の読み方(scriptの中の文字に引っかかる落とし穴)はSPAはAIクローラーに読まれているかに、URL検査の状態の見分け方は検出 - インデックス未登録の原因と対処にまとめています。

タグごとの合格ラインと、直すべき状態

タグ合格直す
titleページごとに違い、主になる語が前にある無い・他のページと同じ・SVGのtitleと取り違えられている
meta descriptionページの答えを要約している無い・全ページ同じ。ただし無くても順位の減点ではなく、Googleが本文から作る
meta robotsインデックスさせたいページに noindex が無い公開ページに noindex が残っている(テスト環境の設定の消し忘れが多い)
link rel="canonical"<head> にあり、自分自身か正しい代表URLを指す<body> にある・JavaScriptで書き換わる・別ページを指している
og:title / og:description / og:image / og:urlog:image が https:// から始まる絶対URLog:image が相対パス・画像が404。SNSのクローラーには表示されない
meta viewportwidth=device-width がある無い。スマホで縮小表示になる
meta keywords確認しなくてよいGoogle検索では使われていない

直す順番は、検索に出るかどうかを決めるものから。robots(noindex)とcanonicalが先、titleとdescriptionが次、OGPとviewportがその次です。titleを整えても、Googleは本文の見出しやog:titleなども材料にして検索結果のタイトルを作るため、書いたとおりに出るとは限りません。

書き方そのものはtitleタグの書き方・meta descriptionの書き方・canonicalタグの設定・OGPタグの設定方法で解説しています。この記事は「入っているか、正しく届いているか」の確かめ方に絞っています。

落とし穴1:メタタグが <body> に出ている(このサイトで実測)

Next.js 15.2以降は、動的に描画するページで、メタタグの準備を待たずにページを送り始め、できたメタタグを <body> の末尾へ流し込みます(ストリーミング)。JavaScriptを動かせないクローラーだけには、従来どおり <head> に入れて返します。このサイトで動的に描画している5ページを2026年10月23日に確かめたところ、メタタグが <body> 側に出ていたのは診断結果の共有ページだけでした。そのページを、取り方を変えて取得した結果です。

取得したUser-Agenttitle・description・canonical・og:titleの位置
ブラウザ(Chrome)<body> の末尾
Googlebot<body> の末尾
GPTBot(OpenAI)<body> の末尾
facebookexternalhit・Twitterbot・Slackbot<head>

さらにブラウザで描画し終えた後のページを開発者ツールで見ても、4つのタグは <body> に残ったままで、<head> へは移っていませんでした。Next.jsのドキュメントは「Googlebotなど、JavaScriptを実行してDOM全体を見るボットは正しく解釈することを確認した」としています。一方でGoogleは、canonicalを <head> 内でしか受け付けないと明記しています。

判断はこうです。2つの公式の説明が食い違う箇所に、検索に出るかを左右するcanonicalを置いておく理由はありません。このサイトでは同じ日に、Next.jsの設定(htmlLimitedBots)で、すべての取得にメタタグを <head> で返すよう変えました。影響するのは動的なページだけで、静的に作っている記事やツールのページは、もともと <head> に入っていました。

自分のサイトがNext.jsなら、ブラウザのUser-Agentとfacebookexternalhitでソースを取り比べてください。<title> の位置が違えば、このストリーミングが起きています。

落とし穴2:ツールがSVGアイコンのtitleを拾う

ロゴやアイコンをSVGで埋め込むと、読み上げ用に <title> 要素を入れることがあります。ブラウザがページのtitleとして使うのは、SVGの外にある最初の <title> です。ところがタグ名だけで探すツールは、SVGの中のtitleまで拾い、ページのtitleと取り違えます。

ディレベースのチェックにもこの取り違えがありました。最後に見つけた <title> で上書きしていたため、本文にSVGのtitleがあると、そちらを報告していました。2026年10月23日に、本番と同じCloudflare Workersの環境で次の3つのHTMLを読ませ、修正前後を比べています。

ページのHTML修正前修正後
<head> にtitle、本文のSVGロゴにもtitleSVGのtitle<head> のtitle
<head> にtitleが無く、本文にSVGのtitleと本物のtitleSVGのtitle本物のtitle
SVGの中にしかtitleが無いSVGのtitletitleなし(ブラウザと同じ)

ツールでtitleが見覚えのない短い語(サイト名やロゴの名前など)になっていたら、まずソース表示で、SVGの中に <title> が無いかを確かめてください。ツールの指摘より、手順1の元のHTMLが正です。

落とし穴3:開発者ツールで見えたから大丈夫、と判断する

タグマネージャーやJavaScriptでcanonicalやdescriptionを足しているサイトでは、開発者ツールには正しく出ます。けれど元のHTMLには無いか、別の値が入っています。SNSのクローラーはJavaScriptを動かさないため、OGPを後から足しても共有時の表示には反映されません。

Googleは、元のHTMLでcanonicalを設定できない場合は、元のHTMLには入れずJavaScriptだけで設定するよう案内しています。元のHTMLとJavaScriptで違う値を出すのがいちばん悪い状態です。手順1と手順2の結果が一致しているかを、合否の基準にしてください。

関連ツール

出典(2026年10月23日に確認)

よくある質問

メタタグをいちばん手早く確認する方法は?▾
ページを開いてソース表示(Windowsは Ctrl+U、Macは Command+Option+U)にし、ページ内検索で <title、name="description"、rel="canonical"、og: を探します。ここで見えるのはサーバーが返した元のHTMLです。JavaScriptで後から書き換えるサイトでは、開発者ツールの表示と食い違うことがあります。
Search Consoleでメタタグを確認できますか?▾
タグを一覧する画面はありません。URL検査で「ユーザーが指定した正規URL」と「Googleが選択した正規URL」を見れば、canonicalがGoogleに届いているかが分かります。titleやdescriptionは、URL検査の「クロール済みのページを表示」で、Googleが受け取ったHTMLの中を探します。
ソース表示と開発者ツールで、titleやcanonicalが違うのはなぜですか?▾
ソース表示はサーバーが返した元のHTML、開発者ツールの要素パネルはJavaScriptが動いた後の状態を見せているからです。canonicalについてGoogleは、元のHTMLに入れ、JavaScriptで書き換えないよう求めています。両方が一致しているのが安全な状態です。
メタタグが <head> ではなく <body> に出ていたら問題ですか?▾
canonicalについては問題になり得ます。Googleは、rel="canonical" は <head> 内にある場合だけ受け付けると明記しています。Next.js 15.2以降は動的なページでメタタグを <body> 側へ流し込むことがあり、このサイトの共有ページでも、ブラウザで描画した後まで <body> に残っていました。設定で常に <head> に出すようにできます。
meta keywords は確認しなくていいですか?▾
Google検索では使われていません。Googleは、meta keywords はインデックス登録にも順位にもまったく影響しないと明言しています。確認するのは title・description・robots・canonical・OGP・viewport を優先してください。
チェックツールでtitleが実際と違って表示されるのはなぜですか?▾
ページの中のSVGアイコンに <title> 要素があると、ツールがそれをページのtitleと取り違えることがあります。ブラウザがページのtitleとして使うのは、SVGの外にある最初の <title> です。ディレベースのチェックにもこの取り違えがあり、2026年10月23日に修正しました。

元のHTMLに何が入っているかを、まとめて確かめる

URLを入れるだけで、title・description・canonical・OGPの有無と文字数を一覧にします。開発者ツールの結果と食い違うタグがあれば、そこが直す場所です。

メタタグをチェックする
今井政和

この記事を書いた人

今井政和

SEOディレクター / フロントエンド開発者

Web業界20年以上の経験を持つSEOディレクター。ディレベースの開発者。WordPress公式プラグイン「ORECTIC SEO CHECK」作者。著書に「三方良しで勝つ 江戸商人に学ぶ現代WEB戦略」。

@imai_director