SEO内部対策とは SEO内部対策チェックリスト

SEO内部対策とは SEO内部対策チェックリスト

SEO対策は階層構造やフッターが重要?最適な内部施策を紹介

「内部対策とは何か分からない」「内部対策では、具体的に何をすればよいのか分からない」とお悩みではありませんか?

SEOの内部対策とは、Googleなどの検索エンジンとユーザーの両方に内容が伝わりやすくなるよう、サイト運営者が自分のサイトの中身(HTMLの記述、ページ同士のリンク、URL、表示速度、スマートフォン向けの表示など)を整える施策です。

この記事では、サイト運営者や制作担当者に向けて、内部対策の意味と目的、確認用のチェックリスト、やってはいけないNG例、WordPressなどのCMSでできること・できないことを、HTMLの記述例つきで説明します。説明は、Googleの公式ドキュメントのページなどで実際に確認できた内容に基づいています。

この記事の前提

  • 検索エンジンは、日本で利用者の多いGoogleの検索を対象にします。Google以外の検索エンジンの仕様は扱いません。
  • CMS(コンテンツ管理システム)とは、管理画面から記事やサイトを編集できるツールのことです。この記事では、代表的なCMSであるWordPressを例にします。他のCMSでも考え方は同じですが、操作する画面は異なります。
  • Googleの仕様の説明は、2026年10月6日に確認したGoogle検索セントラル(Googleが公開している、サイト運営者向けの公式ドキュメント)に基づきます。仕様は変更されることがあります。
  • 「サイト運営者」とは、サイトを公開・管理する人を指し、社内の担当者や制作会社を含みます。
  • 記事内の「ここから例」から「ここまで例」までの囲みは、書き方の例を示しています。実際に使うときは、囲みの線や「ここから例」などの文言は含めず、中身だけを使用する想定です。
目次

【保存版】SEO内部対策チェックリスト

最初に、内部対策の全体像を1枚の表にまとめます。自社サイトの状態を確認してください。各項目の意味ややり方は、表のあとの各セクションで詳しく説明します。

☐分類項目サイト運営者がやること優先度WordPress
☐クロール内部リンクとアンカーテキストサイト内の関連するページ同士を、リンク先の内容が分かる言葉(アンカーテキスト)でリンクする★★★◎
☐クロールテキストのナビ・フッターメニュー(ナビゲーション)とフッターのリンクを、画像ではなく文字のリンクで作る★★○
☐クロールパンくずリスト「トップページ>カテゴリ>記事」のように、閲覧中のページの位置を画面に表示し、同じ内容を構造化データでも記述する★★○
☐クロール階層(クリック数)重要なページに、トップページから2〜3回のクリックで到達できるようにする★★○
☐クロールXMLサイトマップ・robots.txtサイトマップでGoogleに重要なURLの一覧を伝え、robots.txtで巡回してほしくない場所を伝える★★◎
☐クロールリンク切れ・301リダイレクト存在しないページへのリンクを直し、URLを変更・統合したときは、古いURLから新しいURLへ301リダイレクトで転送する★★○
☐クロールページ間のリンクをJavaScriptだけに頼らないリンクと本文をHTMLに出力し、リンクはhref属性を持つa要素で作る★★★△
☐インデックスインデックス状況の確認Search Consoleで、各ページがGoogleに登録されているかと、登録されていない理由を確認する★★★○
☐インデックスcanonical(正規化)同じ内容のURLが複数あるとき、代表にするURLをcanonicalタグで指定し、代表のページ自身にも自分のURLを指すcanonicalタグを置く★★★◎
☐インデックスnoindexの管理検索結果に出したくないページにだけnoindexを指定し、重要なページに誤って指定されていないか点検する★★★○
☐インデックス404ページ(ソフト404)存在しないURLに対して、HTTPステータスコード404を返し、利用者向けの案内ページを表示する★★○
☐情報伝達タイトルタグページごとに固有で、内容と対策キーワードが分かるタイトルタグを書く★★★◎
☐情報伝達メタディスクリプションページ内に何が書かれているかの説明文。重要なページには、検索結果でクリックされやすい要約文を書く。他のページと重複しないようにする。★○
☐情報伝達見出し構造(h1〜h3)見出しタグ(h1〜h3)で、ページの内容を階層的に要約する★★◎
☐情報伝達本文のテキスト化・画像のalt重要な情報を画像ではなく文字で書き、画像には内容を説明するalt属性を付ける★★◎
☐情報伝達URLの設計内容が分かる短いURLにし、公開後はむやみに変更しない★★◎
☐情報伝達構造化データページの内容(パンくず、記事など)を、JSON-LDという形式で検索エンジンに伝える★○
☐ユーザビリティ表示速度(Core Web Vitals)ページの表示体験を測る3つの指標(Core Web Vitals)を確認し、画像の軽量化などで改善する★★△
☐ユーザビリティモバイル表示スマートフォン向けの表示にも、PC向けの表示と同じ本文・見出し・メタ情報・構造化データを出す★★★△
☐ユーザビリティHTTPS・読みやすい文字サイズサイト全体をHTTPS(通信を暗号化する方式)で配信し、本文の文字サイズを14px以上(18px推奨)にする★★△

※優先度の見方:星の数が多い項目ほど、一般的に優先して実施したほうがよいとされています。

※WordPress(代表的なCMS)欄の見方:◎は、WordPressの標準機能でできる項目です。○は、WordPressの設定やプラグイン(機能を追加する拡張ソフト)でできる項目です。△は、テーマ(サイトの見た目と構造を決めるテンプレート)の編集や、サーバー側の設定が必要になることがある項目です。詳しくは、後半の「CMSでできる内部対策と、できない内部対策」で説明します。

実施されているかどうかのチェックは、優先度が★★★の項目から始め、次に★★、★の順に進めるのがおすすめです。

SEOの内部対策とは(言葉の意味)

SEOの内部対策とは

内部対策とは?

内部対策(内部SEO、オンページSEOとも呼ばれます)とは、サイト運営者が自分のサイトの中で直せる要素を整えて、検索エンジンがそのサイトの内容を「見つけ、理解し、評価する」ことを助ける施策です。

