オンページ SEO チェッカー
URL と、任意で対象キーワードを入力します。チェッカーはページを Chrome と Googlebot として取得し、生の HTML が示す内容を報告します。文字数とピクセル幅付きのタイトルと meta description、robots meta と X-Robots-Tag、canonical、H1 の数とレベル飛びを含む見出しアウトライン、画像の alt カバレッジ、内部・外部リンクと nofollow の割合、Open Graph と Twitter カード、hreflang の妥当性、JSON-LD の種類、lang、viewport、charset、語数、キーワードの密度と配置。スコアはなく、合格・要確認・情報のみの一覧です。何も保存しません。
ページは当サイトのサーバーから Chrome と Googlebot として JavaScript を実行せずに取得します。クローラーの最初のパスが見るものです。返されるのは導出された数値と短いテキストの抜粋のみで、何も保存・記録されません。制限: アドレスごとに 5 分あたり 30 回。目安の範囲(タイトル 30〜60、説明 70〜160、300 語)は慣例であってルールではありません。チェッカーは見つかった内容を報告するだけで、ページに何を書くべきかは判断しません。
仕組み
1. ページは当サイトのサーバーから 2 回並列に取得される — デスクトップ Chrome と Googlebot として — JavaScript は実行せず、各ホップで公開ホスト検査を行いながら最大 5 回のリダイレクトを追従する。Chrome の応答を分析し、Googlebot の応答はステータスと内容を比較する(SSR チェッカーの取得機構) 2. <head> からタイトル、meta description、robots(ヘッダーの X-Robots-Tag を含む)、canonical、hreflang リンク、Open Graph と Twitter の meta、viewport、charset、lang を、<body> から見出し(文書順の H1〜H6)、画像と alt テキスト、リンクと rel=nofollow、表示テキストを解析する 3. 長さのチェック: タイトルは目安として 30〜60 文字とデスクトップ 600 px 行でのピクセル幅(Arial 20 px、ブラウザーで計測)、説明は 70〜160 文字。どちらも情報であってルールではない — Google は気に入らないタイトルや説明を長さに関係なく書き換える 4. 構造のチェック: H1 はちょうど 1 つ(HTML5 では複数可、情報として表示)、見出しレベルの飛びなし(H2 → H4)、canonical が存在し絶対 URL で自身を指す、lang 属性が正しい形式(BCP 47)、viewport がある、hreflang タグが有効(ISO 639-1 / 3166-1)、JSON-LD の種類を列挙 5. キーワード(任意): 表示テキスト内の完全一致の出現数、語数に対する割合としての密度、タイトル・H1・meta description・URL・冒頭 100 語での有無。密度 3% 超は情報、不在は警告として表示 — 目標密度は推奨しない 6. 各チェックは合格、警告(確認の価値あり)、不合格(インデックスを妨げる: noindex、タイトル欠落)、情報のいずれか。等しくないものの合計は計測ではないため、スコアは付けない
オンページ SEO とチェッカーが計測する内容について
オンページ SEO とは、検索最適化のうち 1 つの HTML 文書の中に存在する部分です。ページが何についてのものかを示すもの(タイトル、見出し、本文)、どう扱われたいかを示すもの(robots、canonical、hreflang)、共有時(Open Graph、Twitter カード)やスマートフォン表示時(viewport、lang)にどう見せるか。これらはすべてサイト所有者の管理下にあり、生の HTML に現れます。だからチェッカーはブラウザーなしで読み取れ、クローラーの最初のパスもまさにこれを見るのです。
タイトルと meta description は検索結果に表示される 2 行です。正確には Google が出発点とする 2 行で、長すぎる・短すぎる・繰り返しが多い・主題から外れていると判断したタイトルは書き換え、説明がクエリに合わなければ本文からスニペットを差し替えます。文字数の目安(30〜60 と 70〜160)は書き換えが起きにくい範囲であってルールではありません。幅の広い文字 60 字のタイトルは切れても、狭い文字 60 字なら切れないため、文字数よりピクセル幅が重要です。チェッカーは両方を計測し、情報として報告します。
robots と canonical は、ページがそもそもインデックスされるか、どの URL でインデックスされるかを決める 2 つのシグナルです。meta タグや X-Robots-Tag ヘッダーの noindex はページを除外します。最適化しようとしているページではほぼ常に誤りなので、チェッカーはこれを不合格とします。別の場所を指す canonical はエラーではなく、重複 URL やパラメーター付き URL はそのように動くべきものですが、ランキングを狙うページでは把握しておく価値があるため、チェッカーは対象 URL と共に情報として報告します。相対 canonical はクローラーによって解決が異なることがあるため指摘します。
キーワード密度はずっと前にランキング要因ではなくなっており、チェッカーは数値を推奨しません。報告するのは、そのトピックのページで読者が期待する場所(タイトル、最初の見出し、説明、冒頭の段落)に用語が現れるか、そして機械向けに書かれたように読めるほど繰り返されていないか、です。これは編集上の事実であって最適化の目標ではありません。語数も同じで、300 はチェッカーがページを「薄い」と呼ばなくなる境目であり、目指すべき長さではありません。
よくある質問
- なぜスコアがないのですか?
- スコアは比較できないものを足し合わせるからです。viewport の欠落と noindex タグは同じ尺度上の 2 点ではありません。代わりにチェッカーは各項目にステータスを付けます。インデックスを妨げるものは不合格、確認の価値があるものは警告、ページについて単に事実であるものは情報、問題ないものは合格です。まず不合格、次に警告を読んでください。
- 適切なタイトルの長さは?
- 正確な数値はありません。Google はデスクトップのタイトルを約 600 ピクセル、平均的な幅で 50〜60 文字程度表示し、質が低いと判断したタイトルは長さに関係なく書き換えます。チェッカーは文字数とピクセル数を報告し、30〜60 の範囲外を情報として示します。範囲に収めることより、主要な用語を早めに置いてページが何であるかを伝えるタイトルの方が重要です。
- H1 が複数あると問題ですか?
- HTML5 は複数の H1 を許容しており、Google も問題なく処理すると述べています。H1 を 1 つにする慣例は、文書のアウトラインを読みやすく保ち、主題を明確にするためのものです。チェッカーは複数の H1 を警告ではなく情報として報告します。見出しレベルの飛び(H2 から H4)も情報で、検索よりアクセシビリティへの影響が大きいものです。
- canonical が別の場所を指していると表示されました。悪いことですか?
- 意図したものかどうかによります。別の URL への canonical は、このページではなくその URL をインデックスするよう Google に伝えます。重複、フィルター済みリスト、トラッキングパラメーター、配信コピーには正しく、単独でランキングを狙うページには誤りです。チェッカーはどちらの場合か判断できないため、対象 URL を情報として報告します。
- キーワード密度は重要ですか?
- ランキング要因としては重要ではありません。Google は理想的な密度は存在しないと述べており、用語の詰め込みはスパムポリシー違反です。チェッカーは密度と出現場所を示すので、ページが自然に読めてトピックを扱えているかを判断できます。3% を超えると注記を付けるのは、通常その辺りから文章が繰り返しに感じられ始めるためです。編集上のチェックとして扱ってください。
- なぜ Googlebot としても取得するのですか?
- 一部のサイトはクローラーに異なる HTML を返したり、ブロックしたり、リダイレクトしたりするからです。チェッカーは SSR チェッカーと同じ 2 エージェント取得を使い、Chrome の応答を分析します。Googlebot の応答のステータスや内容が大きく異なる場合はそれを報告します。その場合、オンページの結果は Google が見ているものと異なる可能性があるからです。
- ページが JavaScript でコンテンツをレンダリングしています。チェッカーはそれを見られますか?
- いいえ。サーバーが返す生の HTML を読みます。これはクローラーが最初のパスで見るものであり、SNS や AI のフェッチャーが見るのもこれだけです。タイトル、見出し、本文が JavaScript で追加されるなら、ここには現れません。それ自体が発見です。ページがどれだけレンダリングに依存しているかは SSR チェッカーで確認してください。