客戶分析系統

想像一下,您是一位有抱負的企業家,剛剛製作了一個網站和一個移動應用程序(例如,為一家甜甜圈店)。 您希望以較小的預算連接自定義分析,但不知道如何進行。 周圍的人都使用 Mixpanel、Facebook 分析、Yandex.Metrika 等系統,但不清楚該選擇什麼以及如何使用。

客戶分析系統

什麼是分析系統?

首先必須說明的是,用戶分析系統並不是一個分析服務本身運行日誌的系統。 監控服務的運行情況側重於穩定性和性能,由開發人員單獨維護。 另一方面,創建用戶分析是為了準確研究用戶的行為:他執行什麼操作、執行的頻率、他對服務中的推送通知或其他事件的反應。 在全球範圍內,用戶分析有兩個領域:移動和網絡分析。 儘管網絡和移動服務的界面和功能不同,但在兩個方向上使用分析系統大致相同。

為什麼這樣做?

需要用戶分析:

  • 監控使用服務時發生的情況;
  • 更改內容並了解在哪裡開發、添加/刪除哪些功能;
  • 找出用戶不喜歡的內容並進行更改。

它是如何工作的呢?

要研究用戶行為,您需要收集該行為的歷史記錄。 但究竟要收集什麼? 這個問題佔整個任務複雜度的70%。 產品團隊的很多成員應該一起回答:產品經理、程序員、分析師。 這一步的任何錯誤都會付出高昂的代價:你無法收集到你需要的東西,而收集到的東西又不能讓你得出有意義的結論。

在決定構建什麼之後,您需要考慮如何構建它的架構。 分析系統處理的主要對像是事件。 事件是對所發生事件的描述,發送到分析系統以響應用戶操作。 通常,對於上一步中選擇跟踪的每個操作,事件看起來像一個 JSON 數據包,其中包含描述所採取操作的字段。

什麼是 JSON 包?

JSON 包是一個描述發生情況的文本文件。 例如,JSON 數據包可能包含用戶 Mary 在 23 月 00 日晚上 15:XNUMX 完成“開始遊戲”操作的信息。 如何描述每個動作? 例如,用戶單擊按鈕。 此時需要收集哪些屬性? 它們分為兩種類型:

  • 超級屬性 - 始終存在的所有事件的屬性特徵。 這是時間、設備 ID、API 版本、分析版本、操作系統版本;
  • 事件特定屬性 - 這些屬性是任意的,主要困難是如何選擇它們。 例如,對於遊戲中的“購買金幣”按鈕,此類屬性將是“用戶購買了多少金幣”、“金幣花費了多少”。

語言學習服務中的 JSON 包示例:
客戶分析系統

但為什麼不收集所有東西呢?

因為所有事件都是手動創建的。 分析系統沒有“全部保存”按鈕(這毫無意義)。 僅收集團隊中某些部分感興趣的服務邏輯中的那些操作。 即使對於按鈕或窗口的每種狀態,通常也不是所有事件都令人感興趣。 對於冗長的過程(例如游戲關卡),只有開始和結束可能很重要。 中間發生的事情可能不會被收集。
通常,服務的邏輯由對象(實體)組成。 它可以是“幣”實體,也可以是“關卡”實體。 因此,可以從實體、實體的狀態和動作組成事件。 例如:“關卡開始”、“關卡結束”、“關卡結束,原因是被龍吃掉了”。 最好關閉所有可以“打開”的實體,以免違反邏輯,也不會使進一步的分析工作變得複雜。

客戶分析系統

複雜系統中有多少事件?

複雜的系統可以處理從所有客戶(產品經理、程序員、分析師)收集的數百個事件,並仔細(!)輸入到表中,然後輸入到服務邏輯中。 準備活動是一項跨學科的大工作,需要每個人都了解需要收集什麼、細心和準確。

接下來是什麼?

假設我們想出了所有有趣的事件。 是時候收集它們了。 為此,您需要連接客戶端分析。 我們去谷歌尋找移動分析(或者從眾所周知的分析中進行選擇: Mixpanel, Yandeks.Metrika, Google Analytics, Facebook分析, 調, 振幅)。 我們從網站上取得 SDK 並將其建置到我們服務的程式碼中(因此稱為「客戶端」 - 因為 SDK 內建於客戶端)。

以及在哪裡收集事件?

將創建的所有 JSON 包都需要存儲在某個地方。 它們將被發送到哪里以及在哪裡被收集? 對於客戶端分析系統來說,它本身對此負責。 我們不知道我們的 JSON 包在哪裡、它們存儲在哪裡、有多少個以及它們如何存儲在那裡。 整個採集過程都是由系統完成的,與我們無關。 在分析服務中,我們可以訪問個人帳戶,我們已經在其中看到了處理初始行為數據的結果。 此外,分析師會根據他們在個人賬戶中看到的內容進行分析。

在免費版本中,源數據通常不可下載。 昂貴的版本有這樣的功能。

連接需要多長時間?

最簡單的分析可以在一小時內連接:它將是 App Metrika,它將顯示最簡單的內容,而無需分析自定義事件。 設置更複雜系統的時間取決於所選事件。 出現需要額外開發的困難:

  • 是否有事件隊列? 例如,如何解決一個事件不能發生在另一事件之前的問題?
  • 如果用戶更改了時間怎麼辦? 更改時區了嗎?
  • 如果沒有互聯網怎麼辦?

