Aller au contenu
SEOの基礎

JavaScriptとSEO:レンダリングとインデックス登録

9 min

GoogleはJavaScriptをレンダリングできますが、サイトの権威によっては数秒から数週間の遅延があります。テキスト、リンク、構造化データなどの重要なコンテンツはJavaScriptに依存して表示されるべきではありません。Server-Side Rendering(SSR)またはプリレンダリングが推奨されるソリューションです。

現代のJavaScriptフレームワーク(React、Vue、Angular、Next.js)はウェブ開発を支配しています。しかし、SEOとの関係は複雑なままです:GoogleがJSレンダリングで進歩しても、部分的または遅れたインデックスのリスクは実在し、コストがかかります。

GoogleがJavaScriptを処理する方法

Googlebotはページの初期HTMLをダウンロードし、JavaScriptのレンダリングをキュー(WRS — Web Rendering Service)に入れます。完全なレンダリングはサイトの人気度とエンジンの負荷によって、数秒から数日、さらには数週間後に行われることがあります。

このレンダリング遅延は、JS専用コンテンツが常に静的HTMLコンテンツより遅くインデックスされることを意味します。権威の低いサイトでは、一部のコンテンツが正しくレンダリングされないことがあります。

インデックス登録への具体的なリスク

ユーザーの操作(クリック、スクロール、タブ)の後にのみ表示されるコンテンツはGooglebotには見えません。FAQ のアコーディオン、コンテンツタブ、ホバーコンテンツが最も一般的なケースです。

JavaScriptによって動的に生成されたリンクはGooglebotによって常に追跡されるわけではありません。内部リンク構造がページ読み込み後に生成されたリンクに依存している場合、アーキテクチャの一部はクローラーには見えません。

  • クリックやホバーイベントの後ろのコンテンツ:インデックスされない。
  • HTMLフォールバックなしの純粋なJSハンバーガーメニュー内のリンク:無視される可能性。
  • JS経由で注入されたJSON-LD構造化データ:遅延レンダリング、リッチリザルト適格性の遅延。
  • クライアントサイドで生成されたメタタグ:最初のクロール時にtitleとdescriptionが不在の可能性。
  • 独自URLなしでAJAX経由で読み込まれたページネーションテキスト:コンテンツが見えない。

推奨されるソリューション

Server-Side Rendering(SSR)はブラウザに送信する前にサーバーで完全なHTMLを生成します。Googlebotは最初のクロールからリッチなHTMLを受け取り、JavaScriptのレンダリングを待ちません。Next.js、Nuxt.js、SvelteKitはSSRをネイティブで提供しています。

Static Site Generation(SSG)はビルドのたびにページを事前生成します。SSRよりもさらに高速ですが、更新頻度が低いコンテンツにのみ適しています。

SSRへのリファクタリングが実現不可能な場合は、RendertronやPrerender.ioなどのサービスを通じたプリレンダリングがGooglebotを検出して、ページのプリレンダリングされた静的HTMLバージョンを提供します。

SPA(Single Page Application)アーキテクチャからSSRに移行したサイトは、移行後60日以内にインデックスされたページ数が平均20〜50%改善します。

2025〜2026年SSR移行とインデックスに関する業界調査

サイトのJSレンダリング問題を診断する

Search ConsoleのURL検査ツールはGooglebotがページをどのように見るかのスクリーンショットを提供します。このスクリーンショットとブラウザでの実際の表示を比較してください:いかなる差異もレンダリングの問題を示します。

Chrome(DevTools > Settings > Debugger > Disable JavaScript)でJavaScriptを無効にしてテストしてください:ページに何も表示されないか、ナビゲーションリンクが失われた場合、解決すべき重大なSEO問題があります。

FAQ

GoogleはSPA(Single Page Application)を正しくインデックスできますか?

はい、ただし制限と遅延があります。SPAのコンテンツはJavaScriptのレンダリング後にインデックスされ、数週間かかることがあります。競合の激しいサイトでは、この遅延は実際の不利です。SSRまたはプリレンダリングが最も信頼性の高いソリューションです。

Next.jsはSEOに良い選択ですか?

はい、市場で最もSEOフレンドリーなフレームワークの1つです。SSR、SSG、ISR(Incremental Static Regeneration)をネイティブで提供しています。メタタグ、サイトマップ、構造化データは複雑な設定なしでサーバーサイドで生成できます。

タブやアコーディオン内のコンテンツはインデックスされますか?

GoogleはCSSで非表示にされたコンテンツ(display:noneまたはvisibility:hidden)はインデックスされますが、重みが減ると述べています。JavaScript操作の後ろのコンテンツはより問題があります。FAQや重要な情報には、ネイティブHTMLのdetails/summaryを使用するか、コンテンツが最初のHTMLに存在することを確認してください。

JavaScriptをすべてのボットに対して、それともGoogleだけに対して対応させる必要がありますか?

GoogleはJavaScriptをアクティブにレンダリングする唯一のエンジンです。Bingは進歩していますが、まだ遅れています。オーディエンスが主にGoogleからであれば、Googlebotとの互換性に集中してください。SSRアーキテクチャはすべてのボットに自動的に利益をもたらします。