対象になるのは、HTMLのタグ、ページ同士のリンク、URL、表示速度、スマートフォン向けの表示など、サイトの内部にあるものです。

内部対策の目的は、順位を上げる裏技を使うことではありません。ページに書かれている必要な情報が、検索エンジンやユーザーに伝わっていない状態を、サイト運営者が解消することです。Googleも、SEO(検索エンジン最適化)とは、検索エンジンにコンテンツを理解してもらうための取り組みだと説明しています。

内部対策で使う用語

この記事で繰り返し出てくる用語の意味を、先に整理します。ほかのSEO用語は、SEO・LLMO用語集もご覧ください。

用語意味内部対策との関係
検索エンジンユーザーが入力した言葉に合うWebページを探して表示する仕組み。この記事ではGoogleを指します内部対策で、情報を伝える相手
クローラー(Googlebot)Googleがページを巡回して情報を集めるプログラム。ページ内のリンクをたどって、次のページへ移動しますリンクの作り方によって、たどれるかどうかが決まる
クロールクローラーがページを訪れて、内容を読み取ることサイト構造やリンクが影響する
インデックス(登録)クロールで読み取った内容を、Googleのデータベースに登録すること。登録されていないページは、検索結果に表示されませんnoindexやcanonicalの設定が影響する
正規化同じ内容のページに複数のURLがあるとき、代表にするURLを1つ決めることcanonicalタグや301リダイレクトで指定する
ソフト404存在しないページなのに、画面には「ページが見つかりません」と表示し、システム上は正常を意味するHTTPステータスコード200を返している状態404ページの作り方で起こりやすい
スニペット検索結果で、タイトルの下に表示される説明文ページ本文やメタディスクリプションから作られる
構造化データページの内容を、検索エンジンが読み取りやすい決まった形式(主にJSON-LD)で書き添えたものパンくずリストなどで使う
Search ConsoleGoogleが無料で提供する、サイト運営者向けの管理ツール。インデックスの登録状況や、検索での表示状況を確認できます内部対策ができているかの確認に使う
AIO(AI Overviews)Googleの検索結果ページに、AIが作成した回答の要約と、参照元ページへのリンクを表示する機能参照元に選ばれるには、ページがインデックスされていることが前提

内部対策の対象範囲(どこまでが内部対策か)

「内部対策」という言葉が指す範囲は、定義によって異なります。この記事では、内部対策の範囲を次の表のように定義します。

領域主な内容この記事の内部対策に含むか
内部対策HTMLの記述、サイト構造、リンク、URL、表示速度、モバイル表示、インデックスの制御含む(この記事の対象)
テクニカルSEOクロール、インデックス、表示速度、JavaScript対応など、技術面の施策含む(内部対策のうち、技術寄りの部分)
コンテンツSEO検索意図に応える文章の中身、網羅性、独自の情報、情報の新しさ含まない(別の領域。ただし、内部対策と一体で進める)
外部対策他のサイトからの被リンク(自社サイトへのリンク)や言及含まない(自社サイトの外側の施策)

E-E-A-T(経験・専門性・権威性・信頼性という、コンテンツを評価する観点)や、読者にとっての役立つ度合いは、サイトの構造ではなく、文章や情報の質に関わります。そのため、この記事では内部対策に含めません。なお、GoogleはE-E-A-Tそのものをランキング要因とは説明していません。

また、内部対策だけで検索順位が決まるわけではありませんが、実施されていないと検索エンジンが正しくサイトを読み取れなかったりすることで、検索結果に表示されなかったりすることがあります。内部対策は、コンテンツや外部対策が正しく評価されるための土台にあたります。

内部対策をする意味と、実施することの大切さ

内部対策を実施する意味:検索結果に表示されるまでの3段階

Googleは、次の3段階を経て、ページを検索結果に表示します。

  1. クロール:クローラーが、リンクをたどってページを見つけ、内容を読み取る
  2. インデックス登録:Googleが、読み取った内容をデータベースに登録する
  3. 検索結果の提供:ユーザーが検索したときに、Googleが登録済みのページから適切なものを選んで表示する

内部対策には、1と2のステップでつまづかないようにし、3で正しく評価してもらうための土台をつくる意味があります。どんなに質の高いコンテンツを作っても、クロールされなければGoogleに見つけてもらえず、インデックス登録されなければ検索結果には表示されません。

内部対策が不十分だと起きること(失敗パターン4つ)

  1. サイト運営者がJavaScriptだけでリンクを作ると、クローラーがそのリンクをたどれず、リンク先のページがGoogleに見つけてもらえない(インデックスされない)
  2. サイト運営者が制作中に付けたnoindex(検索結果に出さない指定)を外し忘れたまま公開すると、そのページが検索結果に表示されない
  3. サイト運営者がcanonicalタグの指定を誤ると、評価してほしいページとは別のURLが、代表のURLとして扱われてしまう(サイト内容が同じとして指定しているページが間違えている状態になってしまう)
  4. 同じ内容のURLが複数あるのに整理していないと、Googleのクロールが重要でないURLに使われたり、リンクなどの評価が複数のURLに分散したりする

自分のサイトが検索結果に表示されないとき、原因が内部対策の基本部分にあるケースは少なくありません。

内部対策を実施することの大切さ

コンテンツの質と内部対策は、掛け算の関係にあります。内部対策に問題があると、質の高い記事でも、検索結果に表示されなくなることがあります。

この関係は、AI検索の時代になっても変わりません。Googleは、AIO(AI Overviews)やAIモードで参照元として表示されるために必要な技術要件は、「ページがインデックスされていること」と「検索結果にスニペット(ページ説明文)つきで表示できること」だけで、追加の技術要件はないと説明しています。AI向けの特別なマークアップも不要だとしています。つまり、AI検索で参照されるためにも、インデックスされる土台をつくる内部対策が前提になります。

