ホーム/GEO を学ぶ/JavaScriptは実行されるか
テクニカルGEO · レンダリング

AIクローラーはJavaScriptを実行するのか?

この問いは、答えの言い切り方と、その裏にある証拠の量との差がもっとも大きい問いです。2つのエンジンはレンダリングを文書で明記し、1つのクラスは構造上必ずレンダリングし、残りは1社が1か月間に一度だけ測定しました。

このページの内容
この記事をシェア
X でシェア LinkedIn でシェア
短い答え

実行するものもあり、大半はどちらとも言っておらず、この問いに対する言い切った答えは、その根拠に支えられていません。GoogleとAppleはいずれも自社文書でJavaScriptをレンダリングすると述べており、エージェント型ブラウザはChromiumビルドなのでレンダリングします。従来型のAIクローラーについては、公表されている記録はインフラログ調査1件だけで、日付は2024年12月17日、対象とした5つのクローラーファミリーのいずれにも実行は見られませんでした。OpenAIのエージェントはフェッチの11.50%を、Anthropicのそれは23.84%をJavaScriptファイルのダウンロードに費やしていたにもかかわらず、です。1

重要ポイント
  • GoogleとApplebotは自らの言葉でレンダリングを文書化しており、GeminiはGooglebotのレンダラーを引き継いでいます。OpenAI、Anthropic、Perplexityはどちらとも述べていません。
  • 誰もが引用する5億6,900万という数字は、同じ記事の別のセクションにあるクロール量の統計です。レンダリングのテストはサンプルサイズも暦の期間も示していません。
  • 実行は、ページのレンダリングが完了したときに発火するビーコンで検出されました。そのため、レンダラーを持たないクローラーと、ビーコンが外部に届かなかったクローラーは、同じに見えます。
  • Microsoftのアシスタントは固有のuser agentがないという理由で除外され、これらのベンダーが今日文書化しているクローラートークンのいくつかは、当時サンプルに入っていませんでした。
  • いずれも、あなたが出すものを変えるものではありません。最初のHTMLレスポンスに入っているテキストは、JSONであっても、あらゆる種類のシステムが読めます。
3つの区分

AIクローラーはJavaScriptを実行するのか?

ここには2つではなく3つのグループがあり、ネット上の議論の大半はそれらを1つにまとめてしまうことから生まれています。2つのエンジンは自らの言葉でレンダリングを文書化しています。Googleは「ブロックされていない限り、JavaScript内のコンテンツを処理できる」とし、JavaScriptフレームワークはこの作業を「一般により複雑にする」という但し書きを添えています3。また「Applebotはブラウザ内であなたのウェブサイトのコンテンツをレンダリングする場合がある」とされ、Appleは、JavaScriptとCSSがrobots.txtでブロックされているとそれができない場合があると警告しています。5 GeminiはGooglebotのレンダラーを引き継いでおり1、エージェント型ブラウザがレンダリングするのはChromiumだからです。Tow Centerの研究者は2025年10月、そのうちの1つがクライアントサイドのオーバーレイの背後にある9,000語の購読者限定記事を返した一方で、同じ企業の通常のチャットインターフェースはその記事に到達できないと答えた、と報告しています。9

3つ目のグループこそ誰もが議論している対象であり、そして誰も何も言っていない対象でもあります。OpenAI、Anthropic、Perplexityが公開しているボット文書を読んでも、render、rendering、JavaScriptという語は一度も出てきません(2026年8月30日確認)。678 この沈黙自体が結論であり、だからこそ1件のログ調査がこれほど大きな重みを負っているのです。

01

レンダリングを明記

GoogleとApplebotが自らの言葉で、加えて継承によりGeminiも。ここではスクリプトが実行されると想定してください。自分のJSやCSSをブロックすれば、損をするのは自分です。

02

構造上レンダリングする

エージェント型ブラウザはChromiumです。あなたのバンドルを実行し、DOMを読み、アクセスログには宣言されたボットではなく通常のChromeセッションとして現れます。

