2016年至今,我做了大概3年的用戶增長業務。由於換團隊了,和用戶增長終於要告一段落了。不完全總結一下這幾年做用戶增長的一些用戶體會吧,也算是對自己過去三年一項重要工作的總結。
什麼是用戶增長
用戶增長(growth hacking),顧名思義,就是 【想辦法爲自己的產品獲得更多的用戶,擴大產品的規模】。在移動互聯網時代,這裏的【產品】可以是App,微信公衆號,小程序等。
我這三年裏,都是在給App做用戶增長。工作內容概括起來就是:用戶訪問到一個H5頁面,在這個頁面中,下載App或者拉起App。
本文就專注介紹App的用戶增長。
“我自己是一名從事了6年web前端開發的老程序員(我的微信:web-xxq),今年年初我花了一個月整理了一份最適合2019年自學的web前端全套培訓教程(視頻+源碼+筆記+項目實戰),從最基礎的HTML+CSS+JS到移動端HTML5以及各種框架和新技術都有整理,打包給每一位前端小夥伴,這裏是前端學習者聚集地,歡迎初學和進階中的小夥伴(所有前端教程關注我的微信公衆號:web前端學習圈,關注後回覆“2020”即可領取)。
用戶增長鏈路
用戶增長鏈路如下:
獲取用戶 => 用戶激活 => 留住用戶 => 個性化推薦
鏈路看似簡單,但是每一個鏈路中,都需要做大量的工作,來保證每一步的轉化率儘可能高,最大限度的提高App的用戶量、DAU。
上圖中,用戶激活這個鏈路上的關鍵節點,是前端工程師重點聚焦的地方,是需要前端工程師重度參與的。
還需要明確的是:
- 用戶增長是一項技術、數據驅動的系統化“漏斗”工程。
- 用戶增長最終的效果是取決於系統鏈路中最薄弱的一環。
用戶激活
用戶激活的工作,一句話來概括,很簡單:用戶訪問H5頁面,點擊App推廣按鈕,判斷用戶是否安裝App。如果安裝了App,就拉起到客戶端具體頁面,如果沒有安裝,就進行App的下載。
提高點擊率
首先,我們需要做的工作是,讓用戶點擊App的推廣按鈕。
最終要實現的目標是:讓用戶儘可能的點擊頁面上的App推廣條(當然,這裏有流氓的方法,用代碼實現自動點擊)。
接下來,進入最關鍵的邏輯:
- 判斷是否安裝App
- 拉起App
- 下載App
判斷用戶是否安裝App ,如果安裝了就拉起
如今的互聯網,已經不那麼“互聯”了,各大App都在構建自己的封閉生態,iOS和Android提供的系統機制被限制,H5頁面需要兼容各種邏輯,相當繁瑣。
一個H5頁面可能會在出現微信、手機QQ、手機百度、瀏覽器等環境中。如果沒有客戶端(H5頁面當前宿主環境)的支持,單靠H5判斷用戶是否安裝App是無法實現的。我們只能去嘗試拉起,然後再做後續的邏輯。
我之前在百度工作的時候,被各種需求場景折騰得夠嗆,做過一個總結(2018年的總結,如今不知道是否還適用):
到騰訊後,微信、手機QQ等對自家產品都提供相應的JS Api,要實現功能會比較容易。
下載App
下載App是用戶激活中最重要一部分。
下載App的過程相對比較繁瑣,需要注意的比較多。對於iOS來說,都是去到App Store進行下載。Android比較複雜,騰訊內部可以使用客戶端提供的下載能力直接進行下載;當客戶端沒有提供下載能力時,可以嘗試拉起系統自帶的應用商店進行下載。這裏提供一個我們之前使用的各個應用商店的拉起scehme:
xiaomi: {
reg: /\(.*Android.*(MI|Mi|Redmi).*\)/,
scheme: 'mimarket://details?id=${pkgName}&back=true'
},
samsung: {
reg: /\(.*Android.*(SAMSUNG|SM-|GT-).*\)/,
scheme: 'samsungapps://ProductDetail/${pkgName}'
},
huawei: {
reg: /\(.*Android.*(HUAWEI|HORNOR).*\)/i,
scheme: 'appmarket://details?id=${pkgName}'
},
oppo: {
reg: /\(.*Android.*OPPO.*\)/,
scheme: 'oppomarket://details?packagename=${pkgName}'
},
vivo: {
reg: /\(.*Android.*(vivo|VIVO).*\)/,
scheme: 'vivomarket://details?id=${pkgName}'
}
複製代碼
數據相關
前面說過,用戶增長是一項技術、數據驅動的系統化“漏斗”工程。數據在整個工程中的重要程度不言而喻。這裏的數據可以分成兩個方向來看:一個是漏斗數據,即整個縱向鏈路中的漏斗數據;另外一個是橫向的對比數據,主要是在鏈路中進行 A/B Test 時,對照組和實驗組的數據。漏斗數據是基礎,實驗數據是工具。
數據漏斗,是監控整個用戶增長鏈路必不可少的。在用戶增長鏈路中的每個環節,都會有大量的用戶折損。需要通過數據漏斗,來觀察每一步的轉化率,進行針對性優化。
數據漏斗
要形成數據漏斗,首先最基礎的,就是在整個鏈路中必要的部分都進行埋點上報。這裏有一個很重要的概念:渠道
渠道的意思是,說白一點就是:用戶從哪裏進入到我們的拉新H5頁面,是從微信還是QQ還是其他?
爲什麼要區分渠道呢?我認爲是兩個原因:
- 從不同渠道來的用戶,會有不同的產品策略。
- 通過對比不同渠道的用戶的數據漏斗,調整H5頁面的投放流量,實現收益率最大化。
首先需要進行的是,渠道的分離。一個很簡單的方式,直接通過url特定參數來區分不同的渠道,並且將該參數貫穿於整個用戶增長鏈路,每一次上報都帶上這個參數即可。在前端好實現,但是從前端頁面進入App以後,怎麼關聯上渠道呢?兩個方法:
- 在前端頁面中,將渠道等信息,寫入剪切板。打開App後,App去讀取剪切板內容。
- 針對不同的渠道,前端控制下載不同的App渠道包。
選擇哪種方法需要根據具體情況來定。這裏有一些坑需要注意:
- 有些場景下,無法利用純H5功能操作剪切板。Android Q以後,不再允許操作剪切板。
- 如果拉起應用商店進行下載,那麼分渠道功能可能就做不了了。
做得更細的話,還需要能追蹤每一個具體用戶在整個鏈路中的情況。這就需要把用戶ID貫穿於整個鏈路中,做好用戶關聯等。這裏不再繼續深入了。
A/B test
當不確定某種方案是否能帶來正向收益時,可以通過A/B test來判斷。我們可以對H5頁面樣式、交互進行A/B test,也可以對App承接拉新的產品方案進行 A/B test. 做好 A/B test,其實就跟渠道一樣,需要在縱向數據漏斗的每一步,都帶上A/B test的標識,最後進行數據比較和決策。A/B test是用戶增長的一個基本方法。
前端工程師如何參與
本文前面的內容,已經穿插介紹了前端工程師的職責。下面總結一下,參與到用戶增長中,需要做好以下幾件事:
-
做好H5頁面的開發。
-
做好拉起App、下載App等核心功能開發。
-
做好數據上報。
-
配合產品,做好A/B test。
由於各大客戶端的封閉性,很多東西只能自己不斷去嘗試、摸索,才能知道如何做。同時,
由於渠道號劃分,A/B test 不斷,我們可以嘗試開發一個配置系統,通過修改配置,直接修改各個渠道的頁面樣式等。我在百度的時候,就搭建過這麼一個系統,最終效果是十分明顯的,一個多月通過配置上線了100多次,極大的提高了效率。
細節一點,在渠道號不少、A/B test不斷的業務場景,如何優雅的寫代碼,這也是我們需要注意的。我之前做過一個很小的不算總結的總結:
寫在後面
用戶增長是一個很考驗細節、團隊協作的工程,並且需要在過程中不斷總結經驗。本文從一個前端工程師的角度,對自己過去參與用戶增長項目的經驗做了一些總結,難免會有侷限性。由於各大客戶端都是在不斷更新,有些經驗可能會過時了,不保證完全可行,試一試就知道了。有任何問題,歡迎交流。