SEOタイムズの独自研究データ(SEOタイムズを運営するGMOインターネットがSEO対策を行っている50,443キーワード、2026年1月〜8月の調査)では、2026年8月7日時点で、Google検索で1位だったキーワードのうち84%で、AIOの参照元に表示されました。11位以下のキーワードでは、3.9%でした。順位が高いほど、AIOに参照されやすい傾向が見られます。ただし、この数字は順位と参照率の相関を示すものであり、順位が高いことが参照の原因だと示すものではありません。また、業種やキーワードによって異なる参考値です。

内部対策の具体的な施策(記述例つき)

SEO内部対策の具体的な施策

チェックリストの各項目を、「クロール」「インデックス」「情報伝達」「ユーザビリティ」の4つの分類に分けて説明します。各項目では、「何をするか」「記述例」「CMS(コンテンツ管理システム/管理画面があるツール)での対応方法」の順に説明します。

クローラーに見つけてもらう内部対策(クロール)

Googleのクローラーは、ページ内のリンクをたどって、新しいページを見つけ、内容を集めます。この分類は、クローラーがサイト内を迷わず巡回できるようにするための内部対策です。

内部リンクとアンカーテキスト

内部リンクとは、同じサイト内のページ同士をつなぐリンクです。アンカーテキストとは、リンクとして表示される文字のことです。

Googleは、主に、すでに見つけたページの中のリンクをたどって、新しいページを見つけます。そのため、サイト運営者は、検索結果に表示させたいページに、同じサイト内の別のページから少なくとも1本はリンクを張ることが推奨されています。

アンカーテキストは、リンク先のページの内容が分かる、具体的な言葉にします。「こちら」「詳細」だけでは、リンク先に何が書かれているのかが、ユーザーにも検索エンジンにも伝わりません。次の例は、良い書き方と悪い書き方を比べたものです。

ここから例
━━━━━━━━━━━━━━━━━━━━
【良い例】リンクの文字から、リンク先の内容が分かる
canonicalタグの書き方は、<a href="/canonical/">canonicalタグの書き方と注意点</a>で説明しています。

【悪い例】リンクの文字だけでは、リンク先の内容が分からない
canonicalタグについては<a href="/canonical/">こちら</a>をご覧ください。
━━━━━━━━━━━━━━━━━━━━
ここまで例

アンカーテキストに、対策キーワードを不自然に詰め込むのは避けてください。また、1ページに入れるリンクの数について、Googleが示している決まった理想の値はありません。

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、記事の編集画面で、リンクを挿入する操作を行うだけで設定できます(◎)。

テキストのナビゲーション・フッター

ナビゲーションとは、サイト上部などに表示されるメニューです。フッターとは、各ページの最下部の領域です。サイト運営者は、この2つのリンクを、画像ではなく、文字のリンク(aタグ)で作ります。文字のリンクのほうが、検索エンジンにもユーザーにも、リンク先の内容が伝わりやすいためです。

なお、フッターにリンクを置くこと自体が、検索順位を上げるわけではありません。フッターへのリンクの設置は、ユーザーがサイト内を回遊しやすくし、重要なページへの導線を確保するための施策です。

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、管理画面の「外観」からメニューを作ると、文字のリンクで作れます。画像でメニューを作っているテーマを使っている場合は、テーマ側の修正が必要です(○)。

パンくずリスト

パンくずリストとは、閲覧中のページが、サイトのどの階層にあるのかを示す案内です。ユーザーは、現在位置を把握しやすくなります。サイト運営者が、同じ内容を構造化データ(後述)でも記述すると、検索エンジンにも階層を伝えやすくなります。次の例は、画面に表示するパンくずリストのHTMLです。

ここから例
━━━━━━━━━━━━━━━━━━━━
<nav aria-label="パンくずリスト">
  <ol>
    <li><a href="/">トップページ</a></li>
    <li><a href="/category/onpage-seo/">内部対策SEO</a></li>
    <li>SEO内部対策とは</li>
  </ol>
</nav>
━━━━━━━━━━━━━━━━━━━━
ここまで例

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、パンくずリストの機能を持つテーマが多くあります。持たないテーマを使っている場合は、プラグインで追加します(○)。

階層(クリック数)を浅くする

Googleの公式ガイドには、「サイトの階層を何段までにする」という基準は示されていません。そのため、ここでは実務上の目安として、重要なページに、トップページから2〜3回のクリックで到達できる構造にすることをおすすめします。トップページから遠いページは、クローラーにもユーザーにも見つけてもらいにくくなるためです。

階層の深さは、URLに含まれるスラッシュの数ではなく、「トップページから何回のクリックで到達できるか」で数えます。次の例は、クリック数で数えたサイト構造の例です。

ここから例
━━━━━━━━━━━━━━━━━━━━
トップページ
├ 製品情報(1クリック)
│  ├ 製品①(2クリック)
│  │  └ ①の機能詳細(3クリック)
│  ├ 製品②(2クリック)
│  └ 製品③(2クリック)
├ ニュース・IR(1クリック)
│  └ 年度(2クリック)
├ 会社概要(1クリック)
├ 求人情報(1クリック)
└ ポリシー、特定商取引法に基づく表記、関連リンクなど(1クリック)
━━━━━━━━━━━━━━━━━━━━
ここまで例

なお、数千以上のURLを持つ大きなサイトでは、似たトピックのページを同じディレクトリ(URLの途中の区切り)にまとめると、Googleがディレクトリごとの更新頻度を学習しやすくなると、Googleは説明しています。小さなサイトでは、ここまで気にする必要はありません。

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、カテゴリの設計と、トップページやサイドバーからのリンクで調整できます(○)。

XMLサイトマップとrobots.txt

XMLサイトマップは、サイト内の重要なURLの一覧を、Googleに伝えるファイルです。サイトマップの用意は必須ではなく、CMSが自動で作る場合も多くあります。

robots.txtは、サイト運営者が、クローラーに巡回してほしくない場所を伝えるためのファイルです。ただし、robots.txtでクローラーをブロックしても、そのURLが検索結果から確実に消えるわけではありません。また、robots.txtは、正規化(代表のURLを決めること)の目的では使えません。次の例は、WordPressの管理画面をブロックし、サイトマップの場所を伝えるrobots.txtです。