03

一度測られ、以後は沈黙

OpenAI、Anthropic、Meta、ByteDance、Perplexityのクローラーです。1件のログ調査は実行を確認しませんでした。5社のいずれもどちらとも文書化していません。

測定の中身

2024年12月の調査は実際に何を測ったのか?

ホスティング企業とSEOコンサルティング会社が自社のサーバーログを読み、2024年12月17日に4名の署名入りブログ記事として公開したものです。1 対象プロパティは、そのホスティング企業が保守するフレームワークのドキュメントサイト、より広いネットワーク、そしてクロススタックの対照として使われた2つの求人サイトでした。これがサンプルです。一次のログデータであり、あるクローラーが何をしたかについて入手できる最強の証拠であると同時に、1社のトラフィックという便宜的サンプルであり、クローラー一般が何をするかについては弱い証拠です。

期間は正確に述べる価値があります。繰り返し誤って伝えられているからです。記事にはどこにも暦の範囲が書かれていません。トラフィックの数字は「過去1か月」という言葉で導入され、データ収集のセクションは、主要なデータをこれらのプロパティの「過去数か月」のモニタリングから得たと述べています。ページ上にある唯一の日付は公開日です。したがって開始月を割り当てるどの言い直しも、引用ではなく推論であり、このサイトも2026年8月まではまさにその推論をしていました。

誰もが引用するあの数字も、別の主張に属しています。GPTBotの5億6,900万フェッチとAnthropicのクローラーの3億7,000万は、規模と分布のセクションにあり、その隣にはGooglebotの45億、Applebotの3億1,400万、PerplexityBotの2,440万が並んでいます。これらが測っているのは、どれだけクロールが起きたかです。続くレンダリングのセクションは、サンプルサイズをまったく示さずに結論を報告しています。ページ数もリクエスト数もクローラー別の内訳もありません。この量の数字をレンダリングテストのnとして引用することが、この情報源をめぐって最もよくある誤りです。

検出方法

実行はどう検出され、そのテストは何を見逃しうるのか?

ビーコンによってです。手法はAIクローラーの記事ではなく、その記事が詳細としてリンクしている2024年7月の記事にあります。そこでは同じチームが、対象プロパティにカスタムのエッジミドルウェアを置いてボットのリクエストを識別し、それらに配信するHTMLに軽量のJavaScriptライブラリを注入したと説明しています。このライブラリはページのレンダリングが完了したときに発火し、リクエスト識別子とタイムスタンプを別のサーバーに報告します。その報告を生のアクセスログと突き合わせれば、どのリクエストがレンダリングされたかが分かります。2

優れた設計であり、そして片側だけの設計です。ビーコンが発火すれば、実行を証明します。ビーコンが一度も発火しないことが証明するのは、報告が届かなかったことだけです。そしてレンダラーの不在以外にも、それを生む要因はあります。外向きのネットワークがないサンドボックスでスクリプトを実行するクローラー、サブリソースのリクエストを捨てるクローラー、ビーコンの取得がブロックまたはタイムアウトするクローラーです。いずれも、単にHTMLを読むだけのクライアントと区別できません。「主要なAIクローラーは現在いずれもJavaScriptをレンダリングしない」は、ヌル結果の読み方として妥当です。ただし唯一の読み方ではありません。

先行する記事は自らの範囲をはっきり述べています。対象はGooglebotで、2024年4月1日から30日にかけてサーバーとビーコンの対応が取れたレンダリング済みページを37,000件超提供し、AIプロバイダーについてはまだデータを集めている最中だと記しています。2 この計測の仕組みは、実際にレンダリングするクローラーに対して大規模に検証されていました。レンダリングしないと見られるクローラーについてそれが生んだのは不在であり、不在には報告すべきサンプルサイズがありません。

対象範囲

どのクローラーが対象で、どれが対象外だったのか?

