Facebook Insights API获取的mobile_app_install数据与仪表盘不一致的排查咨询
Facebook Insights API与仪表盘mobile_app_install数据不一致的排查建议
我通过Python调用Facebook Insights API提取mobile_app_install数据时,API返回数值为1839,但Facebook仪表盘显示的数值为1736,请求排查该差异的相关建议。
调用API的代码如下:
campaign = Campaign('23850184438290054') fields = {'campaign_id','campaign_name','clicks', 'spend','cpc','cpm','ctr','actions'} params = { # 'date_preset':'yesterday' 'time_range':{'since':'2022-07-28','until':'2022-07-28'} # ,'breakdowns':'country' ,'level':'campaign' ,'time_increment':1 ,'export_format':'csv' } response = campaign.get_insights(params=params, fields = fields) df = pd.DataFrame.from_dict(response) df.head()
API返回数据截图:
Facebook仪表盘数据截图:
排查建议
- 核对时间与维度匹配度:确认API的
time_range和仪表盘选择的日期完全一致,注意时区差异(Facebook默认UTC,仪表盘可能用本地时区);检查level参数是否和仪表盘统计层级统一(均为campaign级)。 - 精准筛选action类型:API返回的
actions字段包含所有操作类型,需确认是否仅提取了mobile_app_install。当前代码未做过滤,可能包含重复安装、其他关联操作,而仪表盘可能只统计首次安装。可添加过滤逻辑:def get_app_install_count(actions): for act in actions: if act.get('action_type') == 'mobile_app_install': return int(act.get('value', 0)) return 0 df['mobile_app_install'] = df['actions'].apply(get_app_install_count) - 统一归因模型与数据延迟:检查API和仪表盘的归因窗口是否一致(比如7天点击/1天浏览),可在API参数中显式指定:
同时注意Facebook数据存在更新延迟,API与仪表盘的统计时间点可能不同。params.update({'attribution_window': ['7d_click', '1d_view']}) - 排除无效数据:确认API是否包含测试广告、沙箱环境数据,而仪表盘可能已过滤这类数据;排查是否存在跨campaign的重复归因统计。
- 核对API版本:不同版本的Facebook API统计逻辑可能有差异,确认SDK对应的API版本与仪表盘底层版本一致。
内容的提问来源于stack exchange,提问作者Nhi Yen
相关产品推荐
相关产品推荐

