
noindexとrobots.txtの違い|検索に出したくないページの正しい消し方
「このページ、検索結果には出したくないんだけどな…」。 サンクスページ、社内向けのお知らせ、古い会員限定ページ、テスト用に作ったページ——自社サイトを触っていると、「これは検索から見えないようにしたい」というページが、意外と出てきますよね。調べてみると「noindex」「robots.txt」という言葉が出てきて、どっちを使えばいいのか、そもそも何が違うのか、モヤモヤしたまま画面を閉じた——そんな経験はありませんか。
大丈夫です。ここは、WEB担当なら誰もが一度は迷うところです。しかも「間違えるとサイト全体が検索から消える」という話も見かけて、余計に手を出しにくいですよね。だからこそ、今日は二つの違いをはっきりさせてから、出したくないページ「だけ」を安全に下げる——そこまでを、一緒にゆっくり確認していきましょう。全部を今日やる必要はありません。違いが腹落ちするだけでも、大きな一歩です。
結論:検索結果に出したくないページは「noindex(ノーインデックス)」で下げるのが基本です。robots.txt(ロボッツテキスト)は「検索エンジンにページを読みに来させない」ための別の仕組みで、これだけでは検索結果から確実には消えません。しかも、robots.txtでブロックしたページにnoindexを付けても、読みに来られないためnoindexに気づいてもらえず、かえって消えないことがあります。まず「消したいならnoindex/読ませたくない(サーバー負荷や管理用)ならrobots.txt」と役割を分けて覚えれば十分です。
何が起きているのか
この二つがややこしいのは、名前が似ているのに、担当している仕事がまったく別だからです。順番に見ていきましょう。むずかしく考えなくて大丈夫です。
- noindex:ページ側に「このページは検索結果に載せないでください」と書いておく札です。ページの
<head>に<meta name="robots" content="noindex">という一行を入れる(またはサーバーの設定で同じ意味の指示を返す)ことで、検索エンジンが読みに来たときに「あ、これは載せないでほしいのね」と分かります。目的=検索結果に出さない。 - robots.txt:サイトの入口に置く「ここから先は見に来なくていいですよ」という案内メモです。検索エンジンの巡回プログラム(クローラー)に対して、「このフォルダは読みに来なくていい」と伝えます。目的=読みに来る量(クロール)を減らす/管理用の場所を触らせない。
ここが今日いちばん大事なところです。robots.txtは「検索結果に出さない」ための道具ではありません。 robots.txtでブロックしても、そのページに外部からリンクが張られていると、中身は読まれないまま、URLだけが検索結果に出てしまうことがあります(説明文のない、素っ気ない見え方で)。
そして、いちばんやりがちな行き違いがこれです。「検索から消したいから、robots.txtでブロックして、さらにnoindexも付けよう」。一見ていねいに見えますが、robots.txtで読みに来させないと、検索エンジンはページの中のnoindexに気づけません。札を貼った扉の前に「入るな」と書いてしまい、札そのものを見てもらえない、という状態です。結果、消えてほしいページが消えない。だから——
- 検索結果から消したい → noindexを付ける。robots.txtではブロックしない(読みに来てnoindexに気づいてもらう必要があるため)。
- 単に巡回されたくない・管理用で触らせたくない(例:検索に関係ない内部用フォルダ、負荷の大きい生成ページ)→ robots.txt。
役割を分けて考えれば、迷いはぐっと減ります。
具体例