ここから例
━━━━━━━━━━━━━━━━━━━━
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

Sitemap: https://example.com/wp-sitemap.xml
━━━━━━━━━━━━━━━━━━━━
ここまで例

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、バージョン5.5以降は、サイトマップ(/wp-sitemap.xml)が標準機能で作られます(◎)。robots.txtは、SEOプラグインなどで編集できます。

リンク切れの修正と301リダイレクト

リンク切れとは、存在しないページへのリンクのことです。リンク切れがあると、ユーザーは行き止まりになり、クローラーの巡回にも無駄が生じます。サイト運営者は、リンク切れチェックツールやSearch Consoleで見つけ、こまめに直します。なお、Googleが「リンク切れがあるとサイト全体の評価が下がる」と公式に述べているわけではないため、この記事では、ユーザー体験とクロール効率の問題として扱います。

サイト運営者が、ページのURLを変更したり、複数のページを統合したりしたときは、古いURLから新しいURLへ、301リダイレクト(恒久的な転送)を設定します。301リダイレクトを設定すると、古いURLにアクセスしたユーザーとクローラーが、自動的に新しいURLへ移動します。次の例は、Apacheというサーバーソフトの設定ファイル(.htaccess)に書く場合です。

ここから例
━━━━━━━━━━━━━━━━━━━━
# 古いURL(/old-page/)から、新しいURLへ301リダイレクトする
Redirect 301 /old-page/ https://example.com/new-page/
━━━━━━━━━━━━━━━━━━━━
ここまで例

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、数が少なければ、リダイレクト用のプラグインで設定できます(○)。大量のURLを一括で転送する場合は、サーバー側の設定が必要です。

ページ間のリンクをJavaScriptだけに頼らない

Googleが確実にリンクとして認識できるのは、href属性を持つa要素(aタグのhrefの部分に、移動先のURLを書いたリンク)です。サイト運営者が、JavaScriptの動作だけでページを移動させる作りにすると、クローラーがリンク先のURLを取得できず、その先のページを見つけられないことがあります。

ここから例
━━━━━━━━━━━━━━━━━━━━
【良い例】クローラーが、リンク先のURLを取得できる
<a href="/products/shoes">シューズ一覧</a>

【悪い例】リンク先のURLが、HTMLに書かれていない
<span onclick="goto('/products/shoes')">シューズ一覧</span>
━━━━━━━━━━━━━━━━━━━━
ここまで例

JavaScriptで本文やリンクを表示している場合は、Search Consoleの「URL検査」で、Googleから見た表示結果に、本文とリンクが含まれているかを確認してください。

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、標準的なテーマでは、ほとんど問題になりません。JavaScriptを多用する独自のテーマを使っている場合は、制作担当者による確認が必要です(△)。

適切にインデックスしてもらう内部対策(インデックス)

クローラーが読み取った情報は、Googleのデータベースに登録(インデックス)されて、はじめて検索結果に表示されます。ただし、Googleは、すべてのページを必ずインデックスするとは保証していません。この分類は、サイト運営者が、インデックスされる状態と、されない状態を、意図どおりにコントロールするための内部対策です。

インデックス状況を確認する

サイト運営者は、まず、自分のサイトのページがGoogleにインデックスされているかを確認します。確認方法は2つあります。

  • Googleの検索窓に「site:自社のドメイン」(例:site:seotimes.jp)と入力し、自社のページが表示されるかを見る
  • Search Consoleの「URL検査」と「ページのインデックス登録」レポートで、各ページの登録状況と、登録されていない理由を確認する

登録されていないページがあるときは、除外の理由を確認して原因を直し、Search Consoleの「URL検査」から、登録をリクエストします。

canonicalで代表のURLを伝える

同じ内容のページが、複数のURLで表示できる場合があります。たとえば、パラメーター付きのURL(末尾に「?」以降の文字が付いたURL)と、付いていないURLです。このとき、サイト運営者が、代表にしたいURLをGoogleに伝えることを「正規化」と呼びます。

Googleに伝える方法は3つあり、シグナル(Googleが判断に使う手がかり)として強い順に、「リダイレクト」「canonicalタグ」「サイトマップへの記載」です。いずれも必須ではなく、指定しなくても、Googleが自動で代表のURLを判断します。

同じ内容のページが複数のURLにあっても、Googleのスパムポリシー違反(ペナルティの対象)にはなりません。ただし、ユーザーが混乱したり、重要でないURLにクロールが使われたりするため、サイト運営者が整理しておくことをおすすめします。次の例は、代表のURLを指定するcanonicalタグです。HTMLのhead(ページの情報を書く部分)に書きます。

ここから例
━━━━━━━━━━━━━━━━━━━━
<head>
  <link rel="canonical" href="https://example.com/seo-onpage/" />
</head>
━━━━━━━━━━━━━━━━━━━━
ここまで例

canonicalタグを書くときのポイントは、次の5つです。

  • コピーとして指定するページ側に、代表となるページのURLを指すcanonicalタグを置く
  • 代表となるページ自身にも、そのページ自身のURLを指すcanonicalタグを置く(自己参照)
  • 「/seo-onpage/」のような相対パスではなく、「https://」から始まる絶対URLで書く
  • サイト内のリンクは、重複したURLではなく、代表のURLに向ける
  • 正規化の代わりに、robots.txtやnoindexを使わない

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、投稿ページには、そのページ自身のURLを指すcanonicalタグが標準で出力されます(◎)。別のURLを指定したいときは、SEOプラグインで設定します。なお、複数のプラグインが同時にcanonicalタグを出力していないか、確認してください。

noindexを正しく使う

noindexとは、「このページを検索結果に表示しない」とGoogleに伝える指定です。サイト運営者は、会員ページ、問い合わせ完了ページ、社内用ページなど、検索結果に表示させたくないページにだけ、noindexを指定します。検索結果に表示させたい重要なページに誤って指定すると、そのページは検索結果に表示されなくなります。

ここから例
━━━━━━━━━━━━━━━━━━━━
<meta name="robots" content="noindex" />
━━━━━━━━━━━━━━━━━━━━
ここまで例

