# IAS 第三方監測 此文件整理過去營銷反應的 IAS 三方收數異常案例,並整理埋設和初步檢查的方法與指標。 因 IAS 監測目前無提供詳細的埋設指引與除錯方式,且僅能透過廣告代理商提供 IAS 的窗口,溝通成本較大,也無法及時對廣告活動做出調整,此文件僅提供「在錯誤中尋求正確解法」的參考,並沒有保證照著做就沒事。 ## 過去案例 **20221125 -> Lego\_風火輪特效的 Brand Safety 問題** - 無使用 `noscript` tag 包住 img pixel,導致三方代碼重複觸發,進而影響報表上呈現的品牌安全度 (Brand Safety) 指標 **20230224 -> Nespresso\_行動底片的收數問題** - 動態埋設時,無標示 IAS tag 上的 `script type="application/javascript"`,未設置的話, HTML5 會預設為 `type="text/javascript"`,導致代碼無法正確回傳廣告參數 **20230824 -> Lego\_拆封特效的可視率異常問題** - tag 的擺放位置需與素材同層 ==(尚未在訂單中被證實有效,僅嘗試改變 tag 的位置,讓 dt? 內的參數看起來正常)== - 如果三方代碼有正常運作,能從 dt? 裡的參數初步辨別可視率是否正常、素材是否正常被渲染 ## 尚未解決的疑惑 1. HTML Tag 的大小寫真的會影響收數嗎? => ==未知== 2. `[timestamp]` 如果沒有換成隨機亂數,會影響追蹤碼運作嗎? => ==未知== 3. `${GDPR}` 和 `${GDPR_CONSENT_755}` 如果沒有替換掉,會影響追蹤碼運作嗎? => ==未知== 4. 如果 vendor tag `<script>` 內的 `type=application/javascript` 沒有被加入,會影響追蹤碼的運作嗎? => ==目前看起來是會有影響== ## 代碼結構 正常提供三方埋設文件時,固定會帶入一組 Click tag,如果今天說要埋 IAS 監測,通常指的是需要帶入含有 IAS vendor tag 的整組 impression tag 。 通常會使用 JS type 的 impression tag 如下: ```htmlmixed= <--Case: Nespresso--> <--文件提供的 Click tag,通常在上素材時帶入導連欄位--> https://ad.doubleclick.net/ddm/trackclk/N6264.1371339CLICKFORCE.COM.TW/B28478100.344930320;dc_trk_aid=536204153;dc_trk_cid=176837485;dc_lat=;dc_rdid=;tag_for_child_directed_treatment=;tfua=;ltd= <--以下區塊為文件提供的 Impression tag(JavaScript)--> <SCRIPT language='JavaScript1.1' SRC="https://ad.doubleclick.net/ddm/trackimpj/N6264.1371339CLICKFORCE.COM.TW/B28478100.344930320;dc_trk_aid=536204153;dc_trk_cid=176837485;ord=[timestamp];dc_lat=;dc_rdid=;tag_for_child_directed_treatment=;tfua=;gdpr=${GDPR};gdpr_consent=${GDPR_CONSENT_755};ltd=?"></SCRIPT> <!-- 這邊是 IAS 的 vendor tag --> <SCRIPT TYPE="application/javascript" SRC="https://pixel.adsafeprotected.com/rjss/st/1157299/65485116/skeleton.js"></SCRIPT> <NOSCRIPT> <IMG SRC="https://pixel.adsafeprotected.com/rfw/st/1157299/65485115/skeleton.gif?gdpr=${GDPR}&gdpr_consent=${GDPR_CONSENT_278}&gdpr_pd=${GDPR_PD}" BORDER=0 WIDTH=1 HEIGHT=1 ALT=""> </NOSCRIPT> <!-- 這邊是 IAS 的 vendor tag --> ``` 先做一些名詞解釋: ### CM vs IAS 從結構上來看,兩種 tag 僅在 impression tag 上有差異,IAS tag 只比 CM tag 多了 vendor tag - CM Tag => click + impression tag - IAS Tag => click + impression tag ==(with vendor tag)== ### vendor tag 指各監測廠商如 IAS/Moat/DV 的代碼,IAS 只是其中一家 vendor, 如果廣告有配合第三方監測,蠻多時候除了在素材帶入常用的 CM tag (impression+click) 之外,也會希望有公正第三方的報表用來比對數據,項目包含:曝光、可視率和品牌安全度等。 而 IAS vendor tag,分為兩個部分,一個是 `script` 中的 `skeleton.js`,一個是`noscript`, 兩個部分其實是一樣的作用,只是 noscript 會在沒開啟 JavaScript 的瀏覽器內被使用,確保 vendor tag 能正常運作。 ```htmlmixed= <!-- IAS vendor tag --> <!-- 正常使用 js 的環境,會觸發 skeleton.js --> <SCRIPT TYPE="application/javascript" SRC="https://pixel.adsafeprotected.com/rjss/st/1157299/65485116/skeleton.js"></SCRIPT> <!-- 在無法正常使用 js 的環境,會觸發下面這一段 noscript --> <NOSCRIPT> <IMG SRC="https://pixel.adsafeprotected.com/rfw/st/1157299/65485115/skeleton.gif?gdpr=${GDPR}&gdpr_consent=${GDPR_CONSENT_278}&gdpr_pd=${GDPR_PD}" BORDER=0 WIDTH=1 HEIGHT=1 ALT=""> </NOSCRIPT> ``` ## 埋設要點 20230824 為了處理 Lego\_拆封特效的可視率異常問題, 與 IAS 窗口對接後,對 IAS 監測有以下了解: 1. It would be best if the IAS placement tag is located within the same ad container as the creative => **IAS tag 要與素材放在同一個容器內** 2. Data transfer calls (dt?) are the main calls that we are looking at to check through what the measurements are for viewability specifically. => **如果監測 (skeleton.js) 有正常觸發,參數會存在於 dt? 中** 3. we are looking at the dt calls and for the pingTimes to be positive (1, 5, 10, 15 etc.) => **可以觀察 pingTimes > 0 時, dt? 參數有無改變** 4. 與可視率相關的參數: - ==piv== (percentage in view) - ==rmeas== (ad is successfully measured): Boolean - ==rend== (ad has successfully rendered): Boolean ### Parameters 如果 IAS tag 有正常被觸發,可以在 network tab 找到 data transfer call (dt?),==所有關於廣告的資訊 (素材是否渲染、可視率等紀錄) 都在傳回的 dt? 中==。 當我們將廣告投至測試版位時,可以觀察 dt? 是否有回傳,並觀察當 dt? 內的 pinTimes 大於零時,參數是否正常。 與可視率相關的參數: - piv (percentage in view): 正常可視率不能為 0,理想為 100 - rmeas (ad is successfully measured): 0 / 1 (需要為 1) - rend (ad has successfully rendered): 0 / 1 (需要為 1)  其他更詳細的埋設方式和注意事項,可以參考[三方追蹤碼-Check List](https://hackmd.io/@assistantDoc/B1ILiFgCo) ### 送件前的 Checklist - [ ] HTML tag 大寫改為小寫 - [ ] 將 tag 內的 attribute 全部複製(包含 script type) - [ ] 埋入/貼上整段改過的 tag(`<img>`/`<script>`/`<noscript>`) - [ ] 在系統中放置或在檔案內埋入 click tag - [ ] 在 Network 中用搜尋 dt? => 確認 piv > 0、rmeas = 1、rend = 1 - [ ] 在 Element 中用 id 或相關參數搜尋 HTML tag & skeleton.js 是否埋設正確
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up