从 Google Ads 导入的 BigQuery 显示所有 CPM 相关字段值为 0

BigQuery imports from GoogleAds show all CPM related Fields with value 0

你好,好人!

我已按照 this 指南将 google 广告活动信息导入 BigQuery 数据库。

我的目标是创建一个简单的查询,可以将其存储为视图并从 Data Studio 访问以生成报告。但有些字段如 AverageCpm 总是设置为 0。

我还有一份使用 google 广告作为参考来源的数据工作室报告,我可以从 google 广告平台访问所有活动。

这是我正在处理的查询:

SELECT
  c.ExternalCustomerId,
  c.CampaignName as name,
  c.CampaignStatus,
  cs.date as dia,
  SUM(cs.Impressions) AS Impressions,
  SUM(cs.Interactions) AS Interactions,
  AVG(cs.AverageCpm)  AS CPM,
  SUM(cs.Cost)  AS Cost
FROM
  `<DB>.google_ads.Campaign_<ACCOUNT_ID>` c
LEFT JOIN
  `<DB>.google_ads.CampaignStats_<ACCOUNT_ID>` cs
ON
  (c.CampaignId = cs.CampaignId
   AND cs._DATA_DATE BETWEEN
   DATE_ADD(CURRENT_DATE(), INTERVAL -80 DAY) AND DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY))
WHERE
  c._DATA_DATE = c._LATEST_DATE
  and c.CampaignName = 'THE_NAME_OF_MY_CAMPAIGN'

GROUP BY
  1, 2, 3 , 4
ORDER BY
  CampaignName, dia

字段印象,returns 的值与我的参考数据工作室报告和我在 google 广告统计信息中看到的信息一致,所以我觉得我在正确的轨道上。

我的问题是 CampaignStats.AverageCpm 、 CampaignStats.Cost 等字段始终为 0.

例如查询:

Select * from `<DB>.google_ads.p_CampaignStats_<ACCOUNT_ID>` where AverageCpm >0;

Returns 没有结果。

我在考虑权限问题?但是我对公司的所有账户都有管理员权限。

数据库已正确回填。

我已经尝试生成一个新的数据集:同样的问题,我不知道是否有办法配置 google 如何进行导入。

还能是什么?我还能做什么?

非常非常感谢!

Roman Petrochenkov 的回答,check his youtube channel他是最棒的。

AVG(cs.AverageCpm) AS CPM,不正确 因为平均值的平均值不是总数的平均值。

您需要手动计算 CPM 作为 SUM(Impressions)/SUM(NULLIF(Cost, 0)) 作为 CPM

不过,我不建议在 BQ 中计算它,而建议在 BI(在本例中为数据工作室)中计算 int。