平均而言,您可以在幾天內設置 Mixpanel。 當計劃收集大量特定事件時,可能需要一周的時間。

客戶分析系統

如何選擇我需要的那一款?

所有分析系統中的一般統計數據都運行良好。 非常適合營銷人員和銷售人員:您可以查看保留率、用戶在應用程序中花費的時間以及所有基本的高級指標。 對於最簡單的登陸頁面,Yandex 指標就足夠了。

當涉及非標準任務時,選擇取決於您的服務、分析任務以及需要處理以解決它們的事件。

  • 例如,在 Mixpanel 中,您可以運行 A/B 測試。 怎麼做? 您創建一個實驗,其中有多個樣本並進行選擇(您將這樣或那樣的用戶分配給 A,將其他用戶分配給 B)。 對於 A,按鈕將為綠色,對於 B,按鈕將為藍色。 由於 Mixpanel 收集所有數據,因此它可以找到 A 和 B 中每個用戶的設備 ID。使用 SDK 在服務代碼中創建調整 - 這些是可以更改測試的地方。 接下來,對於每個用戶,從 Mixpanel 中提取值(在我們的例子中為按鈕的顏色)。 如果沒有互聯網連接,將選擇默認選項。
  • 通常,您不僅希望存儲和研究事件,還希望聚合用戶。 同一個 Mixpanel 在“用戶”選項卡中自動執行此操作。 在那裡您可以查看所有永久用戶數據(姓名、電子郵件、Facebook 個人資料)和用戶日誌歷史記錄。 您可以將用戶數據視為統計數據: 被龍吃了100次,買了3朵花。 在某些系統上,可以下載用戶聚合。
  • 主要爽什麼 Facebook分析? 它將服務訪問者與其 Facebook 個人資料連接起來。 因此,你可以找到你的受眾,最重要的是,然後將其轉化為廣告受眾。 例如,如果我訪問過某個網站一次,並且該網站的所有者已為訪問者啟用了廣告(Facebook 分析中的自動填充受眾),那麼將來我將在 Facebook 上看到該網站的廣告。 對於網站所有者來說,它的工作方式簡單方便,您只需要記住設置每日廣告預算上限即可。 Facebook 分析的缺點是它不是特別方便:一個相當複雜、不能立即理解的網站,它的運行速度不是很快。

幾乎什麼都不用做,一切都正常! 也許有一些缺點?

是的,其中之一就是通常很貴。 對於初創公司來說,每月的費用可能約為 50 萬美元。 但也有免費的選擇。 Yandex App Metrica 是免費的,適用於最基本的指標。

但是,如果解決方案價格低廉,則分析將不會詳細:可以看到設備、操作系統的類型,但看不到特定事件,並且無法創建渠道。 Mixpanel 每年可能要花費 50 萬美元(例如,帶有 Om Nom 的應用程序就可以吃這麼多)。 一般來說,對所有數據的訪問通常都是有限的。 你不會發明自己的模型,也不會運行它們。 付款通常按月/定期進行。

還有嗎?

但最糟糕的是,即使 Mixpanel 也將活動移動應用程序固有的數據量視為近似值(在文檔中直接公開表示)。 如果將結果與服務器端分析進行比較,數值將會有所不同。 (有關如何創建您自己的服務器端分析,請閱讀我們的下一篇文章!)

幾乎所有分析系統的一大缺點是它們限制對原始日誌的訪問。 因此,在看似您自己的數據上運行您自己的模型是行不通的。 例如,如果您查看 Mixpanel 中的漏斗,您只能計算步驟之間的平均時間。 無法計算更複雜的指標,例如中值時間或百分位數。

此外,通常缺乏複雜聚合和分段的可能性。 例如,棘手的團購“將 1990 年出生的用戶聚集在一起,每人至少購買 50 個甜甜圈”可能無法使用。

Facebook 分析的界面非常複雜,而且速度很慢。

如果我同時打開所有系統怎麼辦?

好想法! 不同的系統經常會產生不同的結果。 不同的數字。 此外,有些功能只有一種功能,第二種功能是另一種功能,第三種功能是免費的。
另外,可以並行開啟多個系統進行測試:例如熟悉新系統的界面並逐步切換到新系統。 與任何業務一樣,您需要了解衡量標準並將分析連接到可以遵循的程度(並且不會減慢網絡連接速度)。

我們連接了一切,然後發布了新功能,如何添加事件?

就像從頭開始連接分析一樣:收集必要事件的描述並使用 SDK 將其插入到客戶端代碼中。

我希望常見問題的答案對您有用。 如果它們幫助您了解客戶端分析不適合您的應用程序,我們建議您嘗試服務器端分析。 下一部分我會講,然後我會講如何在我的項目中實現。

只有註冊用戶才能參與調查。 登入, 請。

您使用什麼客戶分析系統?

  • Mixpanel

  • Facebook分析

  • Google Analytics

  • Yandex Metrica

  • 其他的

  • 與您的系統

  • 沒有什麼

33 位用戶投票。 15 名用戶棄權。

來源: www.habr.com

添加評論