一、项目背景

社交网站Facebook用户遍布全球各大洲,旗下产品用户数破10亿,约23%的世界人口是Facebook用户,而且移动端月均活跃用户达到总用户数的97%。由此许多出海企业在海外推广时,都会在Facebook进行广告投放。

本文就使用kaggle上的Facebook广告投放效果案例数据集,站在广告商家的角度,对xyz 公司投放的三组广告进行数据分析,帮助商家判断广告是否达到预期,并找到精准的受众群体,优化广告投放效果。

二、数据来源

销售转化优化
本项目使用的数据来自某匿名组织的社交媒体广告活动。可以从这里下载数据文件。文件conversion_data.csv包含1143个观测值和11个变量。以下是这些变量的描述。
在这里插入图片描述

1.) ad_id: 每个广告的唯一ID。

2.) xyz_campaign_id: 与XYZ公司每个广告活动相关的ID。

3.) fb_campaign_id: Facebook用来追踪每个广告活动的ID。

4.) age: 显示广告的受众年龄。

5.) gender: 显示广告的受众性别。

6.) interest: 指定受众兴趣类别的代码(兴趣类别是受众在Facebook公共个人资料中提到的)。

7.) Impressions: 广告显示的次数。

8.) Clicks: 广告点击的次数。

9.) Spent: XYZ公司为在Facebook上显示该广告支付的费用。

10.) Total conversion: 看到广告后询问产品的总人数。

11.) Approved conversion: 看到广告后购买产品的总人数。

三、数据导入

通过navicat的导入向导功能将csv格式数据导入到mysql数据库
在这里插入图片描述

四、数据分析

通过navicat软件的BI功能进行数据的可视化分析
在这里插入图片描述

概念定义

效果指标:

               点击率(CTR)=  点击量 / 曝光量
               咨询转化率(CVR_T)=  咨询量 / 点击量
               购买转化率(CVR_A)=  购买量 / 咨询量
               支出回报率(ROI) = 购买量 /

通过sql语句计算各指标并转存到对应的数据表:
点击率:

-- 删除已存在的表(如果存在)
DROP TABLE IF EXISTS campaign_avg_ctr;

-- 创建新表
CREATE TABLE campaign_avg_ctr (
    xyz_campaign_id INT,
    avg_ctr DECIMAL(5,5)
);

-- 将计算结果插入新表
INSERT INTO campaign_avg_ctr (xyz_campaign_id, avg_ctr)
SELECT xyz_campaign_id, 
       (SUM(Clicks) / SUM(Impressions)) * 100 AS avg_ctr
FROM kag_conversion_data
GROUP BY xyz_campaign_id;

转化率:

-- 删除已存在的表(如果存在)
DROP TABLE IF EXISTS campaign_conversion_rates;

-- 创建新表
CREATE TABLE campaign_conversion_rates (
    xyz_campaign_id INT,
    total_conversion_rate DECIMAL(10,5),
    approved_conversion_rate DECIMAL(10,5)
);

-- 将计算结果插入新表
INSERT INTO campaign_conversion_rates (xyz_campaign_id, total_conversion_rate, approved_conversion_rate)
SELECT 
    xyz_campaign_id, 
    (SUM(Total_conversion) / SUM(Clicks)) AS total_conversion_rate,
    (SUM(Approved_conversion) / SUM(Total_conversion))  AS approved_conversion_rate
FROM 
    kag_conversion_data
GROUP BY 
    xyz_campaign_id;

相关性分析

使用seaborn绘制相关性矩阵

# 选择需要分析的变量
variables = ['Impressions', 'Clicks', 'Spent', 'Total_Conversion', 'Approved_Conversion']
# 计算变量之间的相关性矩阵
correlation_matrix = data[variables].corr()
# 使用heatmap可视化相关性矩阵
sns.heatmap(correlation_matrix, annot=True, cmap='coolwarm', fmt=".2f")

结果:
在这里插入图片描述
使用seaborn绘制变量之间的散点图

# 选择需要分析的变量
variables = ['Impressions', 'Clicks', 'Spent', 'Total_Conversion', 'Approved_Conversion']
# 画出两两变量之间的散点图,只显示下三角,并带有拟合直线,拟合直线颜色设置为红色
sns.pairplot(data[variables], kind='reg', corner=True, plot_kws={"line_kws":{"color":"red"}})
plt.show()

结果:
在这里插入图片描述

