广告投放数据分析案例 广告投放结果分析_缺失值


广告投放数据分析中,指标常包含以下数据:

  • 转化量:指客户完成的操作,例如在网站完成购买或加入购物车操作。
  • 点击量:看到广告的用户点击广告的次数。
  • 展示次数:广告首次在用户屏幕展示的次数。
  • 点击率或 CTR:广告收到的点击次数除以展示次数。
  • 单次链接点击费用 (CPC):每次有人点击广告时,支付的平均费用。此数值的计算方式为广告花费的金额除以广告得到的点击量。
  • 千次展示费用 (CPM):您为 1,000 次广告展示所支付的平均费用。
  • CPA(Cost Per Action),即平均每个激活用户的成本

CPA=广告投入总额/所投的广告带来的激活用户数

  • ROI(Return On Investment)即投资回报率,是指投资后所得的收益与成本间的百分比率

投资回报率(ROI)=利润/投资总额×100%

一、数据准备

1、数据来源:

An introduction to Facebook ad analysis using Rwww.kaggle.com


2、数据清洗

a.首先使用R对数据进行概览:一共11个变量,1143条广告数据的展示、点击等情况。详细如下图:


广告投放数据分析案例 广告投放结果分析_缺失值_02


b.缺失值查找:未发现缺失值


aggr(ad,prop=FALSE,number=TRUE)#agger函数获取缺失值个数分布


广告投放数据分析案例 广告投放结果分析_广告投放数据分析案例_03


二、分析整体广告投放效果

1、分析思路:


广告投放数据分析案例 广告投放结果分析_缺失值_04


2、广告投放效果对比分析

a、增加比例指标变量,查看广告投放效果:

  • CTR点击率= Clicks /Impressions
  • 第一次转化率=Total_Conversion /Clicks
  • 第二次转化率=Approved_Conversion/Total_Conversion


广告投放数据分析案例 广告投放结果分析_广告投放数据分析案例_05


b、广告收益、成本分析,增加比例指标变量:

  • CPM(千次展示成本)=1000*Spent/Impressions
  • CPC(单次点击成本)=Spent/Clicks
  • CPA(单次获客成本)=Spent/Approved_Conversion
  • ROI(投资回报率)=100*Approved_Conversion/Spent,假定每次交易收入为100元


广告投放数据分析案例 广告投放结果分析_sql_06


3、收益最高916类广告受众分析

虽然916广告投放效果非常好,我们还是想看看改广告是否有优化可能:


广告投放数据分析案例 广告投放结果分析_广告投放数据分析案例_07


广告投放数据分析案例 广告投放结果分析_sql 除以_08



※※分析中用到的SQL 语句和原始数据查询结果:

a.增加比例指标变量,查看广告投放效果,在sql中的语句如下

  • CTR点击率= Clicks /Impressions
  • 第一次转化率=Total_Conversion /Clicks
  • 第二次转化率=Approved_Conversion/Total_Conversion
SELECT xyz_campaign_id AS 'XYZ公司广告类别',SUM(Impressions) AS '展示量',SUM(Clicks) AS '点击量', 
CONCAT(ROUND(100*SUM(Clicks)/SUM(Impressions),6),'%') AS '点击率',
SUM(Total_Conversion) AS '咨询量', CONCAT(ROUND(100*SUM(Total_Conversion)/SUM(Clicks),6),'%') AS '第一次转化率',
SUM(Approved_Conversion)AS '交易量',CONCAT(ROUND(100*SUM(Approved_Conversion)/SUM(Total_Conversion),6),'%' )AS '第二次转化率'
FROM ad GROUP BY xyz_campaign_id;


广告投放数据分析案例 广告投放结果分析_缺失值_09


b、广告收益、成本分析,增加比例指标变量:

  • CPM(千次展示成本)=1000*Spent/Impressions
  • CPC(单次点击成本)=Spent/Clicks
  • CPA(单次广告获客成本)=Spent/Approved_Conversion
  • ROI(投资回报率)=100*Approved_Conversion/Spent,假定每次交易收入为100元
SELECT xyz_campaign_id AS 'XYZ公司广告类别',ROUND(1000*SUM(spent)/SUM(impressions),2) AS CPM,
ROUND(SUM(spent)/SUM(clicks),2) AS CPC,ROUND(SUM(spent)/SUM(Approved_Conversion),2) AS CPA,
CONCAT(ROUND(100*100*SUM(Approved_Conversion)/SUM(spent),3),'%') AS ROI
FROM ad GROUP BY xyz_campaign_id;


广告投放数据分析案例 广告投放结果分析_缺失值_10


广告受众分析

a.投放效果最好广告分析

916年龄分布


#年龄转化分析
SELECT age,SUM(Impressions) AS '展示量',SUM(Clicks) AS '点击量', 
CONCAT(ROUND(100*SUM(Clicks)/SUM(Impressions),6),'%') AS '点击率',
SUM(Total_Conversion) AS '咨询量', CONCAT(ROUND(100*SUM(Total_Conversion)/SUM(Clicks),6),'%') AS '第一次转化率',
SUM(Approved_Conversion)AS '交易量',CONCAT(ROUND(100*SUM(Approved_Conversion)/SUM(Total_Conversion),6),'%' )AS '第二次转化率'
FROM adfb 
WHERE xyz_campaign_id='916'
GROUP BY age;

#性别转化分析
SELECT gender,SUM(Impressions) AS '展示量',
CONCAT(ROUND(100*SUM(Clicks)/SUM(Impressions),6),'%') AS '点击率',
CONCAT(ROUND(100*SUM(Total_Conversion)/SUM(Clicks),6),'%') AS '第一次转化率',
CONCAT(ROUND(100*SUM(Approved_Conversion)/SUM(Total_Conversion),6),'%' )AS '第二次转化率'
FROM adfb 
WHERE xyz_campaign_id='916'
GROUP BY gender;

#标签转化分析
SELECT interest,SUM(Impressions) AS '展示量',
CONCAT(ROUND(100*SUM(Clicks)/SUM(Impressions),6),'%') AS '点击率',
CONCAT(ROUND(100*SUM(Total_Conversion)/SUM(Clicks),6),'%') AS '第一次转化率',
CONCAT(ROUND(100*SUM(Approved_Conversion)/SUM(Total_Conversion),6),'%' )AS '第二次转化率'
FROM adfb 
WHERE xyz_campaign_id='916'
GROUP BY interest
ORDER BY  SUM(Impressions) DESC;


广告投放数据分析案例 广告投放结果分析_数据_11


916性别、兴趣标签转化数据


广告投放数据分析案例 广告投放结果分析_sql_12


广告投放数据分析案例 广告投放结果分析_数据_13