noindexの指定は、クローラーがそのページを読み取れたときに、はじめてGoogleに伝わります。robots.txtでそのページへのクロールをブロックしていると、クローラーがnoindexの指定を読めません。そのため、同じページにnoindexとrobots.txtのブロックを併用しないでください。

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、ページごとの指定を、SEOプラグインで設定できます(○)。一方、管理画面の「設定」→「表示設定」にある「検索エンジンがサイトをインデックスしないようにする」は、サイト全体に効きます。公開前のテスト中に付けたチェックを外し忘れたまま、公開しないでください。

404ページ(ソフト404)に注意する

存在しないURLにアクセスされたとき、サイトは、HTTPステータスコード404(ページが存在しないことを示す番号)を返します。同時に、ユーザー向けの案内ページ(「ページが見つかりません」の表示と、トップページや人気記事へのリンク)を表示します。

注意が必要なのは、画面には「ページが見つかりません」と表示しているのに、HTTPステータスコードが正常を意味する200になっている「ソフト404」です。この状態では、検索エンジンが、存在しないページを存在するページと誤解します。また、存在しないURLをすべてトップページへ転送する設定も、避けてください。

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、存在しないURLには、標準でステータスコード404が返されます。テーマの404ページを自分で作り込んだときは、ブラウザの開発者ツールなどで、ステータスコードが404のままかを確認してください(○)。

Googleに情報をわかりやすく伝える内部対策(情報伝達)

この分類は、クローラーが読み取ったページの内容を、Googleが正しく理解できるよう、サイト運営者がページの内容を整理して伝えるための内部対策です。

タイトルタグ

タイトルタグ(HTMLのtitle要素)とは、ページのタイトルを指定するタグです。Googleは、タイトルタグの内容を主な材料にして、検索結果に表示する見出し(タイトルリンク)を作ります。サイト運営者は、そのページ固有で、内容を明確かつ簡潔に表したタイトルを書きます。対策キーワードは、不自然にならない形で入れます。

タイトルの文字数について、Googleが決めている上限はありません。ただし、検索結果での表示幅には限りがあり、長いタイトルは途中で省略されることがあります。そのため、重要な言葉は、タイトルの前のほうに置きます。また、Googleは、タイトルタグだけでなく、ページ内の見出しなども使ってタイトルリンクを作るため、サイト運営者が書いたタイトルと異なる文言が、検索結果に表示されることもあります。

ここから例
━━━━━━━━━━━━━━━━━━━━
<title>SEO内部対策とは?内部対策のチェックリストとNG例|SEOタイムズ</title>
━━━━━━━━━━━━━━━━━━━━
ここまで例

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、記事のタイトルが、そのままタイトルタグになります。記事のタイトルとは別の文言をタイトルタグに設定したいときは、SEOプラグインを使います(◎)。

メタディスクリプション

メタディスクリプションとは、ページの内容を短く説明する文章を指定するタグです。Googleは、この文章を、検索結果のスニペット(タイトルの下の説明文)の候補として使うことがあります。ただし、スニペットは、ページ本文の内容から作られることも多く、メタディスクリプションが使われないこともあります。メタディスクリプションは、検索順位を上げるための要素ではありません。

SEOタイムズのニュース記事(2026年6月30日)は、Googleのジョン・ミューラー氏が、メタディスクリプションは書かなくてもペナルティを受けず、必須ではないと説明したと報じています。同時に、重要なページには書く価値があるとも述べたと伝えています。

ここから例
━━━━━━━━━━━━━━━━━━━━
<meta name="description" content="SEO内部対策とは、検索エンジンとユーザーに伝わるようにサイトの中身を整える施策です。チェックリストとNG例を説明します。" />
━━━━━━━━━━━━━━━━━━━━
ここまで例

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、SEOプラグインで、記事ごとに設定できます(○)。

見出し構造(h1〜h3)

見出しタグとは、ページの内容を階層的に区切るタグです。読み手は、見出しを見ただけで、ページの全体像を把握できます。一般的には、h1をページ全体のタイトル、h2を大見出し、h3を小見出しとして、番号の小さい順に使います。

見出しを順序立てて使う主な理由は、読みやすさと、スクリーンリーダー(画面の内容を音声で読み上げるソフト)を使う人への配慮です。Googleは、見出しの数や順序に決まった正解はなく、順番どおりに使っていなくても検索には問題ないと説明しています。つまり、見出しの構造を整える作業は、検索順位のためではなく、人に伝わりやすい文章にするための作業です。

ここから例
━━━━━━━━━━━━━━━━━━━━
<h1>SEO内部対策とは</h1>
  <h2>内部対策の目的</h2>
    <h3>用語の整理</h3>
  <h2>内部対策のチェックリスト</h2>
━━━━━━━━━━━━━━━━━━━━
ここまで例

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、記事のタイトルがh1になるテーマが一般的です。サイト運営者は、記事の本文ではh2から使います。テーマがh1を重複して出力していないかも、確認してください(◎)。

本文のテキスト化と画像のalt

サイト運営者は、対策キーワードを含む説明文、料金、結論など、重要な情報を、画像ではなく、HTMLの文字(テキスト)で書きます。画像の中の文字だけでは、検索エンジンに内容が十分に伝わらないためです。どうしても画像を使いたい場合は、同じ内容の文字を、画像の近くにも載せます。

画像には、alt属性(画像の内容を文字で説明する属性)を付けます。alt属性は、検索エンジンが、画像の内容と、画像とページの関係を理解するために使われます。画像は、関連する文章の近くに置くと効果的です。

ここから例
━━━━━━━━━━━━━━━━━━━━
【良い例】画像の内容を説明している
<img src="breadcrumb.webp" alt="パンくずリストの表示例(トップページ>カテゴリ>記事)" />

【悪い例】キーワードを並べているだけで、画像の内容を説明していない
<img src="breadcrumb.webp" alt="SEO 内部対策 SEO対策 SEO 順位 上げる" />
━━━━━━━━━━━━━━━━━━━━
ここまで例

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、画像をアップロードするときや、ブロックエディタの設定欄で、alt属性を入力できます(◎)。