5つのファミリーがレンダリングしないと名指しされ、2つがレンダリングすると名指しされ、1つのアシスタントは固有のuser agentがないという理由でそもそも除外されました。

クローラー2024年12月のサンプルに含まれるか観察されたこと現在のレンダリングに関するベンダーの表明
GooglebotとGeminiはい共通インフラ上でレンダリングするあり、Googleが文書化3
Applebotはいブラウザ内でレンダリングするあり、Appleが文書化5
GPTBot、OAI-SearchBot、ChatGPT-User、ClaudeBotはい実行は観察されずどちらとも表明なし67
Meta-ExternalAgent、Bytespider、PerplexityBot、CCBotはい実行は観察されずどちらとも表明なし8
OAI-AdsBot、Claude-SearchBot、Claude-Userサンプル外測定されたことがないどちらとも表明なし
Microsoftのアシスタント著者により除外測定されたことがない本調査の対象外

このリストを、同じベンダーが今日公開しているものと突き合わせて読めば、隔たりは明らかです。Anthropicは現在、1つではなく3つのロボットを文書化し、学習用、ユーザー起点のフェッチ、検索品質に分けています。7 OpenAIは現在、3つではなく4つのトークンを挙げており、広告用クローラーも含まれます。6 調査以降に追加されたクローラートークンはどれもサンプルに入っていませんでした。ですからそれらについての正直な答えは「レンダリングしない」ではなく、「誰も見ていない」です。

20か月

2024年12月以降、何が変わったのか?

3つあります。そしてどれも再現ではありません。第一に、文書が動きました。Anthropicは現在、学習用にClaudeBot、ユーザー起点のフェッチにClaude-User、検索品質にClaude-SearchBotと記しており、そのページの最終更新は2026年4月7日です。7 Googleの生成AI向けガイダンスの最終更新は2026年7月10日で、JavaScript内のコンテンツの処理に関する同じ一文が今も残っています。3 沈黙している側での追加はすべて沈黙のままでした。つまり沈黙は埋まるどころか広がったのです。

第二に、まったく新しいクラスのクライアントが登場しました。エージェント型ブラウザは調査の実施時点ではマスマーケットの製品ではなく、いまやサンプルに含まれる2社が提供しています。それらは何でもレンダリングし、アクセスログ上ではChromeと区別がつかず、クローラー段階のブロックが守るはずだったテキストを読みます。9 AIはあなたのJavaScriptを見られないという助言は、増え続けるAIトラフィックの一部については、すでに誤りです。

第三に、何も再現されていません。AIクローラーのレンダリングに関する2件目のログ調査は、この教材が探した限り公開されていません。この結果を認めたベンダーも否定したベンダーもなく、先行記事で約束されたAIプロバイダーに関する続報も出ていません。2 ここでは20か月は長い時間です。正しい対応は、結論をひっくり返すことでも、決着済みとして引用し続けることでもありません。

SPAの場合

サイトがシングルページアプリの場合はどうするか?

書き直しが要件ではありません。要件はもっと狭いものです。読者が引用するであろう言葉が、最初のHTMLレスポンスに入っていること。調査自身も推奨をそう限定しており、サーバーサイドでレンダリングすべきものとして本文、タイトル、ディスクリプション、カテゴリー、ナビゲーションを挙げ、カウンター、ウィジェット、インタラクティブな拡張についてはクライアントサイドレンダリングのままでよいとしています。1

チームが思っているより余地はあります。目標がレンダリング後のマークアップではなく、レスポンスボディだからです。同じ記事は、最初のHTMLレスポンスに含まれるコンテンツは、JSONデータであってもインデックスされうると述べています。これらのシステムはHTML以外のコンテンツも解釈できるからです。1 ページデータをすでにドキュメントへシリアライズしているフレームワークは、何も移行しないまま基準を満たしています。

