如需自动或大规模拉取 GeoX 实验的数据,您必须使用 Google Ads API 拉取费用和支出数据。然后,将这些数据与来自内部 CRM、销售终端 (POS) 或内部销售数据库的原始、未经过滤且未归因的转化或收入数据相结合。
推荐的 API 工作流架构
如需按地理位置细分准确提取广告系列和费用数据,请遵循以下架构:
- 服务:使用
GoogleAdsService,特别是Search或SearchStream方法。 资源:查询
geographic_view可查看用户实际所处的地理位置或感兴趣的地理位置,这通常是 GeoX 实验的标准。或者,您也可以查询location_view,以查看广告系列定位到的特定地理位置的效果。要包含的字段:
campaign.idsegments.datesegments.geo_target_city(或区域或国家/地区,具体取决于地理位置 X 粒度)metrics.cost_micros
GAQL 查询示例:对于 GeoX,广告客户使用 Google Ads API 拉取费用指标,而不是归因转化(应来自内部 CRM 或第三方系统)。您可以使用以下查询:
SELECT campaign.id, segments.date, segments.geo_target_city, metrics.cost_micros FROM geographic_view WHERE segments.date DURING LAST_30_DAYS
后处理和数据提取
地理位置细分映射:该 API 不会在报告视图中返回纯文本名称(例如“纽约”)或短代码(例如“501”或“ES”)。
segments.geo_target_city或segments.geo_target_country等字段会返回指向GeoTargetConstant的资源名称字符串(例如geoTargetConstants/1023191)。提取数字 ID (1023191) 并查询geo_target_constant资源:SELECT geo_target_constant.id, geo_target_constant.name, geo_target_constant.canonical_name FROM geo_target_constant WHERE geo_target_constant.id = 1023191或者,如需在代码中本地执行联接,请在地理位置定位条件中下载静态地理位置定位条件 CSV 文件。
费用转化:API 以微单位返回费用值。您必须将
metrics.cost_micros除以 1,000,000,才能输出上传文件中所需的标准币种值。
用于定位突变的地理位置 ID
在执行广告系列或广告组地理位置定位变更时,广告客户必须查找并传递所选地区的准确 GeoTargetConstant ID (geoTargetConstants/ID)。您无法传递原始 ISO 或 Nielsen 代码。
| 区域类型 | 必需的 API ID (GeoTargetConstant) |
旧版格式(请勿使用) |
|---|---|---|
| DMA 区域 | ID 200501(适用于纽约) |
尼尔森代码(例如,纽约为 501) |
| 国家/地区 | ID 2724(适用于西班牙) |
ISO 代码(例如,"ES" 表示西班牙) |
最佳实践和常见格式设置错误
- 日期格式:
segments.date字段以YYYY-MM-DD格式返回 ISO-8601 日期字符串。在 ETL 流水线中,将日期字段显式序列化为YYYY-MM-DD字符串,并避免在会自动重新设置日期列格式的电子表格应用中打开导出的 CSV 文件。 - 邮政编码中的前导零:在整个数据流水线中,将邮政编码和邮编(例如
01234)视为字符串类型(VARCHAR或STRING),而不是整数,这样就不会去除前导零。 - 汇总:如果开展多实验组研究,您必须为每个处理组提供单独的支出指标。
- 联接转化数据:在与内部 CRM 系统或内部销售数据库中的转化数据联接时,请确保转化数据具有以下属性,以便与 Google Ads API 数据和 GeoX 实现无缝数据处理:
- 每日时间序列:数据必须按天汇总。
- 地理位置级别:每次转化都必须映射到您正在测试的确切地理位置单位(例如,将客户的送货邮政编码与设计中使用的特定媒体市场区域或邮政编码集群相匹配)。
- 总价值:数据必须是非负的绝对值,例如总收入或总转化次数。如果您的 CRM 跟踪净收入时,退款会以负值表示,您必须使用实验的总收入数据,并在稍后应用退款比率。