URLの設計

サイト運営者は、内容が分かる言葉を含む、短いURLにします。意味のないランダムな文字列だけのURLは、ユーザーにとって、ページの内容を判断する手がかりになりません。

ここから例
━━━━━━━━━━━━━━━━━━━━
【良い例】 https://example.com/pets/cats.html
【悪い例】 https://example.com/2/6772756D707920636174
━━━━━━━━━━━━━━━━━━━━
ここまで例

なお、Googleは、ドメイン名やURLの中にキーワードを入れても、パンくずリストに表示される以上の効果はほとんどないと説明しています。また、公開後にURLを変更すると、評価を引き継ぐための301リダイレクトが必要になります。そのため、公開後にURLをむやみに変更しないでください。

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、管理画面の「設定」→「パーマリンク」と、各記事のスラッグ(URLの末尾の部分)で設定します(◎)。

構造化データ

構造化データとは、ページの内容を、検索エンジンが読み取りやすい決まった形式で書き添えたものです。サイト運営者が、パンくずリストや記事などの情報を構造化データで記述すると、検索結果に特別な表示(リッチリザルト)が出る対象になる助けになります。

Googleは、AI検索(AIOやAIモード)に表示されるために、特別な構造化データは必要ないと説明しています。また、構造化データに書く内容は、ページ上で見える文章と一致させる必要があります。次の例は、JSON-LDという形式で書いた、パンくずリストの構造化データです。

ここから例
━━━━━━━━━━━━━━━━━━━━
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    { "@type": "ListItem", "position": 1, "name": "トップページ", "item": "https://example.com/" },
    { "@type": "ListItem", "position": 2, "name": "内部対策SEO", "item": "https://example.com/category/onpage-seo/" },
    { "@type": "ListItem", "position": 3, "name": "SEO内部対策とは" }
  ]
}
</script>
━━━━━━━━━━━━━━━━━━━━
ここまで例

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、SEOプラグインやテーマの機能で出力できます(○)。独自の種類の構造化データを追加したい場合は、コードの追記が必要です。

ユーザビリティを高める内部対策(ユーザビリティ)

ユーザビリティとは、ユーザーにとっての使いやすさのことです。この分類は、サイトを訪れたユーザーが、ページを快適に見て、使えるようにするための内部対策です。Googleも、ユーザーにとって役に立つ体験を重視しています。

表示速度(Core Web Vitals)

ページの表示が遅いと、ユーザーはページを使いにくく感じます。ページの表示体験は、Core Web Vitalsという3つの指標で測れます。「良好」とされる目安は、次のとおりです。

指標測っていること良好の目安
LCPページのメインの内容が表示されるまでの時間2.5秒以内
INPユーザーがクリックなどの操作をしてから、画面が反応するまでの時間200ミリ秒以下
CLSページの読み込み中に、表示位置が動いてずれる度合い0.1以下

サイト運営者は、Search Consoleの「ウェブに関する主な指標」で、「不良」または「改善が必要」と判定されたページがないかを確認できます。改善には、画像の軽量化(WebPなどの軽い形式への変更)、画像の遅延読み込み(画面に近づいてから読み込む方式)、不要なプラグインの整理、キャッシュ(一度読み込んだデータの再利用)の活用が効果的です。

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、画像の遅延読み込みが、標準機能で行われます。それ以外は、テーマ、サーバー、プラグインの影響が大きいため、環境に応じた調整が必要です(△)。

モバイル表示(モバイルファーストインデックス)

Googleは、スマートフォン向けに表示されるページの内容(モバイル版)を使って、インデックスと順位づけを行います。この仕組みを、モバイルファーストインデックスと呼びます。そのため、PC版にあってモバイル版にない内容は、評価に使われません。

Googleは、PC版とモバイル版で同じHTMLを出し、画面の幅に応じて見た目だけを変える「レスポンシブデザイン」を推奨しています。サイト運営者は、モバイル版でも、次の項目をPC版と同じにします。

  • 本文などの主要な内容と、見出し
  • タイトルタグとメタディスクリプション
  • 構造化データ(パンくずリストなど)
  • 画像のalt属性と、robotsメタタグ(モバイル版にだけnoindexを入れない)

スマートフォンの小さな画面に合わせて、内容をアコーディオン(クリックで開閉する表示)やタブに格納すること自体は、問題ありません。ただし、ユーザーがスワイプやクリックなどの操作をしないと読み込まれない作りにすると、Googleが内容を読み取れません。

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、レスポンシブデザインに対応したテーマを選べば、基本的に対応できます。古いテーマや独自のテーマを使っている場合は、テーマの変更や改修が必要です(△)。

HTTPSと読みやすい文字サイズ

サイト運営者は、サイト全体をHTTPS(通信を暗号化する方式)で配信します。同じ内容のページが、HTTPのURLとHTTPSのURLの両方にある場合、GoogleはHTTPSのURLを、代表のURLとして優先して選びます。HTTPのURLにアクセスされたときは、HTTPSのURLへ301リダイレクトします。

文字サイズについて、Googleの公式な基準はありません。この記事では、一般的な目安として、本文の文字サイズを最低14px以上、読みやすさを考えると18px以上にすることをおすすめします。スマートフォンで見たときも、読める大きさになっているかを確認してください。次の例は、CSS(見た目を指定する言語)で、本文の文字サイズを18pxに指定する書き方です。

ここから例
━━━━━━━━━━━━━━━━━━━━
body {
  font-size: 18px;
  line-height: 1.8;
}
━━━━━━━━━━━━━━━━━━━━
ここまで例

CMS(コンテンツ管理システム/管理画面があるツール)での対応方法:WordPressの場合は、HTTPS化に必要な証明書を、サーバーやドメイン側で導入します。WordPress側では、管理画面の「設定」→「一般」で、サイトのURLを「https://」から始まる形に変更します。文字サイズは、テーマのCSSで調整します(△)。

内部対策の記述の土台:HTMLの標準仕様

ここまでに示した記述例は、HTMLの標準仕様に沿った書き方です。標準仕様に興味がある方は、HTMLの仕様を策定している「WHATWG(Web Hypertext Application Technology Working Group/ワットウィグ)」の資料をご覧ください。