ですからまずフェッチしてください。JavaScriptを実行しない素のコマンドラインクライアントでページをリクエストし、返ってきたものを読みます。見出しと最初の2段落と内部リンクがそこにあれば、そのページについてこの話は終わりです。空のコンテナとバンドルだけが返ってくるなら、問題はサイト単位ではなくページ単位で分かります。移行を覚悟してマーケティングサイト全体でこれを実行したあるチームは、主要14ページのうち11ページはすでに本文を配信しており、配信していなかった3ページが料金表、比較表、顧客事例だったことを見つけました。エンジンが最も引用したいであろう3ページです。

効果が出る最も安い修正

  • 主張を担うページをプリレンダリングまたは静的生成し、アプリ本体には手を入れない
  • フレームワークに触る前に、ページの本文をHTMLかJSONとして最初のレスポンスにシリアライズする
  • リソースが欠けていてもきれいにレンダリングする。Appleの文書が言うグレースフルデグラデーションです5

やらなくてよいこと

  • user agentを見分けてボットに別のページを返すこと。Googleはダイナミックレンダリングを、推奨される解決策ではなく回避策だとしています4
  • 自分で実行したフェッチではなく、再現されていないブログ記事1件を根拠にしたフレームワーク移行
  • robots.txtで自分のJavaScriptとCSSをブロックすること。実際にレンダリングする2つのエンジンを壊します
再現されていない1件の測定が言えること、言えないこと

言えるのはここまでです。それらのプロパティで、その月に、それらのuser agentを伴うリクエストはレンダリングビーコンを生みませんでした。これは実在する観察であり、誰かが公開したもののうち最良の証拠です。言えないのは、それらのクローラーにレンダラーがないこと、この結果が2026年にも成り立つこと、ベンダーがのちに追加したトークンにも成り立つこと、そして、サンプル中で最大のプロパティがそのベンダー自身が保守するフレームワークのドキュメントサイトである1つのホスティングネットワークの外でも成り立つことです。利害関係は、失格事由として扱わずに名指ししておく価値があります。公開したのはサーバーサイドレンダリングを売る会社であり、結論はサーバーサイドレンダリングを勧めています。ここでは一次のログデータが依然として正しい証拠です。ただし、サンプル数も期間も示さないブログ記事1件では、その証拠として足りません。

プロダクトが役立つところ、役立たないところ

このページの内容にソフトウェアは要りません。チェックは1ページあたりコマンド1つで、修正はあなたのチームが持つビルド時の判断です。Baviorはあなたのサイトをクロールせず、ページをレンダリングせず、エンジンがあなたのバンドルを実行したかどうかも教えられません。どのツールにもできません。エンジンがそれを報告しないからです。Baviorが扱うのはその下流です。決まったプロンプトセットを5つのエンジンに定期実行し、各回答がどのソースを引用したかを記録します。本文を最初のレスポンスへ移したことで名前が挙がる相手が変わったかどうかは、そうして分かります。引用されたソースが進行中の議論スレッドである場合は、あなたが管理するアカウントで返信を下書きします。投稿の前に承認するのはあなたです。無料 AI 可視性チェッカー無料 GEO 診断は有料プランなしで使えます。有料プランは月払いで月額 $99 から、年払いなら月額 $79.17 です(2026年8月30日時点)。