结论:

  1. Impressions、licks、Spent、Total conversion、Approved conversion两两之间均存在一定的正线性相关关系
  2. Spent与Impressions、clicks的相关系数分别是0.97、0.99,Impressions与clicks的相关系数为0.95,这说明广告花费越高,曝光量越多,点击量越多。
  3. 点击量与广告花费成明显正比,且相关程度极高,说明广告计费的方式为按点击量收费,即获得的点击量越多,广告花费就越高。
  4. 曝光量、点击量和咨询量与购买量之间都存在相关性,其相关性由强到弱排序大体上为:咨询量 > 曝光量 > 点击量。按照我们所期望的用户行为曝光 → 点击 → 咨询 → 购买,点击量与购买量的相关程度应该比曝光量与购买量的相关程度更强,这里的数据恰恰相反,说明有些用户看到广告后并没有点击,而是直接咨询。通过excel的筛选功能也验证了这一点。

总曝光量、总点击量、点击率(按广告组)

在这里插入图片描述

① 从总曝光量来看,1178广告组获得的流量最多,916广告组获得的流量最少。

② 从总花费看,1178由于曝光基数的原因,数量最多,916数量最少

③ 点击率来看,均在0.02%左右,以0.02%为基准,广告组916和936的点击率较高,而广告组1178的点击率较低。

④ 综上,

咨询转化率、购买转化率、点击率(按广告组)

在这里插入图片描述
① 三组广告的点击率均在0.02%左右,以0.02%为基准,广告组916和936的点击率较高,而广告组1178的点击率较低。

② 三组广告的咨询转化率差别较大。其中,广告组916的咨询转化率高达51%,说明点击广告的用户超过一半会去咨询,表明广告内容质量高;而广告组1178的咨询转化率最低,只有7%,后面应查看情况提高。

③ 三组广告的购买转化率在30%~40%左右,整体服务质量还算理想。广告组916的购买转化率最高,超过40%,说明咨询过产品的用户接近一半购买了产品。

④ 综上,广告组916的转化效果最好,其点击率、咨询转化率、购买转化率在三组广告中均较高,虽然广告组1178带来的流量较多,但在同等数量资源下,广告组916可以获到更好的转化。

支出回报率(按广告组)

在这里插入图片描述
① 916广告组的投资回报率最大,可以加大916广告组的宣传力度,以求更多的转化量。
② 1178广告组是投资最高回报最少,初步判断是推广的产品与受众不匹配。

咨询转化率、购买转化率、点击率、支出回报率(按性别)

在这里插入图片描述
在这里插入图片描述

① 点击率女性高于男性,说明女性对该产品更有兴趣,但是在咨询转化率和购买转化率上,女性都低于男性,说明在咨询和购买环节对女性的承接不是很好,有待优化。
② 第一点问题未解决的前提下,可以适当优化广告素材和提高男性曝光量,提高男性点击率和转化量,以求增加收益。

咨询转化率、购买转化率、点击率、曝光量(按年龄)

在这里插入图片描述
① 30-34年龄段 曝光量最高,点击率最低,咨询和购买转化率最高。由此可见,30-34年龄段是主要的付费群体,但是广告内容与30-34年龄段可能不符,需优化广告设计。
② 需求随着年龄增长越来越大,但是咨询和购买转化率确越来越低,可能是广告内容存在虚假宣传。老年人容易被广告内容欺骗点击。
③ 45-49年龄段点击率最高,但是咨询和购买转化率最低,看看是否是服务承接的不好。

广告花费、支出回报率(按年龄)

在这里插入图片描述
① 45-49年龄段广告花费最多,投资回报率确最低,可以减少其曝光量,提升服务质量,以求增加收益

咨询转化率、购买转化率、点击率、曝光量(按兴趣标签)

在这里插入图片描述
① 高曝光低点击低转化:16、10、15、107,应当减少这些兴趣标签用户群体的曝光量,以减少广告花费。
② 高点击低转化:27、63、25、26、100、23、106、104、114。这些兴趣标签的用户群体对产品的需求较高,但它们在咨询与购买环节流失严重,需结合产品进一步分析。
③低曝光高点击高转化:2、65、31、36,应当增加这些兴趣标签用户群体的曝光量,以增加收益。

广告花费和支出回报率(按兴趣标签)

在这里插入图片描述
①高花费低回报:16、27、10、28、63。这些兴趣标签都是转化率不行,点击率还行,说明对产品的需求较高,但它们在咨询与购买环节流失严重,需结合产品进一步分析。
② 低花费高回报:101、2、112、31、102、36。 这些兴趣标签是曝光量不够,转化率还不错,应当加大曝光力度,以求增加收益。