ただし、Googleは、HTMLの記述に誤りがあっても、ページを理解できると説明しています。サイト運営者にとって大切なのは、コードを完璧にすることよりも、人間が読みやすく、クローラーも内容を解釈できる状態にすることです。

実例:SEOタイムズのページで実際に使用している内部対策の箇所

SEOタイムズ(seotimes.jp)の「トップページ」と「SEO&AIOチェッカー」ページ、および記事ページを取得し、公開されているHTMLの情報から、実際に使用している内部対策の箇所を整理します。2026年10月6日時点の内容です。

参考URLのページを自分で確認するには、ページを開いて右クリックし、「ページのソースを表示」を選びます。表示されたHTMLの中で、キーボードの「Ctrl+F」(Macは「command+F」)を押して「canonical」などの言葉を検索すると、該当の記述を見つけられます。

施策実際に使用している箇所(確認できた内容)
canonical2ページとも、そのページ自身のURLを指すcanonicalタグが設定されている。トップページは「https://seotimes.jp/」、「SEO&AIOチェッカー」ページは「https://seotimes.jp/rank_aio_checker/」を指している
参考URL:
https://seotimes.jp/
https://seotimes.jp/rank_aio_checker/
robotsメタ2ページとも、「index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1」が設定されている。「index, follow」は、検索結果に表示してよく、ページ内のリンクもたどってよいという意味。残りの指定は、画像・スニペット・動画のプレビュー表示を制限しないという意味
参考URL:
https://seotimes.jp/
https://seotimes.jp/rank_aio_checker/
モバイル表示(viewport)2ページとも、画面の幅に合わせて表示する指定「width=device-width, initial-scale=1.0」が設定されている
参考URL:
https://seotimes.jp/
https://seotimes.jp/rank_aio_checker/
タイトルタグとSNS用タイトルトップページでは、検索結果向けのタイトルタグが「SEOタイムズ – SEO対策・AIO対策の基本から最新情報まで」、SNS共有向けのog:titleが「SEOタイムズ | AI時代に選ばれる情報をつくる」と、別の文言になっている
参考URL:
https://seotimes.jp/
メタディスクリプショントップページには、サイトの概要を説明する文が、「SEO&AIOチェッカー」ページには、ツールの機能(Google検索順位とAIOへの引用状況を無料でチェックできること)を説明する文が、それぞれ設定されている
参考URL:
https://seotimes.jp/
https://seotimes.jp/rank_aio_checker/
テキストのナビ・フッタートップページのメニューには、カテゴリ18件へのリンクが含まれている。フッターには、用語集、お問い合わせなどのリンクがある。いずれも画像ではなく文字のリンクになっている
参考URL:
https://seotimes.jp/
パンくずリスト「SEO&AIOチェッカー」ページに、「トップページ > 検索順位&AIOチェッカー」というパンくずリストが表示されている(構造化データの有無は、今回確認していません)
参考URL:
https://seotimes.jp/rank_aio_checker/
URLの設計と階層記事のURLは「ドメイン直下の/スラッグ/」の形、カテゴリのURLは「/category/〜/」の形になっている。トップページの「最新の更新記事」欄から、記事へは1回のクリックで到達できる
参考URL:
https://seotimes.jp/
https://seotimes.jp/category/onpage-seo/
https://seotimes.jp/seo-infulences-aio-dispay-rate/
内部リンクとアンカーテキスト記事ページに、SEO用語集、お役立ち資料、前後の記事などへの文字のリンクが張られている
参考URL:
https://seotimes.jp/seo-infulences-aio-dispay-rate/
https://seotimes.jp/glossary/

この表は、取得した情報をもとに、実際のページの状態をそのまま記載したものです。細部の表記は、各ページのソースでも確認してください。また、「この設定にすれば順位が上がる」ことを示すものではありません。なお、構造化データ、画像のalt属性、表示速度、見出し構造の細部は、今回の確認では取得できなかったため、記載していません。

CMSでできる内部対策と、できない内部対策

内部対策の多くは、WordPressなどのCMS(コンテンツ管理システム/管理画面があるツール)の機能でできます。ただし、CMSの標準機能だけではできない施策や、テーマの修正、サーバー側の設定が必要な施策があります。

また、CMSによっては、サイト運営者がページのhead部分(canonicalタグやメタタグを書く場所)を直接編集できないことがあります。その場合は、CMSのSEO設定の画面や、プラグインの機能で設定するのが基本です。

施策WordPressでできることできない場合・注意点
タイトルタグ・メタディスクリプション◎/○ SEOプラグインで、記事ごとに設定できるテーマがタイトルを固定の文言で出力している場合は、テーマの修正が必要
見出し◎ ブロックエディタで設定できるテーマがh1を重複して出力している場合は、テーマの修正が必要(△)
canonical◎ そのページ自身のURLを指すcanonicalタグが標準で出力される。別のURLの指定はプラグインで行う複数のプラグインが同時に出力すると、内容が競合することがある
noindex○ SEOプラグインや、表示設定で設定できる表示設定のチェックは、サイト全体に効く
XMLサイトマップ◎ バージョン5.5以降は、標準機能で作られる特定のページを除外したい場合は、プラグインで設定する
robots.txt○ プラグインで編集できるサーバーにrobots.txtの実物のファイルがある場合は、そちらが優先される(△)
301リダイレクト○ プラグインで設定できる大量のURLを一括で転送する場合は、サーバー側の設定が必要(△)
パンくずリスト○ テーマの機能や、プラグインで追加できるテーマが対応していない場合は、コードの追記が必要(△)
構造化データ○ SEOプラグインで出力できる独自の種類を追加する場合は、コードの追記が必要(△)
画像のalt属性・URL◎ 画像の設定欄と、パーマリンクの設定で行える特になし
JavaScriptで作ったリンク△ 標準的なテーマでは、ほとんど問題にならないJavaScriptを多用する独自のテーマは、制作担当者による確認が必要
表示速度△ 画像の遅延読み込みは、標準機能で行われるテーマ、サーバー、プラグインの影響が大きい
モバイル表示△ レスポンシブデザインに対応したテーマを選ぶ古いテーマや独自のテーマは、変更や改修が必要
HTTPS△ WordPress側では、サイトのURL設定を変更する証明書の導入は、サーバーやドメイン側の作業

