用户画像怎么支撑广告投放?我在出海业务的归因实战
先说结论
画像支撑广告投放的核心链路是:画像标签→人群包→广告平台定向→归因分析→反馈优化。这是一个闭环,画像数据在其中起到了「告诉广告平台该投给谁」和「告诉运营哪些投放有效」两个关键作用。
归因是最难的环节。用户看了Facebook广告、又看了TikTok广告、最后搜索了品牌词下载的——这次安装算哪个渠道的功劳?这就是归因要解决的问题。
出海业务的归因比国内复杂得多。涉及多平台(Facebook/Google/TikTok)、多时区、IDFA缺失等问题。
先把这段讲顺;面试官追问时,再展开下面的原理和细节。
详细讲解
广告投放是用户画像最有商业价值的应用场景之一。我在某短剧出海公司,核心工作就是用画像数据支撑广告ROI分析和人群定向。面试官问这道题,不只是考你懂不懂广告业务,更是考你能不能把画像和业务价值连接起来——毕竟花钱买用户是公司最大的成本之一。
画像→人群包→广告投放的完整链路
画像支撑广告投放的完整链路:
Step 1: 画像标签圈选种子用户
从ads_user_profile圈选高价值用户(RFM冠军用户)
导出user_id列表作为种子人群包
Step 2: 上传人群包到广告平台
Facebook -> Custom Audience(自定义受众)
TikTok -> DMP人群包
Google -> Customer Match
Step 3: 广告平台做Lookalike扩展
基于种子用户特征,找到相似的潜在用户
扩展比例通常1%-5%(越小越精准)
Step 4: 投放 + 归因
用户看到广告 -> 点击 -> 安装App -> 注册 -> 付费
归因系统记录每一步的渠道来源
Step 5: 归因数据回流到画像
新用户的来源渠道写入标签(acquisition_channel)
用于分析不同渠道带来的用户质量
归因模型:Last Click vs Multi-Touch
我在出海公司用过两种归因模型:
| 维度 | Last Click(末次归因) | Multi-Touch(多触点归因) |
|---|---|---|
| 原理 | 功劳全给最后一次点击的渠道 | 按规则把功劳分配给多个触点 |
| 优点 | 简单、明确、易执行 | 更公平地评估各渠道贡献 |
| 缺点 | 忽略了前面触点的贡献 | 复杂、需要更多数据支撑 |
| 适用 | 预算有限、快速决策 | 预算充足、精细化运营 |
| 我们的选择 | 日常报表用这个 | 月度深度分析用这个 |
-- Last Click归因SQL:把安装归因给最后一次广告点击
WITH install_events AS (
SELECT user_id, install_time, device_id
FROM dwd_app_install WHERE dt = '${bizdate}'
),
click_events AS (
SELECT device_id, campaign_id, channel,
click_time,
ROW_NUMBER() OVER(
PARTITION BY device_id
ORDER BY click_time DESC -- 取最后一次点击
) AS rn
FROM dwd_ad_click
WHERE click_time >= DATE_SUB('${bizdate}', 7) -- 归因窗口7天
)
SELECT
i.user_id,
c.channel, -- 归因渠道
c.campaign_id, -- 归因广告计划
c.click_time,
i.install_time,
TIMESTAMPDIFF(HOUR, c.click_time, i.install_time) AS click_to_install_hours
FROM install_events i
LEFT JOIN click_events c
ON i.device_id = c.device_id AND c.rn = 1 -- 最后一次点击
AND c.click_time < i.install_time -- 点击在安装之前
AND DATEDIFF(i.install_time, c.click_time) <= 7; -- 7天归因窗口
广告ROI分析:画像数据的核心应用
归因完成后,最重要的分析就是各渠道的ROI。画像数据在这里的作用是:把不同渠道带来的用户的长期价值(LTV)算清楚。
-- 分渠道ROI分析:结合画像标签算用户LTV
SELECT
a.channel,
a.campaign_id,
COUNT(DISTINCT a.user_id) AS installs, -- 安装量
SUM(a.cost_usd) AS total_cost, -- 广告花费
COUNT(DISTINCT CASE WHEN p.value_level = 'high'
THEN a.user_id END) AS high_value_users, -- 带来的高价值用户数
SUM(p.total_amount_usd) AS total_revenue, -- 这批用户的总收入
ROUND(SUM(p.total_amount_usd) / SUM(a.cost_usd), 2) AS roi, -- ROI
ROUND(SUM(a.cost_usd) / COUNT(DISTINCT a.user_id), 2) AS cpa -- 单用户获取成本
FROM dwd_attribution a
JOIN ads_user_profile p ON a.user_id = p.user_id AND p.dt = '${bizdate}'
WHERE a.install_date BETWEEN DATE_SUB('${bizdate}', 30) AND '${bizdate}'
GROUP BY a.channel, a.campaign_id
ORDER BY roi DESC;
这个SQL的价值在于:不只看安装量和CPA(短期指标),还看这批用户的value_level和总收入(长期指标)。有些渠道CPA低但带来的都是白嫖用户,有些渠道CPA高但带来的都是高付费用户——只看CPA会做出错误的预算分配决策。
面试高频追问
追问一:IDFA缺失后,iOS用户怎么归因?
苹果iOS 14之后IDFA默认关闭,获取率从95%暴跌到不足30%。我们的应对方案有三层:①SKAdNetwork(苹果官方归因框架),只提供渠道级别的聚合数据,不提供用户级别的数据,做不了精细归因但至少知道大概渠道分布;②概率性归因(Probabilistic Matching),基于IP+UA+设备型号+时间窗口做模糊匹配,准确率约60-70%;③自归因渠道(SANs)如Facebook和Google有自己的归因SDK,能提供部分转化数据。三种方案结合使用,iOS归因覆盖率能恢复到80%左右。
追问二:归因窗口设多少天合理?
看业务类型。短剧类产品用户决策周期短,归因窗口设1-3天;电商类设7天;硬件类(客单价高)设14-30天。窗口太短会漏掉延迟转化,太长会把不相关的归因错误关联。我在短剧出海公司用的是点击归因7天+曝光归因1天的组合。
追问三:你们用第三方归因工具还是自建?
我们用的AppsFlyer做移动端归因,行业主流工具还有Adjust和Branch。自建归因成本太高——需要和Facebook、Google、TikTok各平台对接API,还要处理设备ID匹配、反作弊等问题。但AppsFlyer的数据也会回流到我们的数仓,和画像标签关联做深度分析。日常看板用AppsFlyer,深度分析和LTV归因用我们自己的数仓+画像数据。
实战踩坑
我在某短剧出海公司做归因时遇到过一个跨时区的坑。广告平台(Facebook)按美国太平洋时间(UTC-8)记录点击时间,我们的数仓按UTC时间记录安装时间。一个日本用户晚上10点看到广告点击了(Facebook记录为太平洋时间凌晨5点),第二天早上下载了App(UTC时间前一天22:00)。
因为时区不一致,归因SQL里的click_time < install_time这个条件判断出了问题——点击时间被记录成了安装之后,导致这个用户没有被归因到任何渠道。
-- 修复前:时区不一致导致归因遗漏
-- click_time是太平洋时间,install_time是UTC,直接比较会出错
-- 修复后:统一转换为UTC再比较
SELECT i.user_id, c.channel
FROM install_events i
JOIN click_events c
ON i.device_id = c.device_id
AND CONVERT_TZ(c.click_time, 'America/Los_Angeles', 'UTC')
< i.install_time -- 统一转UTC后再比较
AND DATEDIFF(i.install_time,
CONVERT_TZ(c.click_time, 'America/Los_Angeles', 'UTC')) <= 7;
教训:出海业务做归因,第一件事就是把所有时间统一转成UTC。不同广告平台、不同SDK上报的时间可能用不同时区,不统一就会出现归因遗漏或错误归因。这个坑看起来简单,但因为涉及多个数据源,排查起来很耗时。
总结
画像支撑广告投放的核心是闭环:画像圈选种子用户→人群包上传→Lookalike扩展→归因回流→ROI分析→反馈优化画像标签。归因模型日常用Last Click够用,深度分析用Multi-Touch。出海业务重点注意IDFA缺失和时区问题。面试时能把画像和广告ROI的关系讲清楚,说明你不只是做数据的,更是理解商业价值的。
下一篇聊一个运维类话题:标签逻辑改了,历史数据要不要重刷?标签回溯和版本管理实战。
你们公司的广告归因用的什么工具?有没有遇到过时区导致的归因问题?评论区聊聊~
关注「Wood聊大数据」| 9年大数据老兵,聊技术、聊职场、聊成长