ChatGPTが広告を配信する仕組み
(buchodi.com)- ChatGPTの応答ストリームには、モデル出力とともに広告ユニットオブジェクトが混在して流れ込み、SSEの
deltaイベントでsingle_advertiser_ad_unit形式が渡される - 広告カードの画像とfaviconは**
bzrcdn.openai.comから読み込まれ、target.open_externally: falseのリンクはChatGPT内部のWebView**で開かれ、クリック後にmerchantページへ移動するまで同じフロー内で続く - 同じアカウントでも会話の話題に応じて異なる広告主が付与され、北京旅行・航空便・NBAプレーオフ・ファッション・生産性といった文脈に合わせて、Grubhub、GetYourGuide、Axel、Gametime、Aritzia、Canvaがそれぞれ観測された
- 広告とクリックURLにはFernetトークンベースの識別値も一緒に渡され、
ads_spam_integrity_payload、oppref、olref、ad_data_tokenがクリック整合性確認と識別フローに使われ、opprefは__opprefクッキーとして30日間保存される - merchantページはOAIQ SDKを読み込み、
measureイベントをbzr.openai.comへ送信し、ChatGPTでのクリック後にmerchant側イベントが再びOpenAIへ戻るアトリビューションループが完成する
広告挿入とクリックフロー
- ChatGPTの応答ストリームには、モデル出力とともに**
single_advertiser_ad_unit**形式の広告オブジェクトが混在して流れ込む- 会話リクエスト時に
chatgpt.com/backend-api/f/conversationでSSEレスポンスが開かれ、一部のdeltaイベントとして広告ユニットが渡される - 広告オブジェクトには
ads_request_id、ads_spam_integrity_payload、advertiser_brand、carousel_cards、ad_data_tokenなどが含まれる advertiser_brand.idはadacct_<32-hex>形式のmerchantアカウント識別子とみられる
- 会話リクエスト時に
- 広告カードのブランドfaviconと画像はすべて**
bzrcdn.openai.com**から読み込まれる- 広告クリエイティブをmerchantではなくOpenAI側でホスティングする構造が見て取れる
target.open_externally: falseのリンクはChatGPT内部のWebViewで開かれる- クリック後にmerchantページへ移動する流れもOpenAIが直接観測できるようになる
- クリックURLには
utm_source=chatgptpilotのようなパラメータとともに**oppref、olref**が付く- 例のリンクは
https://grubhub.com/?utm_source=chatgptpilot...&oppref=...&olr…=...の形で開かれる
- 例のリンクは
ターゲティングとアトリビューションチェーン
- 同じアカウントでも会話の話題に応じて異なる広告主が配信される
- 北京旅行の計画にはGrubhubの"Get Chinese Food Delivered"が付く
- 北京ツアー予約にはGetYourGuideのGreat Wall tourと
ad_id=beijing003が付く - 北京行き航空便にはAxelと
utm_term=vflight_beijing_03が付く - NBAプレーオフにはGametimeと
utm_campaign=nba&utm_content=playoffsが付く - 春のファッションとトレンドにはAritziaと
utm_campaign=chatgptpilot_trav3が付く - 生産性やスライド関連の会話にはCanvaと
utm_campaign=…link-clicks_productsが付く
- この観測では会話文脈ベースのターゲティングが確認できる
- 以前の会話履歴まで反映しているかは確認されていない
- 広告ごとに4つのFernetトークンが一緒に渡される
ads_spam_integrity_payloadはSSE内にのみ含まれ、偽装クリックに対するサーバー側の整合性検証に使われる値として整理されているopprefはクリックURLに付与され、OAIQ SDKがこれを__opprefクッキーへコピーして720時間、30日TTLで保存するolrefはopprefとともにクリックURLへ付くが、観測されたSDKでは保存されないad_data_tokenはbase64で包まれたJSONの中に、さらに別のFernetトークンを含む構造になっている
- Fernetトークンの先頭9バイトは公開形式であるため、発行時刻を鍵なしで復元できる
- バージョンバイト
0x80と8バイトのbig-endian Unix timestampが含まれる - 捕捉されたHome DepotのクリックURLは2026-04-26 11:30:08 UTCに発行され、ブラウザがmerchantページを取得した時刻は11:31:43で、95秒の遅延が計算される
- バージョンバイト
merchant側トラッキングSDK
- merchantページはOAIQ SDK
https://bzrcdn.openai.com/sdk/oaiq.min.jsを読み込む- 観測されたバージョンは
0.1.3 - 初期化コードは
oaiq('init', { pid: '<merchant pixel ID>' });の形で入る - ページ計測は
oaiq('measure', 'contents_viewed', { ... });の形で呼び出される
- 観測されたバージョンは
init時点でOAIQはURLの**?oppref=**の値を読み取り、__opprefの1st-partyクッキーとして記録する- あわせて
__oaiq_domain_probeクッキーも設定する
- あわせて
- その後のすべての
measure呼び出しは、JSONを**https://bzr.openai.com/v1/sdk/…**へPOSTする- クリック後のmerchant側イベントがOpenAIへ戻ることで、アトリビューションループが完成する
- ブロックまたは確認対象としては、2つのドメインと2つのクッキーが直接示されている
-
bzrcdn.openai.com,bzr.openai.com__oppref,__oaiq_domain_probe
-
1件のコメント
Hacker News の意見
サム・アルトマンは2年も前に、広告は最後の手段のように見ていると言っていたのに、今やOpenAIが金に困っていることを公式化したのかと思う
あの人は本音をそのまま語るより、望む結果を作るために言葉を選ぶタイプに近く、そこで真実か嘘かはあまり重要ではなさそうだ
だから「サム・アルトマンがそう言った」を額面通りに解釈するのはあまり意味がなく、私には「ChatGPTがそう言った」レベルに見える
OpenAIもGoogle、Facebook、あるいはNetflixに似た道を進む可能性があり、大手テック企業は結局、人々はお金よりも注意力で支払うほうが簡単だという古いメディアの法則を再発見してきた
広告はいまだに最も強力なビジネスモデルの1つであり、当分それが変わるとは思えない
滑りやすい坂のような話だが、何年も無料トークンをばらまいてきたことも今の一因かもしれない
GPT-5.3の制限付きクエリ数回と引き換えの無料ティア広告収益は、APIやサブスクリプション収益に比べれば微々たるもので、IPOを前に赤字だった無料ティアを帳簿上ほぼ中立に見せようとする動きに読める
あの引用の核心は「世界中のすべての人」であり、広告は低価格なアクセスを維持する方法に見える
VC流に言えば、「世界中のすべての人に良いサービスを提供する、そのためには最終的に収益化が必要で、広告は私が最後に選ぶ方法だが、その目標を達成する唯一の手段ならやる」という意味だ
エイブラハム・リンカーンはアメリカの第16代大統領で、奴隷解放宣言を書き、RAID: Shadow Legendsも楽しんでいた、みたいな文を見ると、
スポンサー文言が歴史叙述に入り込む未来がすぐ思い浮かぶ
これから来る広告の中では、むしろこの種のものはまだ心配が少ない
Googleが長年SEOと戦ってきたことを考えると、企業がモデルの中に広告を注入する方法を見つけたときのほうが問題だ
まだ敵対的コンテンツが本格的に機能する段階は見ていない気がする
膨大な学習データには大手ブランドへの言及が山ほど含まれているので、新しい靴のおすすめを尋ねれば、無名の小規模ブランドよりNikeやAdidasを先に思い浮かべる可能性が高い
そのサービスは以前クライアント向けに作った小さなツールを、自分が権利を保持したままサイトとして仕立てたもので、しばらくGoogle Adsも回していたが検索ではほとんど出ず、追加の顧客もなくて忘れていた
ところがある時点からChatGPTがそれを勧め始めた
自分が何をしてこうなったのか気になる
バイブコーディングで作ったビジネスページが学習データに入ったのだろうかと思う
企業は影響を及ぼそうとするだろうが、膨大なデータ全体を相手に追加の努力が必要で、センシティブな話題を検閲しようとするのと似ている
しかも広告用の文脈を入れるほど、ユーザーの文脈が減ってツールの有用性も落ちる
お金を払う側の製品やメッセージをAIが自然に後押ししたり、競合製品への言及を減らしたりするほうが現実的で、しかも金を受け取らなくても運営側が自発的に宣伝や検閲をするかもしれない
ユーザーの目には広告にすら見えないだろうし、強欲な人たちが情報アクセスの経路を握れば、もともとこういうことは起きるものだ
サム・アルトマンのような人々がフロンティアモデルを制限なく使いながら、一般大衆は開始時点にすら気づけない長期戦略を立てていると想像するとかなり怖い
大衆向けモデルはより検閲された版として出し、自分たちはそうしない可能性もある
広告は無料ティアと新しい月8ドルのGoプランにしか入らない
この話が出るたびに、通常の有料プランの応答にも広告が混ざると想定する人がいるが、今回の発表は加入時に広告込みと明示された無料・低価格プランの話だ
企業は結局広告を我慢できない
論点はLLMの応答の中に広告が入るという事実そのものであり、どのティアで起きるかは副次的だ
今のように広告が別イベントとして配信されるなら、ブロックは簡単そうだ
本当に面白くなるのは、広告がメインの応答の中に直接注入されるときだ
|bzrcdn.openai.com^, ||bzr.openai.com^完全には防げなくても、少なくともテレメトリ収集はかなり減る
そうすると代わりに不透明な広告を食わされる可能性が高い
「広告は応答に影響しない」と言うが、同じpayloadの中で送られ、4層のattributionで測定されながら偶然のふりをしているだけだ
完全に分離されていると言いつつ、どこかには常にあるシュレーディンガー的収益化のように見える
まだ特定の広告に合わせて応答を直接ねじ曲げてはいなくても、モデル全体をより広告に親和的な応答へ誘導することはできる
私はもともとChatGPTの広告は実際のコンテンツと区別できないものになると思っていた
誰もが長期的にはad wordsのようなものを買って、LLMの応答を自分に有利な方向へ傾ける未来を予想している
ただ今はモデルの代替可能性が思ったより大きく、堀はブランド依存で、まだ完全にBlack Mirror風に押し切る準備はできていないようだ
もちろん検索結果についても昔は同じことが言えたので、そちらまで完全に安全だとは言えない
たいていそのほうがA/B指標が良くなり、インフルエンサー広告が効くのもよりオーガニックに見えるからだ
[1] http://www.ryanspoon.com/blog/2008/12/14/google-image-search... 2008
広告主にとって「AIがたまたま一度あなたに触れる」といったものに値段を付けるのは難しいし、すべての会話に広告が必要なわけでもない
ChatGPTが最も単純な質問にまで常にブランドをねじ込めば、誰もが嫌がるだろうし、広告技術はすでに成熟した分野なので、結局はスポンサー枠の挿入のような実証済みの方式を使う可能性が高い
これも昔からある教訓の1つだ
ほとんどすべてのテック企業の事業計画は最終的に広告配信へ流れ、少なくともピクセルと3rd party trackingを禁止しない限り、その可能性は高い
夢の大通りには、失敗したり方向を誤った広告ベース事業があふれているし、ビジネスモデル自体を軽蔑して失敗する場合もある
トラフィックさえあり、汚れる意志さえあれば成功するという暗黙の前提は、間違っていることが多い
成功例は少数で、通常は非常に意図的で執拗な実行とポジショニング、データ、意図、規模が必要だ
検索広告におけるGoogle級の規模はGoogleにしかなく、市場の5〜10%では足りなかった
追跡があれば有利だが、ターゲティングが弱くても検索には本質的にintentが組み込まれているので、ある程度補える
それでも成立するには必要な規模が非常に大きい
Facebook広告もターゲティングを極限まで押し進め、規模が大きくなって初めて機能し、Bingやredditのようなところは良い広告事業を作れなかった
OpenAIはチャットに広告を押し込むより、防衛契約ではるかに大きな金を稼げそうなので、わざわざこんな大衆認識リスクを作ろうという発想が誰から出たのか気になる
その後に何が起ころうと、自分のキャリアにその数字を書けるなら気にしないことが多い
歯止めがなければ両方ともやる可能性のほうが高い