「△」や「できない」と分かった施策は、次の手順で対応を検討すると進められる可能性があります。※サイトが壊れてしまう可能性がありますので、しっかりバックアップを取り再構築できるようにしておき慎重にすすめましょう。

  1. CMSの設定画面や、SEOプラグインでできないかを確認する
  2. テーマの変更や、子テーマ(元のテーマを残したまま修正を加える仕組み)での修正でできないかを確認する
  3. サーバーの設定や、制作会社・開発担当者への依頼が必要かを確認する

こういう内部対策はNG(やってはいけない例)

やってはいけない内部対策のNG例

サイト運営者が良かれと思って行った施策が、逆効果になったり、Googleのガイドライン違反になったりすることがあります。代表的なNG例を整理します。

内部対策のNG例10個

  1. キーワードの詰め込み:タイトル、見出し、本文、alt属性、アンカーテキストに、同じ言葉を不自然に繰り返すと、Googleのスパムポリシーの「キーワードの乱用」にあたることがあります。
  2. 隠しテキスト・隠しリンク:背景と同じ色の文字、画面の外に配置した文字、フォントサイズ0の文字などを使い、人間には見えにくくして、検索エンジンにだけ見せる行為です。
  3. クローキング:ユーザーと検索エンジンに、異なる内容を見せる行為です。
  4. 制作中のnoindexを残したままの公開:またはrobots.txtでサイト全体のクロールをブロックしたまま公開すると、サイトが検索結果に表示されません。
  5. リンクをJavaScriptだけで作る:href属性を持つa要素を使わないと、クローラーがリンク先のURLをたどれません。
  6. 同じ内容のURLの放置:パラメーター付きのURLなどが増え、サイト内のリンクも、代表ではないURLに向いてしまいます。
  7. 全ページ共通のタイトル・ディスクリプション:ページごとの内容の違いが、検索エンジンにもユーザーにも伝わりません。
  8. 重要な説明を画像だけで表示する:検索エンジンにも、読み上げ機能を使う人にも、内容が伝わりにくくなります。
  9. 存在しないURLをすべてトップページへ転送する:ユーザーも検索エンジンも、ページが存在しないことを判別できません。
  10. モバイル版だけ内容を減らす、またはnoindexを入れる:Googleはモバイル版を評価の対象にするため、サイトの内容が正しく伝わらなくなります。

ガイドライン違反(ペナルティ)に注意

Googleのスパムポリシーに違反すると、そのページやサイト全体の掲載順位が下がったり、検索結果から除外されたりすることがあります。

隠しテキストについて、Googleが問題としているのは、検索エンジンを操作することだけを目的に、人間には見えにくくする行為です。次のような、ユーザー体験を高めるための通常のデザインは、違反ではありません。

  • 追加の内容の表示・非表示を切り替える、アコーディオンやタブ
  • 複数の画像や文章を切り替える、スライドショー
  • ユーザーが操作したときに追加の内容を表示する、ツールチップ
  • スクリーンリーダーを使う人のための、読み上げ専用のテキスト

クローキングについても、JavaScriptや画像など、検索エンジンが読み取りにくい技術を使っていること自体が問題なのではありません。ユーザーと検索エンジンに、異なる内容を見せる意図があるかどうかが問われます。

内部対策でやらなくてよいこと(よくある誤解)

反対に、効果が期待できないのに、サイト運営者が力を入れすぎてしまいがちなことも整理します。

  • メタキーワード(ページのキーワードを書くメタタグ):Googleは、検索順位の判断に使っていません。
  • 見出しの数や順序の最適化:Googleにとって、決まった正解はありません。読みやすさを優先して構成します。
  • 文字数の下限・上限:Googleが示している、理想の文字数というものはありません。
  • 重複コンテンツを「ペナルティの対象」だと恐れること:スパムポリシー違反ではありません。ただし、前述のとおり、整理しておくことが望ましいです。
  • AI向けの特別なファイルやマークアップ(llms.txtなど)の追加:Googleは、Google検索のAI機能に表示されるために不要で、Google検索では使われないと説明しています。

内部対策のまとめ

内部対策とは、サイト運営者が、自分のサイトの中身を整えて、検索エンジンとユーザーにサイトの内容を正しく伝える施策です。Googleがサイトをクロールしたあとに、「必要な情報が見つからない」「どのページが代表のページか分からない」といった理由で、サイトの内容を正しく理解・分類・評価できない状態になることを避けるために行います。

自分のサイトが検索結果に表示されないときは、内部対策の基本部分ができていないことが原因の場合も少なくありません。

内部対策は、ユーザーや検索エンジンが「このページには、この場所に、この情報があるはずだ」と期待する状態と、サイトの実際の状態とのズレを、サイト運営者がなくす作業です。その結果、検索結果やAIOの回答に表示されるための土台ができあがります。

まずは、この記事の冒頭のチェックリストで、優先度が★★★の項目から確認し、できていない項目を1つずつ直してください。WordPressなどのCMSで対応できない項目は、制作会社や開発担当者に相談するのが近道です。

GMOインターネット株式会社では、キーワード選定から内部SEO対策を行ったコンテンツのご提供、電話サポート、継続メンテナンスまでトータルサポートしています。

また、SEO対策やAIO対策で使えるWeb型のSEO&AIOチェッカーも提供しています。ウェブ集客でお悩みの際は、ぜひお問い合わせください。

内部対策の参考にしたGoogleの公式ドキュメント(2026年10月6日確認)

この記事を書いた人

Author Image

SEO Writer / SEOタイムズ編集部

読者インサイトを分析し、行動につながる構成を設計。E-E-A-Tを重視し、専門家監修と実データで信頼性を担保。コアアップデートやAI検索動向を常にモニタリング。一次情報の検証や実例を用いた有益な情報を発信していきます。