出典、すべて2026年8月30日に確認
  1. Zecchini、Moore、Ubl、Siddle「The rise of the AI crawler」Vercel・MERJ、2024年12月17日(唯一の公開された測定、一次ログデータ、暦の期間の記載なし):vercel.com/blog/the-rise-of-the-ai-crawler
  2. Zecchini、Moore ほか「How Google handles JavaScript throughout the indexing process」Vercel・MERJ、2024年7月31日(ビーコン手法、Googlebot、2024年4月1日から30日、対応が取れたページ37,000件超):vercel.com/blog/how-google-handles-javascript-throughout-the-indexing-process
  3. Google Search Central「Google’s Guide to Optimizing for Generative AI Features on Google Search」最終更新2026年7月10日(JavaScriptの処理、一次情報):developers.google.com/search/docs/fundamentals/ai-optimization-guide
  4. Google Search Central「Dynamic rendering as a workaround」最終更新2025年12月10日(一次情報):developers.google.com/search/docs/crawling-indexing/javascript/dynamic-rendering
  5. Apple「About Applebot」(ブラウザでのレンダリング、ブロックされたリソース、グレースフルデグラデーション、一次情報):support.apple.com/en-us/119829
  6. OpenAI、クローラーとボットの文書(4つのトークン、ページ上のどこにもレンダリングに関する記述なし、一次情報):developers.openai.com/api/docs/bots
  7. Anthropic「Does Anthropic crawl data from the web?」2026年4月7日更新(3つのロボット、レンダリングに関する記述なし、一次情報):support.claude.com/en/articles/8896518
  8. Perplexity、ボットの文書(PerplexityBotとPerplexity-User、レンダリングに関する記述なし、一次情報):docs.perplexity.ai/guides/bots
  9. Chandrasekar、Jaźwińska、Tow Center for Digital Journalism「How AI Browsers Sneak Past Blockers and Paywalls」2025年10月30日:cjr.org/analysis/how-ai-browsers-sneak-past-blockers-and-paywalls.php
よくある質問

よく聞かれることを、まとめました。

AI検索に引用されるには、シングルページアプリを全面的に書き直す必要がありますか?

ほぼ確実に必要ありません。要件は、読者が引用するであろう言葉が最初のHTMLレスポンスで届くことであり、アプリケーション全体をサーバーレンダリングすることではありません。主張を担う数ページをプリレンダリングまたは静的生成すれば満たせます。2024年12月の調査も、閲覧カウンター、ウィジェット、インタラクティブな拡張についてはクライアントサイドレンダリングを明示的に残しています。そこには引用されるものが何もないからです。

AIクローラーはJavaScriptを見られない、というのは本当ですか?

一般論としては正しくありません。GoogleとApplebotはどちらもレンダリングすると文書化しており、GeminiはGooglebotのインフラ上で動き、エージェント型ブラウザはすべてを実行するChromiumビルドです。この主張は2024年12月17日に公開されたインフラログ調査1件にさかのぼり、そこでは5つのクローラーファミリーで実行が観察されませんでした。誰も再現しておらず、そのグループのどのベンダーもどちらとも文書化していません。

ページのテキストが最初のHTMLレスポンスに入っているかは、どう確かめますか?

JavaScriptを実行しない素のコマンドラインクライアントでページをリクエストし、返ってきたものを読んでください。見出しと最初の2段落と内部リンクがあれば、そのページについて答えは出ています。空のコンテナとスクリプトバンドルが返ってくるなら、本物の問題を見つけたということです。しかもサイト単位ではなくページ単位で見つかっています。

エージェント型ブラウザが何でもレンダリングするなら、サーバーサイドレンダリングはまだ重要ですか?

重要です。2つのクラスはそれぞれ違う理由であなたのサイトを読むからです。エージェント型ブラウザは、人が求めた1ページを1セッションでレンダリングします。クローラーは、あなたがそもそも候補になるかを決めるインデックスを作ります。そして測定されたクロール量が最も大きいクローラーこそ、レンダラーが文書化されていないものです。本文をレスポンスで配信すれば両方に対応できます。エージェントのレンダリングに頼るだけでは、すでにあなたを見つけたトラフィックにしか対応できません。

Bavior 編集部

Reddit マーケティングと AI 検索可視性に関する Bavior のコンテンツを調査・管理しているチームです。記事中のすべての数値には出典と確認日を明記しており、アフィリエイトリンクは一切使用していません。

数値に誤りを見つけたらお知らせください。再確認します: support@bavior.com

あなたのテキストはHTMLの中にあるか、
ただの推測かのどちらかです。

無料トライアルを開始