タグやX-Robots-Tagヘッダーの値を貼り付けるだけでディレクティブを一括検証。noindexとindexの併記など矛盾する指定や、max-snippet等の値の誤りを検出し、ディレクティブごとの内訳を一覧表示します。" />

robots metaタグ/X-Robots-Tag チェッカー

タグやX-Robots-Tagヘッダーの値を貼り付けるだけでディレクティブを一括検証。noindexとindexの併記など矛盾する指定や、max-snippet等の値の誤りを検出し、ディレクティブごとの内訳を一覧表示します。

クロールとインデックスの指示を点検する

`` と `X-Robots-Tag` は、検索エンジンに対して「このページをインデックスするな」「リンクをたどるな」といった指示を伝えるものです。このツールは値を貼り付けるだけでディレクティブを分解し、矛盾する指定や値の誤りを洗い出して、内訳を一覧にします。

**まず押さえたいのは、矛盾した指定を書いた場合は制限の強いほうが採られるという点です。** `index, noindex` のように両方書けば `noindex` が勝ちます。**そして最も多い事故が、`noindex` を付けたページを robots.txt で同時に拒否してしまうことです。** クローラーはそのページを取得できなくなるため、**`noindex` という指示自体を読めず、結果としてインデックスから消えません。** 消したいページは、クロールを許したうえで `noindex` を読ませる必要があります。なお `X-Robots-Tag` は HTTP ヘッダーなので、HTML を持たない PDF や画像にも指示を出せます。

使い方

  1. 値を貼り付ける `` タグの形でも、`X-Robots-Tag:` 付きでも、ディレクティブだけでもかまいません。
  2. サンプルで挙動を確かめる 良い例と悪い例が用意してあります。
  3. 矛盾と誤りを読む **`noindex` と `index` の併記や、`max-snippet` などの値の誤りが指摘されます。**
  4. 内訳の一覧を確認する どのディレクティブが効いているのかを分解して見られます。

使いこなすためのヒント

  • noindexとrobots.txtのdisallowを同時に設定するのは避けましょう。disallowでクロール自体をブロックすると、クローラーはページ内のnoindexタグを読み取れず、インデックス削除が意図通りに進まないことがあります。
  • Googleは認識できないディレクティブ名をエラーにせず単に無視します。そのため未知のディレクティブが混ざっていても致命的ではありませんが、typoに気づけないままになるため確認は重要です。
  • max-snippet:-1・max-video-preview:-1は「無制限」を意味する特別な値です。0は「スニペットを一切表示しない」という別の意味になるため混同しないよう注意してください。
  • X-Robots-TagヘッダーはPDFや画像等、HTML以外のファイルにもnoindex等の指示を出せる唯一の方法です。metaタグはHTML文書にしか埋め込めません。
  • 複数のディレクティブを併記する場合はカンマ区切りで1つのcontent属性・ヘッダー値にまとめます。同じ名前のmetaタグを複数書いても後勝ちにはならず、両方が個別に評価されるため注意が必要です。

活用シーン

テスト環境の公開事故を防ぐ

**`noindex` が本当に効いているかを、公開前に確かめられます。**

インデックスから消えない原因を探る

**robots.txt での拒否と `noindex` を併用していないかを見直す手がかりになります。**

検索結果の見え方を調整する

`max-snippet` や `max-image-preview` の指定が正しいかを確認できます。

PDFなどの扱いを決める

HTMLを持たないファイルには `X-Robots-Tag` を使う必要があります。

robots指示の用語

noindex
検索結果に出さないよう求める指示です。**robots.txt で拒否すると読まれないため、併用してはいけません。**
nofollow
そのページ上のリンクをたどらないよう求める指示です。
noarchive
キャッシュされたページを検索結果に出さないよう求める指示です。
max-snippet
検索結果に表示する説明文の最大文字数を指定します。`0` で抑制、`-1` で制限なしです。
max-image-preview
画像プレビューの大きさを `none`・`standard`・`large` から指定します。
X-Robots-Tag
同じ指示を **HTTPヘッダーで返す方式**です。PDF や画像など HTML を持たない資源に使えます。

よくある質問

robots.txtはクローラーがそのURLを取得してよいかどうかをサイト単位・URLパターン単位で制御するファイルです。robots metaタグ(X-Robots-Tagヘッダー含む)はクロール済みのページをインデックスに登録してよいか・ページ内のリンクを辿ってよいかをページ単位で制御します。前者はクロールの可否、後者はインデックス・リンク追跡の可否という別の段階を担っています。

noindexは検索結果からそのページを除外するようGoogleに指示します。nofollowはそのページ内にあるリンクを辿らない(リンク先のクロールに使わない)よう指示します。両方を組み合わせると、ページ自体を検索結果に出さず、かつページ内リンクの評価も伝播させないという厳格な設定になります。

metaタグはHTML文書にしか埋め込めないため使えませんが、X-Robots-TagはHTTPレスポンスヘッダーとして返すため、PDF・画像・動画等どんな形式のファイルにも指定できます。Webサーバーの設定でファイル拡張子ごとに一括付与するのが一般的な運用方法です。

検索結果に表示される説明文(スニペット)の最大文字数を制御できます。ニュース記事の冒頭だけを見せたい、あるいは有料コンテンツの本文が丸ごと表示されるのを防ぎたいといったケースで、nosnippet(表示を完全にオフ)ほど厳しくせず表示量を細かく調整したいときに有用です。

設定自体は可能ですが期待通りに動作しません。robots.txtでdisallowするとクローラーはそのページを取得できなくなるため、ページ内に書いたnoindexタグを読み取る機会がなく、結果としてインデックスからの削除が進まないことがあります。ページを検索結果から除外したい場合は、クロールは許可したままnoindexだけを使うのが正しい方法です。
ツールくん

余談ですが ― robots.txtとrobots metaタグは何が違うのか ― クロールとインデックスの分業

robots.txtとrobots metaタグはどちらも検索エンジンへの指示に使われますが、担当する段階が異なります。robots.txtは「クロールしてよいか」をURLパターン単位で制御するファイルで、サイトのルートに設置する静的なテキストです。一方robots metaタグ(およびX-Robots-Tagヘッダー)は「クロール済みのページをインデックスしてよいか・リンクを辿ってよいか」をページ単位で細かく制御する仕組みで、両者は独立したレイヤーとして機能します。

この分業構造ゆえに、robots.txtでdisallowしたページにnoindexタグを書いても効果はありません。クローラーがそもそもそのページを取得できないため、ページ内に書かれたnoindexの指示を読み取る機会自体がないからです。ページを検索結果から除外したい場合は、クロール自体は許可したままnoindexディレクティブだけを使う必要があります。

X-Robots-Tagヘッダーは2007年頃にGoogleが導入した仕組みで、metaタグが使えないPDF・画像・動画等の非HTMLリソースに対しても同様の制御を可能にしました。Apache等のWebサーバー設定でファイル拡張子ごとに一括付与できるため、大量のPDFファイルを一括でnoindexにするといった運用にも向いています。

max-snippet・max-image-preview・max-video-previewといった値付きディレクティブは比較的新しく、2019年にGoogleが検索結果のスニペット表示に関するポリシーを整理した際に追加されました。それ以前はnosnippetで表示を完全にオフにするしかなかったため、表示量を細かく調整できるようになったのはパブリッシャーにとって歓迎すべき変更でした。