言葉だけだと分かりにくいので、よくある場面で当てはめてみます。あなたのサイトにも、近いページがあるかもしれません。
- お問い合わせ後の「送信ありがとうございました」ページ(サンクスページ) → 検索から来てほしいページではないので、noindexが向いています。検索結果に出しても意味がなく、余計な流入がコンバージョン計測を乱すこともあるためです。
- キャンペーンが終わった古い応募ページ → まだ残す必要があるが検索には出したくないなら、noindex。完全に不要なら、そもそもページを消してリダイレクトを検討する手もあります。
- 会員だけが見る、ログインの先のページ → 基本は検索に出ない作りになっていることが多いですが、心配ならnoindexを足しておくと安心です。
- テスト用・確認用に一時的に作ったページ → 公開前ならnoindex。ただし本番公開のときに外し忘れないことが何より大切です(後述)。
- 画像の変換ファイルや管理用の内部フォルダなど、そもそも検索と無関係な場所 → 巡回されても意味がないので、robots.txtで「読みに来なくていい」と伝える出番です。
こうして並べてみると、日常で出てくる「検索に出したくない」の大半は、noindexで足りることが分かります。robots.txtは、もう少し裏方の道具だと思っておくと、ちょうどいい距離感です。
ここで、いちばん気をつけたい落とし穴をひとつ。WordPressには「設定 → 表示設定」の中に「検索エンジンがサイトをインデックスしないようにする」というチェック項目があります。これは制作・テスト中にサイト全体を検索から隠すための、いわばサイト丸ごとのnoindexスイッチです。便利な反面、本番公開のときに外し忘れると、サイト全体が検索に出なくなります。「公開したのに、いつまでも検索に出てこない」ときは、まずここを確認してみてください。責めるつもりはまったくありません。制作会社との引き継ぎでよく起きる、いわば"あるある"です。気づけたら、チェックを外して保存するだけで直せます。
あなたへの影響
- 「消したいならnoindex」と役割で選べるようになると、robots.txtをむやみに触ってサイト全体を巻き込む事故を避けられます。
- サンクスページなどを検索から下げておくと、意味のない流入が減り、GA4のコンバージョン計測や数字が少し読みやすくなります。
- 「なぜか公開したページが検索に出ない/出したくないページが出ている」の原因を、落ち着いて切り分けられるようになります。
明日やること
一度に全部やらなくて大丈夫です。まずは「今の状態を知る」ところから、ひとつだけ。
- サイト全体が隠れていないか確認する:WordPressなら「設定 → 表示設定」で「検索エンジンが〜インデックスしない」にチェックが入っていないかを見る。公開中のサイトで入っていたら、それが最優先の確認ポイントです。
- 出したくないページを1つだけ書き出す:サンクスページなど、「これは検索に出したくない」ページを紙かメモに1つ挙げる。今日はここまででも十分です。
- そのページにnoindexを付ける:CMSやSEOプラグインに「このページを検索結果に表示しない(noindex)」といった設定項目があることが多いので、まずはそこを探してオンにする。手で書ける場合は
<head>に<meta name="robots" content="noindex">を一行。付けたあとの反映確認は、インデックスされているかの確認方法やSearch Consoleで、あとから追っていけば大丈夫です。
反映は「すぐ」ではありません。noindexを付けても、検索エンジンが次に読みに来て気づくまで、数日〜数週間かかることがあります。当日消えなくても、失敗ではありません。焦らず、Search Consoleで少しずつ確認していきましょう。急いで消したいときは、Search Consoleの「削除」ツールで一時的に非表示にする方法もあります(あくまで一時措置で、恒久対応はnoindexです)。
チェックリスト
まずは上の「1」だけで合格です。残りは、時間があるときに・慣れてきたらで大丈夫。できていない項目に×を付ける必要はありません。
まずはこれだけ(必須)
- 公開中のサイトが、丸ごとnoindex(サイト全体の非表示スイッチ)になっていないか確認した
できれば(推奨)
- 検索に出したくないページを1つ書き出した
- そのページにnoindexを設定した(CMS/プラグインの項目、または
<head>の一行) - 「消したいページはrobots.txtでブロックしていない」ことを確認した(noindexに気づいてもらうため)
慣れてきたら/時間があれば(任意・なければスキップ可)
- robots.txtは「巡回させたくない管理用の場所」に限って使っているか見直した
- テスト・確認用ページの公開後にnoindexを外し忘れていないか確認した
- noindexの反映をSearch Consoleで確認する習慣をつけた

noindexとrobots.txtは、名前が似ているだけで、やっている仕事はまったく別ものです。「検索から消したいならnoindex、巡回させたくないだけならrobots.txt」——この一言さえ持って帰ってもらえれば、今日はもう十分です。
「間違えたらサイトが消える」と身構えていた設定も、役割さえ分かってしまえば、怖いものではありません。今日、二つの違いが少し腑に落ちたなら、あなたはもう、あわてず切り分けられる担当者です。焦らず、ひとつずつで大丈夫です。