このページでは、Google Chat の AMP HTML 広告 。詳しくは、以下のリソースをご覧ください AMP HTML 広告とツールについて簡単に説明します。
大まかな流れ
RTB 入札リクエスト
RTB 入札リクエストは、そのリクエストが AMP ページからのものかどうかを示します。 AMP HTML 広告の要件をご確認ください
OpenRTB
AMP ページ
message SiteExt { enum AmpPage { // This is not an AMP page. DIALECT_HTML = 0; // This is an Amp page. DIALECT_HTML_AMP = 1; } // Whether this is an AMP page or not. Omitted if unknown. optional AmpPage amp = 1; enum VisibilityState { VISIBILITY_STATE_UNKNOWN = 0; // The page is at least partially visible. For example, in the foreground // tab of a non-minimized window. VISIBILITY_STATE_VISIBLE = 1; // The page is not visible to users. For example, when the page is in a // background browser tab, or in a minimized window. VISIBILITY_STATE_HIDDEN = 2; } // The visibility state of the web page containing the ad slot. // See https://www.w3.org/TR/page-visibility/. // [AdX: BidRequest.page_visibility] optional VisibilityState page_visibility = 2 [default = VISIBILITY_STATE_UNKNOWN]; // Information about a browser window's user activation state. See // https://html.spec.whatwg.org/multipage/interaction.html#the-useractivation-interface. message UserActivation { // Indicates whether a user has completed an interaction since page load. optional bool wasact = 1; // Indicates whether a user is currently interacting with the page. optional bool isact = 2; } // User activation information from the browser for the current request, if // the request is for a web page. optional UserActivation uact = 5; // The set of possible web navigation types that predicate a page load. Each // of these types may have different performance characteristics. For example, // users going back and forth might experience a faster site than users // performing navigation for the first time or submitting forms. See // https://w3c.github.io/navigation-timing/#dom-performancenavigationtiming-type. enum NavigationType { NAVIGATION_TYPE_UNKNOWN = 0; // Navigation started by clicking a link, entering the URL in the browser's // address bar, form submission, or initializing through a script operation // other than reload and back_forward. NAVIGATION_TYPE_NAVIGATE = 1; // Navigation is through the browser's reload operation, location.reload(), // or a Refresh pragma directive like // <meta http-equiv="refresh" content="300">. NAVIGATION_TYPE_RELOAD = 2; // Navigation is through the browser's history traversal operation. NAVIGATION_TYPE_BACK_FORWARD = 3; // Navigation is initiated by a prerender hint (deprecated). See // https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel/prerender. NAVIGATION_TYPE_PRERENDER = 4; } // The type of browser navigation that led to the current page. Unset for // non-web ad requests. optional NavigationType ntype = 6; // Indicates that the request is using semi-transparent branding, // which means only a truncated version of the request URL will // be provided. This decision is made by the publisher, see // https://support.google.com/admanager/answer/4584891#urls for context. optional bool is_semi_transparent_request = 3; // The domain of the partner (of the site owner) with ownership // of some portion of ad inventory on the site. The partner's ads.txt file // will be hosted here. More detail at // http://iabtechlab.com/wp-content/uploads/2021/03/ctv-app-ads-explainer-guide.pdf optional string inventorypartnerdomain = 4; }
AMP HTML 広告の要件
// Ad Exchange extensions for the Imp object. message ImpExt { ... // Possible requirement types for AMP ads. enum AmpAdRequirementType { // AMP ad requirements unknown. UNKNOWN_AMP_AD_REQUIREMENT_TYPE = 1; // AMP ads are not allowed. AMP_AD_NOT_ALLOWED = 2; // Either AMP ads or non-AMP ads are allowed; // AMP ads are not early rendered. AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED = 3; // Either AMP ads or non-AMP ads are allowed; // AMP ads are early rendered. AMP_AD_ALLOWED_AND_EARLY_RENDERED = 4; // AMP ads are required. // Ads that are non-AMP may be rejected by the publisher. AMP_AD_REQUIRED = 5; // Exchange-specific values above 500. } optional AmpAdRequirementType ampad = 8 [default = UNKNOWN_AMP_AD_REQUIREMENT_TYPE]; }
認定バイヤー RTB
AMP ページ
// Whether this is an AMP page or not. enum AmpPage { // AMP page status unknown. UNKNOWN_AMP_PAGE = 0;
AMP HTML 広告の要件
// Possible requirement types for AMP ads. enum AmpAdRequirementType { // AMP ad requirements unknown. UNKNOWN_AMP_AD_REQUIREMENT_TYPE = 0;
RTB 入札レスポンス
OpenRTB
<ph type="x-smartling-placeholder"></ph>年 OpenRTB 3.0 と付随する 共通モデルに沿って AMP HTML 広告をサポート。 下記を含む IAB の最新のドラフト仕様をご覧ください。
入札単価 | フィールド | Attr | タイプ | 説明 |
---|---|---|---|---|
リクエスト | Site.amp |
amp |
integer | Site.amp フィールドは、ページがレンダリングされるかどうかを示します。
AMP 内、不明な場合は省略:0 = ページが非 AMP1 = ページが AMP HTML で作成されている |
リクエスト | ampformat |
rend |
integer | AMP 形式の仕様での要件とレンダリングについて
AMP HTML 広告の動作:1 = AMP 広告の要件が不明2 = AMP 広告を許可しない3 = AMP 広告または非 AMP 広告のいずれかが許可されます。AMP 広告が早期レンダリングされない4 = AMP 広告または非 AMP 広告のいずれかが許可されています。AMP 広告は早期表示されます。5 = AMP 広告が必要。AMP 以外の広告はパブリッシャーによって拒否される可能性があります500+ = エクスチェンジ固有の値。事前に入札者に |
レスポンス | display |
curl |
文字列 | 入札レスポンスに display.curl が追加され、送信できるようになりました
AMP HTML 広告にも対応しています。これは、クリエイティブのマークアップがある URL です。次のようなクリエイティブ タイプに適用可能: AMP、VAST、DAAST、ネイティブの 3 つです通常、特定の広告で有効になるのは adm または curl のいずれか 1 つのみです。 |
認定バイヤー RTB
認定バイヤーの入札単価の BidResponse.Ad.amp_ad_url
フィールド
レスポンスでは、AMP HTML 広告コンテンツを指す URL を指定できます。同じフィールドが存在する
Bid
オブジェクトの拡張機能として(Google の OpenRTB)
説明します。
// The URL to fetch an AMPHTML ad. Only one of the following should be set: // html_snippet, video_url, amp_ad_url, native_ad. optional string amp_ad_url = 23;
有効な AMP HTML の確認
AMP HTML 広告を早期レンダリングするには、エクスチェンジで所有権の確認と
署名し、広告が amp4ads <html
amp4ads>
クリエイティブ フォーマットで作成されていることを示します。
有効な AMP HTML 広告は、AMP ページで早期にレンダリングできます。広告 AMP HTML でも有効な AMP HTML とは 非 AMP HTML 広告の場合もあります。
amp_ad_url
には AMP HTML 広告のみが返されます。
今後、パブリッシャーが AMP HTML 広告のみを必要とする場合、AMP HTML 広告として AMP HTML はレンダリングされません。
認定バイヤーの場合、ビッダーは AMP HTML 広告が必要な広告スロットに AMP HTML 以外の広告を追加します。
サーバーサイド フェッチ
AMP HTML 広告を早期にレンダリングするには、AMP HTML 広告のコンテンツをレンダリングする必要があります。 クライアントから追加のホップなしで リクエストできますこれは、 広告の遅延や余分なクライアントサイド呼び出しが原因で、ユーザー エクスペリエンスが低下することがあります。
オークションで入札者が落札した後、エクスチェンジでは
URL にある AMP HTML 広告コンテンツを取得するサーバー間リクエスト
amp_ad_url
で提供される。クリエイティブ サーバーが応答して結果を返す必要があります。
300 ミリ秒以内です。
クリエイティブ サーバーから返された AMP HTML 広告は、
その後レンダリングされますなお、有効な AMP HTML 広告には
iframe、またはその他の <amp-ad>
タグ。AMP HTML の
広告の仕様をご覧ください。
ベータ版のみの機能: 必要な場合は、アカウント チームにお問い合わせください
AMP HTML 広告(
amp_ad_url
)、認定バイヤーは HTTP ヘッダーと IP
ユーザーのブラウザからクリエイティブサーバーに
送信される情報ですこれにより
標準のクライアントサイド
取得しますIP アドレスが最初の 3 バイトに切り詰められることがあります。
(IPv4)、または最初の 6 バイト(IPv6)。この処理が必要な場合は、Google のアカウント担当者にお問い合わせください。
機能。HTTP ヘッダーの例を次に示します。
インプレッション トラッキング URL とクリックマクロ
RTB 購入者は通常、インプレッション トラッカーを構造化フィールドとして
入札レスポンス(Bid.burl
、
OpenRTB 2.5)。
認定バイヤーでは、これらはクライアントサイドで呼び出されます。amp-pixel は、クリエイティブのレンダリング時にトラッキング URL を配信します。amp-analytics レンダリングにとどまらない、より高度なトラッキングのユースケースに対応できます。
AMP HTML 広告には有効なクリックマクロを AMP HTML ですこれは通常、次のような形式になります。
<a href="%%CLICK_URL_UNESC%%http%3A%2F%2my.adserver.com%2Fsome%2Fpath%2Fhandleclick%3Fclick%3Dclk"></a> <a href=”https://my.adserver.com/click?google_click_url=%%CLICK_URL_ESC%%”></a>
Cookie マッチング
多くの場合、クリエイティブに Cookie が含まれる
照合ピクセルを使用します。AMP HTML 広告では、
amp-pixel
および amp-analytics
説明します。Google Cloud 上の Cloud Identity を使用して
amp-analytics
または amp-pixel
の場合は、
ディスカッション用の GitHub の問題
指定します。Google は、あらゆるユーザーのニーズに応える新しい拡張機能を
多数の企業があります詳しくは、
詳細
ガイドラインまたは
技術
新しい拡張機能を作成するためのガイドをご覧ください。
テスト用の AMP 広告 URL の例
テストには、以下の AMP HTML 広告コンテンツのサンプルを使用できます。
リソース
AMP プロジェクトと Google は、AMP プロジェクトを始める際に役立つさまざまなリソースを提供しています。
- AMP で広告を作成する
- AMPHTML 広告クリエイティブ フォーマットの仕様(GitHub)
- AMPHTML 広告の概要(GitHub)
- AMP HTML 広告 AMP プロジェクトのウェブサイト
- 例 AMP HTML 広告
- スピード 比較 - AMP HTML 広告の読み込み速度を 通常の広告3G 接続で視聴することをおすすめします。
- IAB / OpenRTB グループへの RTB 固有のプロポーザル