How can we help?

Session统计逻辑详解

  • 更新

概要:广告主可以使用session(应用打开)指标衡量指定时间段内的用户互动情况。

DAU_example.jpg

session统计的原理

用户完成的session(即应用打开)数量是评估用户与应用的互动情况时需要用到的重要指标。AppsFlyer在多种报告和面板中都提供该指标。session数量还会用于计算下列指标:

  • 每日活跃用户(DAU)
  • 每月活跃用户(MAU)
  • 留存
  • 忠实用户数(以完成3次应用打开的默认标准计算)

请注意:自然量的session数据呈现在活跃数据和群组面板中,总览面板不提供该数据。 

session的计算方式

我们通过SDK上报的af_app_opened事件来计算session指标。session之间设有最短间隔机制,用于调控服务器侧的session判定和统计。 

在Data Locker的session原始数据中,af_app_opened事件以launch的形式呈现。除了Data Locker以外的其他数据传输工具不提供Session数据。为了便于理解,本文会使用af_app_opened来指称相关数据。

Session的上报方式

发生以下情况时,SDK会上报session: 

  • 用户打开相关应用
  • 相关应用从后台切换到前台。开发人员可以调用setMinTimeBetweenSessions来更改此处的数据上报行为。
  • 在安卓应用中,开发人员可手动设置session上报。比如总是在后台运行的工具类应用会使用这种方式上报session。

Session指标

Session指标基于最短间隔机制统计,默认最短间隔为10分钟,详见下文示例。 

 

Session之间的最短间隔机制

该机制会影响session数量的统计。请注意:如果您设置的最短间隔较长(比如超过一小时的间隔),且用户在一天之内打开相关应用的次数较少,这时DAU和留存等的session相关指标会受到影响。特别是对于一般情况下用户每天打开一次的应用来说,影响尤为突出。

说明和示例 

该机制用于调控session的判定和统计。也就是说,一个session前后的空档必须超过最短间隔,AppsFlyer才会将其判定为一个独立的session进行统计。 

Session统计的流程如下:统计到一个session → 开始倒计时 → 倒计时期间上报的session会被忽略。 

示例

前提假设:session之间的最短间隔为10分钟。

场景示例 session上报时间(从00:00起的分钟数) 统计的session数量 被忽略的session
A 0, 10, 20, 30 4
B 0, 1, 9, 11 2 1, 9
C 010, 15, 21 3 15

计时器的设置

  • 默认值:10分钟
  • 可以设置的范围: 

    • 1-60分钟

    • 1-24小时

请按以下方式设置session之间的最短间隔:

  1. 从AppsFlyer后台的侧边栏中选择配置 > 应用配置
  2. 设置session之间的最短间隔。 
  3. 点击保存配置。 
    新的配置会在一小时内生效。

与session相关的事项

再营销session

  • AppsFlyer自2020年7月12日起提供再营销的session数据。
  • 您可以通过以下方式查看再营销的session数据:
    • 数据总览面板的“再营销”和“统一”视图。 
    • 相关群组的“再营销”和“统一”视图。
      • 在“统一”视图中,如果相关session被同时匹配到UA和再营销渠道,则再营销渠道会获得最终的归因,且面板不会显示UA渠道。
      • 数据时效性:每天在UTC时间13:00更新。
    • Data Locker:可启用再营销session报告,其中包含再互动和再归因的session。
      • 数据时效性:有6小时的延迟。
  • 再互动窗口期内发生的session会同时被归因到UA渠道和再营销渠道。同理,其他的再互动应用内事件也会受到双重归因
  • 对于Google Ads和X Ads,af_app_opened事件只发送一次,以避免重复回传。

向渠道发送session回传

您可以针对AppsFlyer统计到的每一个session,向渠道发送session回传。 

  • 如需发送session回传,请将af_app_opened手动映射到渠道侧的对应事件。请注意:在Data Locker的AppsFlyer原始数据报告中,该事件以launch的形式呈现。
  • 请注意:这是一个量级较大的事件,很多渠道不希望接收这类事件。 

 注意

只有启用了Send Sessions的渠道才能支持af_app_opened的映射。

分应用(SDK)的session上报 

应用侧:每当用户打开相关应用或将其调到前台运行时,SDK会根据setMinTimeBetweenSessions设置,发送af_app_opened事件。 

服务器侧:会根据最短间隔机制统计并记录由相关应用上报的session。然后按照与其他应用内事件相同的归因规则,对统计到的session进行归因。

开发人员手动设置的session上报(仅适用于安卓)

您可以在安卓应用中使用logSession来手动上报session。iOS中没有等效的调用方式。

  • 如果相关应用长时间时间在后台运行,您可能需要让开发人员在其中部署session上报逻辑。常见的此类应用包括电池管理、桌面启动、锁屏、杀毒等工具类软件。对于这类应用,可以考虑在每天午夜上报一个session,或按适合相关应用的频率来上报session。
  • 除了上述方式,您也可以在用户完成特定应用内操作时记录session,比如点击清除内存按钮等等。

设置应用打开之间的最短间隔

您可以在SDK中设置两个session之间的最短间隔。也就是说,两个session之间的时间必须超过这个最短间隔,才能算作两个独立的session。

请使用setMinTimeBetweenSessions(即af_app_opened事件)来调控session之间的最短间隔,以便判定并统计独立session。

    • 【默认】5秒。也就是说,一个session发生后,必须等待5秒才能上报下一个session。 
    • 该API支持session之间最短间隔的设置。

具体设置方式请见setMinTimeBetweenSessionsSDK参考信息:

Android iOS Unity

请参考安卓SDK对接说明中的setMinTimeBetweenSessions

请参考iOS SDK对接说明中的minTimeBetweenSessions

This article was translated using AI and may contain errors. For the most accurate information, please refer to the English version using the language selector.


Share article: