ストアフロント、プラットフォームではなく
Danielはマーケットプレイス ShopGrid のリテールメディアを担当しています。このマーケットプレイスには月間2億人のショッパーがおり、ロイヤルティプログラムから決定論的な購買データが得られます。ShopGridの広告ビジネスを構築するよう命じられたとき、ロードマップは見慣れたものでしました。セルフサービスのキャンペーンツール、独自のオーディエンスビルダー、カスタムレポーティングダッシュボード、そして最終的にはDSP。
構築の途中で問題に気づいた。ShopGridが獲得したかったブランド——CPG企業、ヘルス&ビューティーブランド、家電メーカー——はすでに十数のリテールメディアプラットフォームでキャンペーンを管理していました。各プラットフォームには独自のAPI、独自のオーディエンスタクソノミー、独自のレポーティングフォーマットがあった。ブランドにまた別のプラットフォームの統合を求めることは、エンジニアリング予算が100倍の企業とUIの品質で競争することを意味しました。
ShopGridの堀はダッシュボードにあるのではなかった。堀はデータにある。数百万人のロイヤルティ会員による決定論的な購買アトリビューション、数千の店舗にわたるリアルタイム在庫、そして購買ポイントに設置された店舗内デジタルスクリーン。問題は、そのデータとインベントリをできるだけ多くのバイヤーにアクセスしやすくする方法でしました。
DanielはAdCPセールスエージェントを立ち上げた。ShopGridのリテールメディアカタログ全体——スポンサードプロダクト、オンサイトディスプレイ、店舗内スクリーン——が get_products 経由でバイヤーエージェントが探索できるプロダクトとして公開されています。ロイヤルティデータは標準的な配信メトリクスを通じてレポートされるクローズドループアトリビューションを動かす。店舗ロケーションは、近接ターゲティングのためのキャッチメントエリアを持つカタログとしてモデル化されています。
結果として、AdCPに対応しているバイヤーエージェントであれば、カスタム統合なしにShopGridのインベントリで取引できます。Pinnacle AgencyのSamは、Summit Foodsのクロスリテーラーキャンペーンを実行中に、他の小売業者と同じプロトコルとブリーフを使ってShopGridのスポンサードプロダクトを発見しました。
リテールメディアチームが実際に求めているのは、セルフサービスのコントロール、マネージドサービスの簡便さ、そして自社の内部ツールにあるすべてのデータです。セルフサービスプラットフォームはコントロールを与えるが、大規模なエンジニアリング投資が必要です。マネージドサービスはバイヤーにとって簡単だがスケールしません。エージェントストアフロントはこのジレンマを解決します。小売業者はプロダクト、価格設定、ルールを定義し(コントロール)、バイヤーエージェントが営業担当なしに探索と実行を処理し(簡便さ)、小売業者がMCPサーバーを運営しているため、すべてのトランザクションが自社インフラを通じて流れる(データは社内に留まる)。
これはShopGridが他のすべてを放棄したことを意味するわけではありません。バイヤーエージェントを使っていないブランドには依然として基本的なセルフサービスアクセスが必要です。しかしエージェントストアフロントは成長レイヤーです。中規模小売業者の独自プラットフォームを統合しなかったバイヤーにリーチする方法です。
以下の表は、馴染みのあるリテールメディアのコンセプトとAdCP上の対応物をマッピングしています。
コンセプトマッピング
| リテールメディアのコンセプト | AdCPの対応物 | 参照 |
|---|---|---|
| 小売業者 / リテールメディアネットワーク | セールスエージェント(MCPサーバー) | adagents.json |
| 小売業者とのアドバタイザーアカウント | account_id + list_accounts | Accounts & Agents |
| ブランドのプロダクトカタログ | brand.product_catalog | Brand identity |
| プロモーション用のGTIN / SKU選択 | Catalog 上のカタログセレクター(ids、gtins、tags) | Catalogs |
| スポンサードプロダクトリスティング | カタログレンダリングクリエイティブを持つプロダクト | Creative Formats |
| オンサイトディスプレイ / ビデオ | 標準 format_ids を持つプロダクト | Media Products |
| 小売業者のファーストパーティオーディエンス | ブリーフベース;data_provider_signals 経由の名前付きセグメント | Targeting |
| ROASターゲット / コンバージョン最大化 | パッケージ上の optimization_goals | Optimization & Reporting |
| クローズドループ測定 | プロダクト上の outcome_measurement + conversion_tracking | Delivery Reporting |
| アトリビューションウィンドウ(クリック14日、ビュー1日) | 配信レスポンスの attribution_window | Delivery Reporting |
| ROAS / アトリビューテッド収益 | 配信メトリクスの roas、conversion_value | Delivery Reporting |
| 店舗内アトリビューション | in_store を使った by_action_source | Delivery Reporting |
| 店舗ロケーション / 店舗ロケーター | 店舗カタログ(セラー提供またはバイヤー同期) | Catalogs — Stores |
| リアルタイム在庫 / 在庫あり | sync_catalogs 経由のインベントリカタログ | Catalogs |
| 近接 / キャッチメントターゲティング | 店舗キャッチメントエリア(等時線、半径、GeoJSON) | Catalogs — Catchment areas |
list_accounts と account を通じて管理される——Accounts & Agents を参照。
プロダクトスペクトラム
リテールメディアネットワークは多様なプロダクトタイプを提供する——スポンサードリスティングだけではありません。すべてはretail_media チャネルを共有するが、フォーマット、価格設定、クリエイティブ要件が異なります。Danielは ShopGrid の全ポートフォリオをファネル全体でバイヤーエージェントが組み合わせられるよう、個別のプロダクトとしてモデル化しました。
スポンサードプロダクトリスティング
最もシンプルなコマースメディアプロダクト。小売業者はバイヤーのプロダクトカタログからクリエイティブをレンダリングする——カスタムクリエイティブのアップロードは不要。価格設定は通常CPC。catalog_types フィールドはこのプロダクトがサポートするカタログタイプを宣言します。catalog_match フィールドはバイヤーに対して、このプロダクトでどのカタログアイテムが対象かを伝える。バイヤーはメディアバイを作成する際に、これらの値をカタログセレクター(gtins、ids)として使用する——publisher_properties が絞り込みに使える利用可能なプロパティをリストするのと同様です。セラーは matched_gtins、matched_ids、またはその両方を含めることができます。
スポンサードプロダクトリスティングはカタログレンダリング式です。小売業者はGTIN照合によって自社カタログデータからタイトル、価格、画像、評価を取得します。拡張プロダクトコンテンツ(比較チャート、ライフスタイルギャラリー、ブランドストーリーモジュール)とブランドストアは、広告購入ではなく小売業者のコンテンツシステムを通じて管理される補完的なコンテンツ戦略です。
主な特徴:
- CPC価格設定:オークションベースの入札
platform_managed: true:小売業者が常時購買アトリビューションを提供supported_targets:パッケージにoptimization_goalsを設定する際にどのターゲット種別が利用可能かをバイヤーに伝えるtemplates_available: true:小売業者がカタログデータからクリエイティブをレンダリングaction_sourcesにin_storeが含まれ、オムニチャネルアトリビューションを実現
オンサイトディスプレイとビデオ
小売業者のプロパティ上のディスプレイおよびビデオ広告で、小売業者のファーストパーティショッパーデータを使ってターゲティングします。バイヤーは標準クリエイティブを提供します。高い最低出稿額とCPMは、小売業者のオーディエンスデータとギャランティードプレースメントの価値を反映しています。オフサイトオーディエンス拡張
小売業者はファーストパーティ購買データを使って、サードパーティのインベントリでオーディエンスにターゲティングする——小売業者自身のサイトを超えてリーチを拡大します。バイイングコンテキストが小売業者のデータアセットであるため、このプロダクトは依然としてretail_media チャネルに属します。
プレミアムプレースメント
ホームページテイクオーバー、カテゴリースポンサーシップ、季節イベントプレースメント。これらの高視認性ポジションは固定レートでギャランティード配信として販売される——多くの場合、かなり前から予約されます。placements 配列を使うため、バイヤーは同じプロダクト内の異なるポジションに異なるクリエイティブを割り当てられます。
店舗内デジタル
物理的な小売ロケーション内のデジタルスクリーン——レジレーン、エンドキャップ、入口ディスプレイ、待合エリア。これらはデジタルと物理の橋渡しをし、測定は店舗内での購買に紐づく。同期された店舗カタログと組み合わせると、店舗内デジタルプロダクトは特定のロケーションをターゲットにし、在庫を考慮したクリエイティブを表示できます。 店舗内こそ、リテールメディアネットワークが他の誰も複製できないインベントリを持っている場所です。数千の物理ロケーションを持つ小売業者には、購買ポイントにスクリーンがある——ショッパーが通路を歩き回り、棚で商品を比較し、列に並んで待っている間にリーチできます。これらのショッパーの多くはオンライン広告をまったく見ない。店舗内でのみ買い物するため、オンラインチャネルでは到達不可能です。これらの例を超えて
リテールメディアポートフォリオは上記の5つのプロダクトタイプを超えることが多い。スポンサードブランド広告——ヘッドライン、ブランドロゴ、2〜3つのフィーチャードプロダクト——は、バイヤーからのカスタムヘッドラインとカタログレンダリングのプロダクトタイルを持つ、スポンサードプロダクトリスティングとディスプレイの中間に位置します。デジタルクーポンとキャッシュバックオファーは購買に直接結びつき、インプレッションベースモデルにはうまく収まらない——CPAプライシングとconversion_tracking を持つプロダクトとしてモデル化できます。小売業者のメールニュースレターやアプリのプッシュ通知のスポンサードプレースメントは、高パフォーマンスなロウファネルプロダクトで、異なる format_ids を持つオンサイトディスプレイと同様にモデル化されます。ショッパブルビデオ——ビデオフレーム内でプロダクトがタグ付けされ、視聴者がカートに追加できる——はビデオフォーマットとカタログレンダリングのプロダクトオーバーレイを組み合わせます。キーワードレベルの検索スポンサーシップ、サンプリングプログラム、レシピ統合はそれぞれ異なる経済性を持つが、同じパターンに従う。適切な価格モデル、フォーマット、測定宣言を持つプロダクトです。
エンドツーエンドのワークフロー
{
"name": "Summit Foods",
"url": "https://summitfoods.example.com",
"product_catalog": {
"feed_url": "https://summitfoods.example.com/products.xml",
"feed_format": "google_merchant_center",
"categories": ["food/sauces", "food/condiments", "beverages"],
"update_frequency": "daily"
}
}
メディアバイを作成する前に、
sync_catalogs 経由でブランドのデータフィードを小売業者のアカウントに同期します。これにより配信時にクリエイティブとターゲティングが参照するアカウント状態が構築されます。これが全体的なセットアップシーケンスにどう合うかは Account state を参照。{
"account": { "account_id": "acct_summitfoods_shopgrid_001" },
"catalogs": [
{
"catalog_id": "product-feed",
"name": "Summit Foods Product Catalog",
"type": "product",
"url": "https://summitfoods.example.com/products.xml",
"feed_format": "google_merchant_center",
"update_frequency": "daily"
},
{
"catalog_id": "inventory-feed",
"name": "Store-Level Inventory",
"type": "inventory",
"url": "https://feeds.summitfoods.example.com/inventory.json",
"feed_format": "custom",
"update_frequency": "hourly"
}
]
}
店舗ロケーションはセラー提供であり、バイヤーが同期するものではありません。 リテールメディアでは、小売業者は自社の店舗ロケーションを所有している——CPGブランドは小売業者に小売業者の店舗を同期しません。小売業者の店舗カタログ(近接ターゲティングのためのキャッチメントエリアを持つ)はプラットフォームサイドのデータであり、バイヤーはターゲティングで参照できます。自社の物理ロケーションを運営するバイヤー(例:実店舗を持つDTCブランド、レストランチェーン)は、
sync_catalogs を通じて自社の店舗カタログを他のプラットフォームに同期することになります。同期されたカタログが必要なフォーマットは、
assets 配列に catalog アセットタイプを宣言する——バイヤーエージェントはクリエイティブを提出する前にこれをチェックします。スポンサードプロダクトカルーセルには product カタログと inventory カタログの両方が必要な場合があります。channels: ["retail_media"] を指定して get_products をクエリし、コマースメディアプロダクトを見つける。ブランドアイデンティティにより、セラーはカタログ適格性でフィルタリングできます:{
"brief": "Promote our organic ketchup line across grocery retailers. Focus on high-intent shoppers.",
"brand": {
"domain": "summitfoods.example.com"
},
"filters": {
"channels": ["retail_media"]
}
}
セラーは、バイヤーのGTINが小売業者のカタログにマッチするプロダクトを返します。マルチプロダクト小売業者は、スポンサードプロダクト、オンサイトディスプレイ、オフサイト拡張を個別のプロダクトとして返すことがあります。
{
"product_id": "shopgrid_sponsored_products",
"catalog_match": {
"matched_gtins": ["00013000006408", "00013000006415", "..."],
"matched_count": 3,
"submitted_count": 1200
}
}
これはバイヤーに対して、この小売業者でどのGTINが対象で、全カタログアイテムの何件が評価されたかを伝える。バイヤーはメディアバイを作成する際に
matched_gtins の値をカタログの gtins セレクターとして使用するか、カタログカバレッジを考慮して tags や category のような広いセレクターを使用します。セラーはまた、プロダクトタイプ間での推奨予算配分を持つプロポーザルを
get_products レスポンスとともに返すことができる——これは従来、人間の営業担当が必要だったメディアプランニングの専門知識をエンコードするものです。{
"account": { "account_id": "acct_summitfoods_shopgrid_001" },
"brand": {
"domain": "summitfoods.example.com"
},
"start_time": "2026-04-01T00:00:00Z",
"end_time": "2026-04-30T23:59:59Z",
"packages": [
{
"product_id": "shopgrid_sponsored_products",
"pricing_option_id": "sp_cpc",
"budget": 15000,
"bid_price": 1.10,
"pacing": "even",
"optimization_goals": [{
"kind": "event",
"event_sources": [
{ "event_source_id": "shopgrid_purchases", "event_type": "purchase", "value_field": "value" }
],
"target": { "kind": "per_ad_spend", "value": 3.0 },
"priority": 1
}]
},
{
"product_id": "shopgrid_onsite_display",
"pricing_option_id": "onsite_cpm",
"budget": 25000,
"pacing": "even"
},
{
"product_id": "shopgrid_homepage_takeover",
"pricing_option_id": "takeover_flat",
"budget": 50000
}
]
}
account はこの小売業者とのブランドの請求関係を識別します。スポンサードプロダクトパッケージは、どのアイテムをプロモーションするかを指定するためにカタログセレクター(gtins、tags)を使用し、optimization_goals に per_ad_spend ターゲットを設定して、小売業者に購買額の3倍のリターンに向けて配信を最適化するよう伝える。ディスプレイとプレミアムパッケージは標準的なクリエイティブワークフローを使用します。コマースメディアの配信レポートには、従来のメディアにはないアトリビューションメトリクスが含まれます。
attribution_window はクロスプラットフォーム比較のための測定方法論を透明にします:{
"reporting_period": {
"start": "2026-04-01T00:00:00Z",
"end": "2026-04-14T23:59:59Z"
},
"currency": "USD",
"attribution_window": {
"post_click": { "interval": 14, "unit": "days" },
"post_view": { "interval": 1, "unit": "days" },
"model": "last_touch"
},
"media_buy_deliveries": [
{
"media_buy_id": "mb_shopgrid_001",
"status": "active",
"totals": {
"impressions": 850000,
"spend": 10350
},
"by_package": [
{
"package_id": "pkg_sp_001",
"pricing_model": "cpc",
"rate": 0.92,
"currency": "USD",
"impressions": 850000,
"spend": 10350,
"clicks": 11250,
"conversions": 2100,
"conversion_value": 28500,
"roas": 2.75,
"cost_per_acquisition": 4.93,
"by_action_source": [
{ "action_source": "website", "count": 1500, "value": 20000 },
{ "action_source": "app", "count": 350, "value": 4800 },
{ "action_source": "in_store", "count": 250, "value": 3700 }
],
"delivery_status": "delivering"
}
]
}
]
}
クローズドループアトリビューション
コマースメディアの決定的な優位性は、決定論的な購買アトリビューションです。小売業者はロイヤルティカードデータ、ログイン状態、POSレコードを使って広告露出とトランザクションをマッチングします。これこそ、リテールメディアを他のすべてのメディアチャネルと根本的に異なるものにするアセットだ——そして、エージェントストアフロントが標準の配信レポーティングを通じてバイヤーエージェントに公開するものです。
プロダクトによる宣言方法
プロダクトは2つのフィールドを通じてクローズドループ機能を示す:outcome_measurement はアトリビューション方法論を説明します:
conversion_tracking はアクションソースと小売業者が測定を管理するかどうかを宣言します:
platform_managed が true の場合、小売業者が常時測定を提供します。バイヤーサイドのピクセルやイベントソースの設定は不要です。
小売業者によってアトリビューションウィンドウが異なる(例:クリック14日 vs クリック7日)。配信レスポンスの
attribution_window はこれを透明にするため、バイヤーは小売業者間でROASの比較を正規化できます。主要な配信メトリクス
| メトリクス | フィールド | 説明 |
|---|---|---|
| 広告費用対効果 | roas | conversion_value / spend |
| アトリビューテッド収益 | conversion_value | 広告にアトリビュートされた総購買額 |
| コンバージョン | conversions | 広告にアトリビュートされた購買イベント数 |
| 獲得単価 | cost_per_acquisition | spend / conversions |
| ニューカスタマー率 | new_to_brand_rate | 初回購入者からのコンバージョンの割合 |
| 店舗内売上 | by_action_source | website、app、in_store 別の内訳 |
| イベントタイプ別 | by_event_type | purchase、add_to_cart などによる内訳 |
従来のメディアバイとの違い
| 側面 | 従来のメディア | コマースメディア |
|---|---|---|
| アトリビューション | 確率論的、モデルベース | 決定論的、購買ベース |
| ターゲティングデータ | サードパーティ、コンテクスチュアル | ファーストパーティの購買/ロイヤルティデータ |
| 主要KPI | インプレッション、クリック、CTR | ROAS、コンバージョン、アトリビューテッド収益 |
| クリエイティブ(スポンサード) | バイヤー提供 | 小売業者がカタログからレンダリング |
| 測定の所有者 | サードパーティ(IAS、DV) | 小売業者プラットフォーム(platform_managed) |
| コンバージョンソース | ウェブサイトのみ | ウェブサイト + アプリ + 店舗内 |
| ランディングページ | 任意の目的地 | 多くの場合、小売業者サイトのみ |
| 価格モデル | CPM、CPC、CPCV | CPC(スポンサード)、CPM(ディスプレイ)、固定レート(プレミアム) |
ベストプラクティス
小売業者向け:エージェントストアフロントの立ち上げ
デフォルトのリテールメディアのプレイブック——セルフサービスプラットフォームを構築し、営業チームを採用し、マネージドサービス収益を伸ばし、最終的にDSPを構築する——は最大の小売業者には機能します。それ以外の場合、桁違いのリソースを持つプラットフォームと競いながら、何年ものエンジニアリング投資が必要になります。 エージェントストアフロントは経済性を変える。ブランドが学ばなければなりませんプラットフォームを構築する代わりに、バイヤーエージェントがすでに使いこなしている標準プロトコルでインベントリを公開します。エンジニアリング投資は実際の差別化要因——データ品質、測定精度、インベントリの幅——に向けられ、ダッシュボードのUXには向けられない。- プロダクトタイプを個別にモデル化する — スポンサードプロダクト、オンサイトディスプレイ、オフサイト、プレミアムプレースメント、店舗内デジタルは、適切な価格設定とフォーマットを持つ個別のプロダクトであるべきです。これにより、バイヤーエージェントが小売業者間で比較検討できます。
- データを前面に出す —
deterministic_purchaseアトリビューションとplatform_managed: trueのconversion_trackingを持つoutcome_measurementを宣言します。これがバイヤーエージェントが最適化する対象です。測定が弱い小売業者は、UIの品質に関わらず、測定が強い小売業者に負ける。 - 物理的なフットプリントを公開する — バイヤーエージェントが地理でターゲティングできるよう、キャッチメントエリアを持つ店舗カタログを提供します。店舗内デジタルインベントリは、オンラインのみのプラットフォームが提供できないものです。発見可能にすること。
- スポンサードプロダクトリスティングに
catalog_matchを返す — バイヤーがどのGTIN/SKUが対象かを確認できるようにします。これは営業担当が「あなたの1,200商品のうち3点を取り扱っています」と言うのと同等だが——クエリ時に自動的に発生します。 - 配信レスポンスに
attribution_windowを含める — 小売業者間で比較するバイヤーは、ルックバックウィンドウとモデルを知る必要があります。 by_action_sourceをレポートする — ウェブサイト、アプリ、店舗内コンバージョンを示すオムニチャネルの影響を報告します。クロスチャネルビューはコマースメディア固有のものであり、予算配分を促進します。- プロポーザルを使用する —
get_productsレスポンスとともに、プロダクトタイプ間での推奨予算配分を返します。これにより、営業担当との会話を、バイヤーエージェントが評価できる構造化データに置き換え、メディアプランニングの専門知識をプロトコルにエンコードします。 - すべてのコマースメディアプロダクトに
channels: ["retail_media"]を設定する — バイヤーがチャネルでフィルタリングできるようにします。
ブランド向け
- アカウントを早期にセットアップする — バイを行う前に
list_accountsを使って各小売業者との請求関係を確認します - プロダクトとインベントリフィードを早期に同期する — プロダクトとインベントリのカタログはバイを作成する前にアカウントに同期しておくべきです。インベントリフィードは毎時更新、プロダクトフィードは毎日更新されます。
- ターゲティングで小売業者の店舗カタログを参照する — 小売業者の店舗ロケーションとキャッチメントエリアはプラットフォームサイドのデータです。自社の店舗カタログを同期せずに近接ターゲティングに使用します。
optimization_goalsを使用する — パッケージにcost_perまたはper_ad_spendターゲットを持つイベントゴールを設定し、小売業者が購買データに対して配信を最適化できるようにします- カタログセレクターを戦略的に使用する — 特定の商品には
gtins、広範なプロモーションにはtagsやcategory - ファネル全体に予算配分する — コンバージョンにはスポンサードプロダクト、認知度向上にはオンサイトディスプレイ、リーチ拡大にはオフサイト
- アトリビューションウィンドウを比較する — 異なるルックバックウィンドウを持つ小売業者間でROASを正規化するために、配信レポートの
attribution_windowを使用します
関連ドキュメント
- Account state — カタログ、イベントソース、キャンペーンがアカウント上にどう構築されるか
- Accounts & Agents — アカウントのセットアップと請求関係
- Media Channel Taxonomy —
retail_mediaチャネルの定義 - Media Products — プロダクトモデルのリファレンス
- Catalogs — プロダクト、インベントリ、店舗、プロモーションのフィード
- Brand identity — プロダクトカタログとブランドアイデンティティ
- Pricing Models — CPC、CPM、固定レートの詳細
- Optimization & Reporting —
optimization_goalsとコンバージョン最適化 - Delivery Reporting — コマースアトリビューションメトリクス
- Targeting — ブリーフベースのターゲティングアプローチ