發布商通常會提供多元化的廣告需求來源,盡可能提高收益,並叫用多間公司 (例如發布商廣告伺服器、供應端平台和需求端平台),找出網頁上指定廣告版位的最佳廣告。發布商可透過標頭出價,從各種廣告需求來源擷取廣告空間的出價。在連續競價設定中,系統可能會使用標頭競價程式庫,透過比對內容資料執行競價,並使用 Protected Audience 透過跨網站資料執行競價。
開始之前,請先參閱 Prebid.js 說明文件中的到達網頁和刊頭出價,瞭解 Protected Audience 的基本概念。
定義
拍賣
| 競價 | 定義 |
| 內容比對競價 | 廣告競價會使用競價執行環境中的可用資料。內容相關競價中可能有多個競價,例如頁首競價和伺服器端競價。 |
| Protected Audience 競價 | 廣告競價,其中涉及對在其他網站上建立的興趣群組出價。 |
| Protected Audience 多個賣方競價 | 兩層式 Protected Audience 競價,首先會進行多個平行元件競價,然後將得分最高的廣告提交至最終的頂層競價。 |
| 頂層競價 | Protected Audience 多個賣方競價中的最終廣告競價,可為元件競價的勝出者提供元件競價的評分。 |
| 元件競價 | Protected Audience 多個賣方競價中的巢狀競價,每個元件賣方會平行執行元件競價。各元件競價中得分最高的廣告會傳送至頂層競價。 |
| 依序競價設定 | 整合內容相關競價和 Protected Audience 競價的廣告競價設定,並決定這兩項競價的勝出者。 |
參與者
| 參與者 | 定義 |
| 廣告主 | 想要刊登廣告並建立廣告素材的當事人。 |
| 發布者 | 提供廣告空間供競價的對象。 |
| 買方 | 在競價中出價,向賣家購買廣告空間的當事人。通常是需求端平台 (DSP)。 |
| 發布商廣告伺服器 | 發布商用來管理及選擇要在網站上顯示的廣告。發布商廣告伺服器可能會合併自身的競價結果、頁首出價工具回應、直接銷售的廣告空間等,以判斷哪則廣告能為發布商帶來最多收益。
發布商廣告伺服器可能會提供用戶端程式庫,用於與伺服器互動。 |
| 頂級賣家 | 發出 (即建立) Protected Audience 多個賣方競價,並參與頂層競價的當事人。 |
| 元件賣家 | 在 Protected Audience 多重賣方競價中,執行元件競價的當事人,負責將發布商的廣告空間賣給買方。通常是供應端平台 (SSP)。 |
依序競價設定
在連續競價設定中,系統會先執行內容相關競價,再執行 Protected Audience 競價。發布商可透過這項設定,在網頁上使用可用的內容相關資料進行競價,同時在安全環境中運用跨網站資料進行競價,保護使用者隱私,進而盡可能提高收益。
系統可能會先在網頁上執行標頭出價程式庫,收集發布商廣告伺服器內容相關競價的出價。接著,內容相關競價的調整後勝出出價價格,就能以底價形式輸入 Protected Audience 競價。在評分步驟中,頂層賣家可以在計算期望分數時,為元件競價出價指派零分,藉此將出價金額降至出價底價以下。如果沒有任何 Protected Audience 元件競價出價高於出價底價,系統就會向使用者放送情境競價勝出的廣告。如果 Protected Audience 競價傳回勝出者,表示該出價高於底價,系統會向使用者顯示 Protected Audience 勝出廣告。
在這個連續競價設定範例中,網頁上可能會依序執行三項主要競價:1) 透過頁首出價程式庫進行內容相關競價、2) 透過發布商廣告伺服器進行內容相關競價,以及 3) Protected Audience 競價。
總覽圖的詳細說明:
- 在競價前,使用者會加入廣告主網站的興趣群組。
- 使用者稍後造訪發布商網頁時,Prebid.js 會執行情境競價,從標頭出價方收集出價回應。在這個步驟中,買方可能會提供信號,賣方可能會提供元件競價設定,供後續的 Protected Audience 競價使用。Prebid.js 提供模組,可將這些信號和設定傳播至 Protected Audience 競價。
- Prebid.js 收集的出價回應會傳送至發布商廣告伺服器,進行伺服器端內容相關競價。
- 發布商廣告伺服器可能會合併自身的競價結果、頁首競價結果、直接銷售的廣告空間等,以判斷哪則廣告能為發布商帶來最多收益。勝出的廣告會傳回發布商廣告伺服器的用戶端程式庫。
- 發布商廣告伺服器的用戶端程式庫會收集 Prebid.js 提供的內容相關競價得標者調整後出價、買方信號 (
perBuyerSignals) 和賣方元件競價設定,並傳遞至 Protected Audience 競價。 - 頂層賣方會執行 Protected Audience 多賣方競價。在頂層賣家的評分步驟中,頂層賣家可能會比較每個元件競價的勝出出價與情境競價的調整後勝出出價。如果元件出價低於情境競價出價,則頂層賣家會傳回
0的合意分數。如果所有出價都經過0評分,則runAdAuction()呼叫會傳回null,表示應算繪內容相關競價的得標廣告。 - 發布商廣告伺服器用戶端程式庫會根據
runAdAuction()呼叫傳回的內容,算繪勝出的 Protected Audience 廣告或內容相關廣告。 - 向使用者放送勝出的廣告。
競價前
在競價前,當使用者造訪廣告主網頁時,買方和廣告主可以定義使用者所屬的網站興趣群組,並加入廣告主網站和第一方資料的脈絡資料,做為稍後競價的信號。
- 使用者前往廣告主網站。
- 廣告主網站會在稍後載入參與競價的每個買家提供的指令碼。
- 買方指令碼包含
joinAdInterestGroup()呼叫,可將使用者加入買方興趣群組。
使用 Prebid.js 和發布商廣告伺服器進行內容相關競價
在連續競價設定中,所有內容相關競價都會在 Protected Audience 競價執行前完成。在本文件說明的設定中,我們透過 Prebid.js 執行標頭出價情境式競價,並透過發布商廣告伺服器提供伺服器端競價。
發布商首先會呼叫 Prebid.js,並使用旗標註記稍後將執行 Protected Audience 競價,藉此啟動標頭出價內容相關競價。接著,Prebid.js 會收集出價回應,並傳送至發布商廣告伺服器,進行伺服器端內容相關競價。在收集出價回應的步驟中,買方和賣方可選擇提供元件競價設定和買方信號 (perBuyerSignals),供後續的 Protected Audience 競價使用。該元件競價設定最終會傳遞至後續的 Protected Audience 競價。
- 初始化情境競價:使用者造訪發布商網頁。
- 發布商網頁會載入發布商廣告伺服器用戶端程式庫,並定義廣告版位。
- 發布商網頁會載入 Prebid,並啟動標頭出價情境競價。
- 賣家 A 的比對內容競價(與賣家 B 的比對內容競價同時進行)。Prebid.js 會將出價要求傳送給賣方 A。
- 賣方 A 擷取買方的出價回應和
perBuyerSignals。 - 賣家 A 執行內容比對競價。
- 賣家 A 會建構包含
perBuyerSignals的元件競價設定。 - 賣家 A 會向 Prebid.js 回應得標出價和元件競價設定。
- 賣家 B 的比對內容競價 (與賣家 A 的比對內容競價同時進行)。Prebid.js 會將出價要求傳送給賣方 B。
- 賣方 B 擷取買方的出價回應和
perBuyerSignals。 - 賣家 B 執行內容比對競價。
- 賣家 B 會建構包含
perBuyerSignals的元件競價設定。 - 賣方 B 會向 Prebid.js 回應勝出出價及其元件競價設定。
- 發布商廣告伺服器的內容相關競價:Prebid.js 收集的出價回應會傳送至發布商廣告伺服器,以進行內容相關競價。
- 含有買方信號的元件競價設定會與發布商廣告伺服器的用戶端程式庫共用
- 發布商廣告伺服器會執行比對內容競價,從直接銷售廣告活動、程式輔助出價、Prebid 的比對內容出價和其他廣告空間中,找出最合適的廣告。
- 發布商廣告伺服器會傳回調整後的勝出出價。
Protected Audience 多個賣方競價
此時,內容相關競價已結束,發布商廣告伺服器的用戶端程式庫可將內容相關競價的勝出調整後出價、元件競價設定,以及參與 Protected Audience 競價的買方信號,傳遞至頂層賣方。內容相關競價出價價格可做為底價,傳遞至競價設定,做為頂層競價評分的信號。
元件競價會平行執行,在每次元件競價中,瀏覽器會根據參與該元件競價的每位買家出價邏輯產生出價、使用元件賣家的評分邏輯為每個出價評分,然後將評分最高的廣告傳回頂層競價。
- 發布商網站會載入頂層賣方的指令碼。
- 發布商廣告伺服器的用戶端程式庫會提供比對內容競價出價、元件競價設定,以及來自買方的訊號給頂層賣方。內容相關競價的得標廣告出價可做為賣方信號傳遞至競價設定 (這個出價會顯示在頂層賣方的
scoreAd()函式中)。 - 頂層賣家會呼叫
runAdAuction(),啟動 Protected Audience 競價。 - 賣家 A 元件競價 (與賣家 B 的元件競價平行進行)。瀏覽器會讀取參與賣家 A 元件競價的所有買家,以及使用者的興趣群組。
- 瀏覽器會從參與元件競價的買方興趣群組中,擷取出價指令碼和受信任的出價信號。
- 瀏覽器會執行各買方的出價產生邏輯,產生出價。
- 瀏覽器會從賣方 A 擷取每個廣告的評分指令碼和可信評分信號。
- 瀏覽器會針對每個出價執行賣家 A 的評分邏輯。
- 瀏覽器會選擇賣家 A 評分邏輯提交的最高分廣告。
- 賣家 B 元件競價 (與賣家 A 的元件競價平行進行)。瀏覽器會讀取參與賣家 B 元件競價的所有買家,所屬的使用者興趣群組。
- 瀏覽器會從參與元件競價的買方興趣群組中,擷取出價指令碼和受信任的出價信號。
- 瀏覽器會執行各買方的出價產生邏輯,產生出價。
- 瀏覽器會從賣方 B 擷取每個廣告的評分指令碼和可信評分信號。
- 瀏覽器會針對每項出價執行賣家 B 的評分邏輯。
- 瀏覽器會選擇賣家 B 評分邏輯提交的最高分廣告。
頂層競價評分和廣告放送
執行上一節的元件競價後,瀏覽器會對每個元件競價的得標廣告執行頂層賣方的評分邏輯。在頂層賣方的 scoreAd() 函式中,比對內容競價調整後出價可能以 sellerSignals 形式提供,而評分邏輯可能會比較該比對內容競價出價與 Protected Audience 元件競價的得標出價。
如果內容相關競價的勝出出價高於元件競價的勝出出價,則 scoreAd() 函式可以傳回 0 的合適度分數。如果沒有廣告的期望分數高於 0,表示內容相關競價的得標廣告價值高於任何元件競價的得標廣告,且 runAdAuction() 函式會傳回 null。
如果 Protected Audience 競價沒有勝出者,並傳回 null,發布商的廣告伺服器用戶端程式庫就能將內容相關競價勝出者算繪至 iframe。如果 Protected Audience 競價勝過內容相關競價,並傳回 FencedFrameConfig 物件或不透明的 URN,勝出的 Protected Audience 競價廣告就能顯示在設有範圍的影格或 iframe 中。
- 頂層競價廣告評分:瀏覽器會從頂層賣家擷取評分指令碼,以及每則廣告的信任評分信號。
- 瀏覽器會針對所有元件競價的每個得標出價,執行頂層賣方的評分邏輯。在頂層賣方的
scoreAd()指令碼中,邏輯可存取可能已在競價設定中以sellerSignals形式傳遞的脈絡競價調整後得標價格。指令碼可以比較比對內容出價的勝出價格與元件 Protected Audience 出價,如果比對內容價格較高,則傳回 0 的合適度分數。否則,指令碼可能會根據 Protected Audience 出價價格計算期望分數。 - 瀏覽器會選擇頂層賣家評分邏輯提交的最高期望分數廣告。
- 如果 Protected Audience 競價勝出:Protected Audience 競價會將
FencedFrameConfig物件或不透明的 URN 傳回給發布商的廣告伺服器用戶端程式庫。 - 用戶端程式庫會將受限框架的
config屬性設為FencedFrameConfig物件,或將 iframe 的src屬性設為勝出 Protected Audience 廣告的不透明 URN。 - 瀏覽器會向買方擷取 Protected Audience 競價的勝出廣告。
- 瀏覽器向使用者顯示廣告。
- 如果內容相關競價勝出:Protected Audience 競價會傳回
null。 - 瀏覽器會將 iframe 的
src屬性設為得標的比對內容廣告。 - 瀏覽器會從買方擷取內容相關競價的勝出廣告。
- 瀏覽器向使用者顯示廣告。
參與討論及分享意見
後續步驟
我們希望與您一起討論,確保我們打造出適合所有人的 API。
討論 API
如同其他 Privacy Sandbox API,這個 API 會記錄並公開討論。
使用 API 進行實驗
您可以實驗並參與 Protected Audience API 的討論。