rawpixel-771280-unsplash
 程式與統計統計分析

開發一個免費App能賺多少錢? 靠 AdMob 廣告月收3萬實例分享

相信很多人都跟我一樣會好奇一個只有放廣告的免費app能賺多少錢呢? 剛好最近有位朋友分享給我他的一個app的 Google Admob 收入報表,原來他的app靠展示廣告就可以輕鬆月入3萬多塊錢呢,真是一筆好令人羨慕的被動收入啊🤤。至於一天要有多少點擊,曝光次數要有多少才能達到這樣的收入水平呢,別著急,下面會畫個圖表給大家看,另外我會再用線性迴歸做個簡單的模型來玩玩。

 

行動廣告月收3萬台幣app 實例分享

他的這個app很簡單,沒有複雜的介面,一打開就是一個清單(ListView),畫面下方固定顯示一個橫幅廣告(Banner AdView),然後 ...就沒了。其中清單中的每個item其實都是爬蟲定期自動抓取來的(例如中央氣象等政府開放資料),所以不需要人力去更新內容。

App介面看起來就像下圖這樣:
(因這位朋友愛搞神秘,交代我不能透露他的app內容,所以我只好畫個示意圖囉!)

AdMob所以收益來源完全是靠這個螢幕畫面下方的橫幅廣告的曝光及點擊。

這位朋友告訴我,寫一個app上架不難,甚至沒學過程式的學生去買一本仿間的教學書照著做都能輕鬆上架app,原來技術門檻如此之低。他還說,這個app只花一個月的時間開發而已,之後就是放在Google Play上給它自生自滅,好久都不去管它,真是比當房東還輕鬆!

 

窺探 App 行動廣告 Google AdMob 報表

他給我的報表是2018上半年的Google Admob報表數據,裡頭的資料欄如下:

預估收益是對近期帳戶活動的預估,實際收益要到月底才會結算(扣除掉無效點擊及曝光等),但朋友說他的每月結算收益跟預估差不到10美金,所以這邊可以把預估收益當成就是他的實際收益囉。
好,那我就直接把他每天的收益畫出來看吧,嘿嘿 ...

AdMob

哇~4月初的時候曾一天收入衝到$70美元(約2100台幣),而且從3月之後每天收益幾乎都有一千台幣,光是2018年上半年就有約20萬台幣的被動收入入帳,能不讓人羨慕嗎😂😂😂。

至於其他欄位剛開始看可能不是明白是什麼意思,但看下面的行動廣告效益衡量指標應該就比較好理解了。




行動廣告效益衡量指標

根據Google Admob報表,幾個常見的行動廣告效益衡量指標包括:
  • AdMod Network Requests (AdMod廣告聯播網請求數)
    每當你的App要求顯示廣告,就算一次廣告請求。該數字代表向廣告聯播網送出請求的廣告數。
  • Match Request (媒合請求數)
    經請求後,成功媒合的廣告單元數。
  • Match Rate (媒合率)
    成功媒合的廣告次數佔總體廣告請求次數的比例。
    $$Match\space Rate=\frac{Match Requests}{AdMod Network Requests}$$
  • Impression (曝光數)
    廣告成功媒合後並有效曝光的次數。而其中關於有效曝光又有不同層次的定義。
    • Active View Impression: 如果廣告至少有50%的區域出現在畫面中並且顯示至少一秒(根據美國互動廣告局 (IAB) 標準所規定的最低條件),即為有效曝光(符合資格的曝光)。
    • Active View Measurable Impression: 有效且可評估的曝光。
    • Active View Viewable Impression: 有效、可評估、且可見的曝光。
  • Show Rate (顯示率)
    有效曝光次數佔成功媒合次數的比例。
    $$Show\space Rate=\frac{Impressions}{Matched}$$
  • Click (點擊)
    使用者點擊廣告次數。
  • Impression CTR (曝光點擊率):
    點擊次數佔總體曝光次數的比例。
    $$Impression\space CTR=\frac{Clicks}{Impressions}$$
  • Estimate Revenue (預估收益):
    約與實際收益相同。
    另外由預估收益衍伸計算的幾個重要指標包括:
    • RPM: 為Revenue per 1,000 impressions,千次曝光收益。
    • AdMod Network request RPM: AdMod廣告聯播網請求千次曝光收益。
      $$AdMod\space Network\space request\space RPM=\frac{預估收益}{廣告請求次數}\times 1,000$$
    • Impression RPM: 曝光千次曝光收益。
      $$Impression\space RPM=\frac{預估收益}{曝光次數}\times 1,000$$
  • Fill Rate(填充率):
    計算方式為廣告曝光數除上廣告請求數。
    $$Fill\space Rate=\frac{Impressions}{Requests}$$

 

