移动分析中的Session是用户与应用程序连续交互的时间段,具有时间限制。该指标是计算留存率、参与度和LTV的基础。根据Adjust,2025的数据,应用程序中会话的中位长度为4-7分钟,但不同类别之间差异很大。理解会话指标对于评估用户体验质量至关重要。
要点
会话是用户主动与应用程序互动的时间段。会话从打开应用程序(或从后台返回)开始,在不活动或关闭后结束。
不同的分析平台对会话边界有不同的定义。Firebase Analytics认为30分钟不活动后会话结束,AppsFlyer——60分钟后,Amplitude——5分钟后或通过session_end事件。没有统一标准。
基于会话的指标是计算留存率(Retention Rate)、参与深度(Stickiness Ratio)和按使用频率分布用户(Session Frequency)的基础。如果没有正确定义会话,所有衍生指标都将不正确。
根据Mixpanel(2024)的数据,将Session Duration提高15%的应用程序在一个季度内LTV增长22%。这是应用程序使用时间和变现之间的直接相关性。
会话测量基于应用程序生命周期事件:open(session_start)和close(session_end)。在两者之间记录用户的所有操作。
// 适用于Android的最简单的会话跟踪器
class SessionTracker {
private var sessionStart: Long = 0L
private val SESSION_TIMEOUT = 30 * 60 * 1000L
fun onAppOpened() {
sessionStart = System.currentTimeMillis()
Analytics.logEvent("session_start")
}
fun onAppClosed() {
val duration = System.currentTimeMillis() - sessionStart
Analytics.logEvent("session_end") {
param("duration_ms", duration)
}
}
fun isNewSession(lastActive: Long): Boolean {
return (System.currentTimeMillis() - lastActive) > SESSION_TIMEOUT
}
}
代码通过系统回调跟踪会话的开始和结束。SESSION_TIMEOUT(30分钟)参数确定从后台返回何时被视为新会话,而不是前一个会话的继续。
| 平台 | 会话超时 | 确定方式 |
|---|---|---|
| Firebase Analytics | 30分钟 | 自动,不可自定义 |
| Amplitude | 5分钟(默认) | 可通过SDK配置 |
| AppsFlyer | 60分钟 | 固定间隔 |
| Mixpanel | 30分钟 | 可通过minimumSessionDuration选项配置 |
| Adjust | 60分钟 | 自动,与生命周期绑定 |
超时选择会影响指标:短超时(5分钟)会产生更多会话,长超时(60分钟)——合并交互。最重要的是确定规则并在比较时期时不要更改它。
会话分析基于四个基本指标。每个指标揭示了用户行为的特定方面。
会话时长是用户一次访问在应用程序中花费的平均时间。新闻应用程序的标准是2-4分钟,游戏——8-15分钟,流媒体服务——20分钟以上。如果Session Duration下降,这是内容或性能问题的信号。
会话间隔是前一个会话结束和下一个会话开始之间的时间。短间隔(分钟或小时)表示高参与度。长间隔(天)表示低兴趣或实用场景,应用程序很少需要。
每用户会话数在一段时间内(天、周、月)——用户粘性指标。公式:DAU / MAU(日活跃用户/月活跃用户)。高于20%的值被认为是好的,高于50%对于大多数应用程序类别来说被认为是优秀的。
会话深度是一次会话中的屏幕或操作数量。显示用户深入应用程序功能的程度。高时长下的低深度表明导航问题。
平台差异在应用程序生命周期中直接影响会话的定义。iOS和Android对后台状态和通知的处理不同。
在Android上,会话从第一个Activity的onStart()调用开始,到最后一个Activity的onStop()结束。但是,系统可能会在后台杀死进程,这错误地结束会话。建议使用Application.ActivityLifecycleCallbacks进行可靠的跟踪。
class AnalyticsApp : Application() {
private var activityReferences = 0
override fun onCreate() {
super.onCreate()
registerActivityLifecycleCallbacks(object : ActivityLifecycleCallbacks {
override fun onActivityStarted(act: Activity) {
if (++activityReferences == 1) {
Analytics.trackSessionStart()
}
}
override fun onActivityStopped(act: Activity) {
if (--activityReferences == 0) {
Analytics.trackSessionEnd()
}
}
})
}
}
activityReferences计数器确定用户是否看到至少一个屏幕。当活动变为0时——应用程序进入后台,会话结束。
在iOS上,会话与applicationDidBecomeActive和applicationDidEnterBackground方法绑定。点击推送通知可能会人为增加会话计数器——这在分析中需要考虑。
Swift示例:
import UIKit
class AppDelegate: UIResponder, UIApplicationDelegate {
func applicationDidBecomeActive(_ application: UIApplication) {
Analytics.trackSessionStart()
}
func applicationDidEnterBackground(_ application: UIApplication) {
Analytics.trackSessionEnd()
}
}
注意:在iOS上,在应用程序之间切换(App Switcher)不会结束会话——只有进入深度后台或滑动关闭。
会话分析超越了简单的计数。细分和群组分析揭示了在汇总数据中看不到的参与模式。
按安装周对用户进行分组,并查看前7天的平均会话数。如果最近安装群组的Sessions Per User低于较旧群组,这是引导流程或流量质量恶化的信号。
异常在会话指标中是问题的早期指标。发布后短会话(5秒内)的突然增加表明启动错误。Session Duration一天内下降30%——可能是服务器故障或API变更。设置带阈值的监控:如果平均Session Duration从7天移动平均值下降超过2个标准差——系统发出警报。
在会话报告中使用按应用程序版本细分。版本3.2.0显示Session Duration为4分钟,版本3.2.1——2分钟。原因——引导流程的变化。回滚版本可以恢复指标。没有按版本细分,你会看到平均下降但找不到原因。
高活跃用户(每天5次以上会话)——您的核心受众。普通用户(每周1-2次会话)——需要重新激活的群体。休眠用户(30天内0次会话)——重新定位或取消推送通知的候选对象。
为每个细分计算单独的指标:高活跃用户的Session Duration将显示使用深度,而普通用户——进入障碍。根据Amplitude(2024)的数据,根据会话细分个性化内容的应用程序每月平均将Session Duration提高18%。
留存通过会话计算:如果用户在第N天至少有一次会话,则视为留存。但是,不同产品需要不同的定义。对于社交网络,会话可能是1秒(只是打开检查通知),对于流媒体服务——15分钟。
使用卸载会话作为质量指标:如果更新后短会话(少于10秒)的数量增加,用户找不到所需功能。这是在卸载增长之前UX问题的早期信号。
将会话与流量来源关联:来自付费渠道的用户应该有更多会话和更长的Session Duration。如果自然流量显示Session Duration比付费流量高40%,问题在于定向质量。会话归因有助于优化获客预算。
常见问题
平均会话时长取决于类别:游戏——8-15分钟,社交媒体——5-10分钟,工具——1-3分钟。趋势更重要:如果Session Duration一个月内下降20%,需要进行UX审核。
许多分析SDK在最小化时不记录结束事件——它们等待超时。如果用户将应用程序最小化1分钟然后返回,这算作一次会话。只有在超时(30-60分钟)之后才开始新会话。
第N天的用户留存率计算为安装者中当天至少有一次会话的比例。如果会话没有被正确跟踪,留存率将被系统性低估或高估。
是的,后台活动(音乐播放、导航、同步)可以使应用程序保持活动状态。最好将前台会话(用户看到屏幕)与处理型会话(无界面的后台工作)分开。
对于订阅服务(流媒体、健身、教育),建议超时为5-10分钟。用户经常在短暂休息后返回——每个暂停应计为新会话,以避免扭曲Session Duration。
总结
我们将开发一款交钥匙移动应用程序
IT Sectr自2017年以来为初创企业和企业打造iOS和Android应用程序。我们将为您提供咨询并提出最佳解决方案。