Android端Google Firebase会话活动归因上报数据缺失问题咨询
问题排查与解决方案
触发时机不符合系统要求
CAMPAIGN_DETAILS 事件仅支持在应用冷启动后的前15秒内上报才会被Firebase归因系统接收,超出该窗口上报的事件会被直接判定为无效,不会计入流量获取面板统计,也可能不会同步至BigQuery事件表。如果你的上报逻辑需要先通过接口拉取UTM参数、或者延迟初始化Firebase Analytics再上报,大概率会超出15秒窗口,导致绝大多数事件被丢弃。
建议将UTM参数获取逻辑前置,尽可能在应用启动的首个Activity生命周期回调中完成事件上报。必填参数缺失导致事件无效
Firebase 要求CAMPAIGN_DETAILS事件必须同时携带SOURCE(utm_source)和MEDIUM(utm_medium)两个必填参数,任意参数为空的事件都会被系统直接拦截,不会入库。请检查你的上报逻辑是否存在未获取到对应参数时仍触发事件上报的场景,这类无效上报不会被统计。BigQuery查询逻辑错误导致数据统计不全
你当前的查询语句仅筛选了任意事件参数值包含210907的事件,未指定匹配的参数key,会遗漏仅在campaign字段携带210907的事件,正确查询语句如下:SELECT user_pseudo_id, COUNT(*) AS event_count FROM `db.table.events_20210907`, UNNEST(event_params) AS ep WHERE event_name = 'campaign_details' AND platform = 'ANDROID' AND ep.key = 'campaign' AND ep.value.string_value = '210907' GROUP BY user_pseudo_id重复上报被去重
同一个用户同一会话内多次上报CAMPAIGN_DETAILS事件时,Firebase仅会保留首次有效上报的记录,后续的重复上报都会被直接丢弃,不会被统计。如果你的逻辑存在多次触发该事件的情况,会导致上报量和统计量出现差异。客户端上报失败
若用户开启了广告拦截、限制应用网络权限、或者长期离线超过7天,客户端缓存的事件会被自动清理,无法上报到Firebase服务器,也会导致统计数据少于实际触发量。
内容的提问来源于stack exchange,提问作者Zagor84

