Firebase iOS SDK 推送通知UTM归因的正确实现方法
iOS推送通知场景附加归因信息的落地方案
在SDK不支持修改原生session_start事件的前提下,可通过以下步骤实现归因补全,无需调整原有session事件的埋点逻辑:
- 推送侧预置归因参数到自定义payload
给iOS端所有推送的自定义字段中提前写入全量utm归因参数(含utm_source、utm_medium、utm_campaign、utm_term、utm_content),如果使用第三方推送服务商,直接在后台的推送模板配置固定归因参数、或给每个推送任务单独设置对应参数即可。 - 客户端接收推送后缓存归因参数
用户点击推送唤起应用时,iOS端先读取推送payload里的归因参数,存入本地临时缓存,缓存过期时间和session有效期保持一致(通常为30分钟无操作自动失效);如果点击推送时应用已在后台存活,也需要触发同样的参数写入逻辑。 - 自定义
NOTIFICATION_OPENED事件关联session标识
触发自定义NOTIFICATION_OPENED事件时,除了携带全量utm参数外,额外附加和当前session_start事件完全一致的session_id字段,后续数据清洗时,可直接通过相同的session_id,将该NOTIFICATION_OPENED事件的utm参数补全到同session下的所有用户行为事件、以及转化事件上。 - 统计后台配置自动归因规则(可选)
如果你使用的是GA4、Firebase等自带事件加工能力的分析工具,可以直接在后台配置事件继承规则,当同个session下检测到
NOTIFICATION_OPENED事件时,自动将该事件的utm参数作为整个session的流量来源参数,不需要额外做数据清洗开发。
内容的提问来源于stack exchange,提问作者Daryl Teo
相关产品推荐
相关产品推荐