搭配數字來看或許會清楚一點,假設某天的請求數是10,000,並假設當天的各個比率如下表,AdMob報表的各個欄位的意義,其實就是從最一開始的請求到最後的實際點擊這個過程的各項指標囉
(黑色文字的部分是實際發生,而紫色顏色文字的各個比率是AdMob幫我們算出的。)

 

example_admob

一次廣告的展示其實背後牽涉到競價過程,而AdMob會自動從所有可用的廣告來源中挑選成效最高的來放送。也如同上段所說預估收益是對近期帳戶活動的預估,不是拿當天全部點擊數或曝光數乘一個固定價格就能算出的。




 

曝光與收益走勢圖

我們可以把每天的收益和曝光數畫在一起做個對照:

AdMob

  • 可以看到收益大致和曝光數有相近的趨勢,越多曝光收益越多,看起來滿合理的。
  • 也可以觀察到曝光數在每個月都有4個高峰 (放大檢視後發現剛好都是在周末),收益也有隨之升高。
  • 但曝光數與收益似乎沒有絕對的關係,因為可以觀察到1月有個超高峰,收益並沒有明顯飆高。
  • 從曝光數看起來App的頁面流量在2018年上半年趨於穩定,而收益似乎也停止成長了。

 

 

點擊、曝光與收益散佈圖

我們再將這半年每天的“點擊數vs收益”還有“曝光數vs收益”畫個散佈圖出來看看:

AdMob

AdMob

正相關係數分別是0.6與0.7。

既使是相同的點擊數,當天的收益範圍也是非常廣的,例如同樣是275個點擊次數,當天收益可能落在$20~$40美金,差了快兩倍。

 




 

情境題

假設珍珍也想寫個app來賺錢(假設訪客組成分佈類似),在相同的地方放一塊最基本的橫幅廣告(假設廣告類型分佈類似),然後她想要一個月可以賺台幣8000塊錢來繳房租,這樣她的app平均一天要有多少點擊或曝光數才可以達到呢?

我們預期越多的點擊,應該會有越多的收益,所以我們可以假設點擊與收益存在線性的關係,我們可以利用這份實際的數據,建立一個簡單線性迴歸模型,得到收益的公式。

 

用線性回歸模型找出點擊數與收益的關係式

因此我用R 的 linear model 套件,丟入每天的點擊數與收益去得到一個簡單線性回歸方程式,並將他畫出如下:
(注意下圖的收益單位是美金)

AdMob

一天要多少點擊才能月入8千?

一個月想要有收益8000台幣(約等於260美金),一個月用30天算,所以平均一天要8.67美金。
那麼帶入我們得到的公式:

$$8.67 = -15.09  + 0.18 \times X $$

得到 X = 132
所以一個月若想要賺8000台幣則平均每天要有約132的點擊數以上

那平均每天要有多少曝光呢?

一樣可以丟每天的曝光數與收益下去做個線性回歸模型

Rplot09

預測每天若想有8.67美金大約要8300個曝光數。

但我們可以看到Adjust R Square Score只有 0.37,比點擊數模型的0.56來得低許多的。其實也很合理,影響開發者收益高低最主要的因素,比起流量(or曝光數),還是在於用戶(有效)點擊數的多寡。所以真要預測曝光數的話,我倒傾向於拿上一個模型預測到的點擊數,直接除以這半年的平均曝光點擊率。
但朋友叮嚀我,礙於Admob使用條款,這邊實在無法透露平台詳細的點擊率…等等廣告平台表現的相關數據囉!

小結

一天要有將近8300的曝光(流量),好像也不是挺容易的,一天能有個800曝光我就要偷笑了吧!

Admob報表其實還好多有趣的東西可以看,例如可以去細分不同廣告單元,廣告類型或是國家地區…等,對收入的貢獻。不過朋友給我的報表沒有這些資訊,改天再跟他拿多一點資料來給大家看囉,這篇先到這樣。

*本篇是從開發者的角度出發,探討可控因素包括曝光與點擊對預估收益之影響。

*本篇預測與推論是基於此APP的樣本性質,不同的樣本則有不同效果。


更多統計預測模型筆記連結:

線性回歸模型

正規化回歸模型Regularized Regression

資料標準化(Data Scaling)對複回歸分析(Multiple Regression)的影響 | R統計

羅吉斯回歸模型part1

羅吉斯回歸模型part2

決策樹/隨機森林

Random Forest

Gradient Boosting Machines (GBM)

階層式分群法

切割式分群法

更多資料視覺化筆記連結:

ggplot2 | 簡易資料視覺化 Basic Data Visualization – part1 | using R SQLite

ggplot2 theme: 3 elements – text, line, rectangle | R 資料視覺化 – part2

dual y-axis plotting 雙Y軸 繪圖 | R 資料視覺化 Data visualization 小技巧

更多資料處理筆記連結:

資料處理-實用的10個小技巧 | Data Processing Basics FAQ | R 語言