項(xiàng)目實(shí)戰(zhàn)|如何搭建廣告投放系統(tǒng)中的數(shù)據(jù)報(bào)表?
編輯導(dǎo)語(yǔ):在進(jìn)行廣告投放時(shí),需要將產(chǎn)品側(cè)與廣告?zhèn)葦?shù)據(jù)打通,才能夠直觀地看出廣告投放的效果。那么要如何搭建廣告投放系統(tǒng)中的數(shù)據(jù)報(bào)表呢?本文作者從搭建的前、中、后三個(gè)環(huán)節(jié)進(jìn)行分析,一起來(lái)看一下吧。
廣告投放中會(huì)涉及兩側(cè)數(shù)據(jù):產(chǎn)品側(cè)與廣告?zhèn)?。只有將兩?cè)數(shù)據(jù)打通,才可以直觀地看出廣告投放的效果。本文將以在巨量引擎投放廣告為例,展開(kāi)說(shuō)明在搭建數(shù)據(jù)報(bào)表時(shí)的三個(gè)重要環(huán)節(jié)。
一、搭建前準(zhǔn)備
1. 業(yè)務(wù)描述
本文的廣告數(shù)據(jù)報(bào)表針對(duì)的是公司內(nèi)部付費(fèi)小說(shuō)投放業(yè)務(wù),廣告投放過(guò)程中涉及產(chǎn)品側(cè)與廣告?zhèn)?。產(chǎn)品側(cè)中,一個(gè)廣告投放人員(優(yōu)化師)可以擁有多個(gè)渠道,渠道主要產(chǎn)生用戶數(shù)據(jù)與訂單數(shù)據(jù);在廣告?zhèn)?,一個(gè)優(yōu)化師可以擁有多個(gè)賬戶,賬戶主要產(chǎn)生消耗、千展、付費(fèi)用戶成本等數(shù)據(jù)。
產(chǎn)品側(cè)的渠道可以生成唯一的監(jiān)測(cè)鏈接,廣告平臺(tái)通過(guò)監(jiān)測(cè)鏈接下發(fā)用戶觸達(dá)數(shù)據(jù)至產(chǎn)品端并完成數(shù)據(jù)歸因。通俗來(lái)說(shuō),監(jiān)測(cè)鏈接會(huì)讓優(yōu)化師知道消耗的錢帶來(lái)了哪批用戶。
2. 綁定關(guān)系
與投放業(yè)務(wù)部門溝通后,在這個(gè)系統(tǒng)中,需要將賬戶與渠道綁定。整體綁定關(guān)系如下圖所示,一個(gè)優(yōu)化師可擁有多個(gè)渠道和賬戶,一個(gè)渠道可與多個(gè)賬戶綁定,但一個(gè)賬戶只能綁定一個(gè)渠道。
3. 賬戶/渠道操作
作為數(shù)據(jù)報(bào)表,數(shù)據(jù)的展示僅僅是表現(xiàn)在前端頁(yè)面的一種形式。在這個(gè)背后,需要有眾多的機(jī)制作基礎(chǔ),其中之一就是需要考慮到在實(shí)際使用過(guò)程中,投放部門對(duì)賬戶或渠道的操作。例如,變更賬戶的所有權(quán)、變更渠道與賬戶的綁定關(guān)系、人員離職后的數(shù)據(jù)交接等等。
這一系列操作雖然并不在數(shù)據(jù)報(bào)表的主業(yè)務(wù)流程中,但是如果不去把這類“潛在需求”考慮進(jìn)的話,一旦發(fā)生因變更操作而造成的bug、數(shù)據(jù)不準(zhǔn)等問(wèn)題,會(huì)讓產(chǎn)品的易用程度大大降低。
二、搭建中流程
1. 賬戶/渠道導(dǎo)入&渠道綁定
作為一個(gè)To B的廣告投放工具,廣告賬戶管理模塊必不可少。本文的數(shù)據(jù)報(bào)表利用廣告平臺(tái)的Marketing API能力,完成Oauth授權(quán)流程。完成授權(quán)后即可使用廣告賬戶對(duì)應(yīng)的token拉取需要的數(shù)據(jù)。
渠道數(shù)據(jù)的導(dǎo)入方法與賬戶導(dǎo)入類似,通過(guò)產(chǎn)品側(cè)的開(kāi)發(fā)的API獲取到所有的渠道列表,并將渠道數(shù)據(jù)保存在系統(tǒng)中,供后續(xù)的綁定操作使用。
渠道綁定的業(yè)務(wù)通過(guò)系統(tǒng)內(nèi)部的賬戶管理模塊完成。在完成對(duì)廣告賬戶的Oauth授權(quán)后,通過(guò)交互彈窗將賬戶與渠道完成綁定。
2. 報(bào)表搭建
搭建報(bào)表需要從以下幾點(diǎn)考慮:
- 數(shù)據(jù)字段:與業(yè)務(wù)部門敲定需要查看的產(chǎn)品側(cè)與廣告?zhèn)鹊臄?shù)據(jù)字段及其計(jì)算公式
- 刷新頻率:確認(rèn)報(bào)表需要查看的是實(shí)時(shí)數(shù)據(jù)還是小時(shí)級(jí)數(shù)據(jù)
- 統(tǒng)計(jì)維度:通常這與系統(tǒng)架構(gòu)有關(guān),通??刹榭促~戶數(shù)據(jù)、優(yōu)化師匯總數(shù)據(jù)、部門匯總數(shù)據(jù)
在考慮完成以上幾點(diǎn)后,仍有一個(gè)問(wèn)題需要解決:準(zhǔn)確性。這是作為數(shù)據(jù)報(bào)表最基礎(chǔ)的特性,若無(wú)法滿足數(shù)據(jù)準(zhǔn)確,再完備的設(shè)計(jì)那也將會(huì)是徒勞。為了提高準(zhǔn)確性,可以從數(shù)據(jù)拉取、數(shù)據(jù)交接、數(shù)據(jù)校驗(yàn)三個(gè)環(huán)節(jié)考慮。
1)數(shù)據(jù)拉取
數(shù)據(jù)拉取過(guò)程中,我們需要注意接口調(diào)用的頻次以及廣告平臺(tái)側(cè)數(shù)據(jù)刷新的頻率。過(guò)高的頻率首先會(huì)增加自身服務(wù)器的壓力,阻塞的隊(duì)列會(huì)讓一些定時(shí)任務(wù)“掛掉”,然后導(dǎo)致應(yīng)該更新的數(shù)據(jù)未及時(shí)更新。
其次,也由于API側(cè)會(huì)對(duì)調(diào)用QPS做限制,在無(wú)法及時(shí)溝通提升QPS的情況下,自己在業(yè)務(wù)側(cè)做好數(shù)據(jù)拉取的限制也尤為重要。例如,不拉取未綁定渠道的賬戶數(shù)據(jù)或不拉取30天無(wú)消耗的賬戶數(shù)據(jù)等等。
2)數(shù)據(jù)交接
數(shù)據(jù)交接也是在先前段落提到的問(wèn)題。通用的綁定模型中,廣告投放優(yōu)化師、廣告賬戶和渠道都是一定的綁定關(guān)系。但是實(shí)際投放過(guò)程中,會(huì)存在賬戶交接、渠道換綁等綁定關(guān)系變動(dòng)的情況。在這里將以變更渠道綁定關(guān)系這一場(chǎng)景為例說(shuō)明數(shù)據(jù)交接的做法。
變更渠道關(guān)系,即使用新賬戶B投放已有的渠道A,先前的綁定關(guān)系為賬戶A綁定渠道A。因?yàn)橹拔覀兲岬?,廣告投放的核心是明確消耗的錢帶來(lái)了哪批用戶。若直接將渠道A的歷史數(shù)據(jù)綁定至新賬戶B,就會(huì)產(chǎn)生疑義:為什么要將賬戶A消耗帶來(lái)的用戶充值算在新的賬戶B上?
顯然這樣的簡(jiǎn)單粗暴的數(shù)據(jù)交接流程并不能滿足數(shù)據(jù)報(bào)表在準(zhǔn)確性上的要求,而失去準(zhǔn)確性的數(shù)據(jù)報(bào)表對(duì)廣告投放起不到任何幫助作用,甚至錯(cuò)誤的數(shù)據(jù)會(huì)影響優(yōu)化師的判斷。
如下圖所示,這個(gè)系統(tǒng)中所使用的方案是將所有數(shù)據(jù)按小時(shí)維度存儲(chǔ),這樣的好處就是,所有數(shù)據(jù)(產(chǎn)品側(cè)數(shù)據(jù)和廣告?zhèn)葦?shù)據(jù))都會(huì)按小時(shí)記錄當(dāng)時(shí)的歸屬人員、綁定賬戶/渠道,這樣不論是出現(xiàn)賬戶從屬關(guān)系變更或者賬戶渠道綁定關(guān)系變更,都可以從下個(gè)整點(diǎn)開(kāi)始基于新的關(guān)系進(jìn)行數(shù)據(jù)展示。歷史數(shù)據(jù)也會(huì)按交接前的綁定關(guān)系進(jìn)行展示,這樣就解決了因數(shù)據(jù)交接帶來(lái)的誤差。
3)數(shù)據(jù)校驗(yàn)
當(dāng)數(shù)據(jù)成功拉取下來(lái)后,這也并不意味著廣告平臺(tái)返回的數(shù)據(jù)是準(zhǔn)確的。因?yàn)閺V告平臺(tái)自身也有自己的數(shù)據(jù)歸因窗口期。當(dāng)早上8:00平臺(tái)返回消耗數(shù)據(jù)為100時(shí),經(jīng)過(guò)其自身的數(shù)據(jù)歸因后,會(huì)有可能出現(xiàn)消耗數(shù)據(jù)修正為150的情況。所以,可以考慮在當(dāng)天下午或是次日,重新調(diào)用API將前一天的數(shù)據(jù)做一次校準(zhǔn),這樣可以避免因廣告平臺(tái)側(cè)數(shù)據(jù)變更而導(dǎo)致的準(zhǔn)確性問(wèn)題。
三、搭建后總結(jié)
當(dāng)完成數(shù)據(jù)報(bào)表搭建后需要對(duì)報(bào)表數(shù)據(jù)進(jìn)行核對(duì),確保各項(xiàng)字段數(shù)值與廣告平臺(tái)返回的數(shù)據(jù)一致。另外,不同廣告平臺(tái)返回字段的精度格式也需要注意。例如巨量引擎對(duì)金額的返回精度為“元”,而騰訊廣告返回的是“分”。
在本文涉及的業(yè)務(wù)場(chǎng)景中,渠道數(shù)據(jù)與廣告賬戶數(shù)據(jù)為相同維度。但實(shí)際情況中,使用不同的監(jiān)測(cè)鏈接可以做到將渠道數(shù)據(jù)與廣告計(jì)劃數(shù)據(jù)放在相同維度做關(guān)聯(lián),不過(guò)這背后的邏輯都是一樣的。
本文由 @PMing 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載
題圖來(lái)自 Unsplash,基于 CC0 協(xié)議
作者的文章寫的很詳細(xì)而且很通俗易懂,給作者點(diǎn)贊。
作者講解與配圖細(xì)致生動(dòng),容易理解,由一個(gè)邏輯模板帶入搭建廣告投放系統(tǒng)中的數(shù)據(jù)報(bào)表。