接入 Google Ads API,把投放复盘变成自动报告
建议开始做谷歌投放的都去接入一下官方的 API。

建议开始做谷歌投放的都去接入一下官方的 API。
平时直接在 Google Ads 后台看广告系列、关键词和搜索词已经够用。但当我想定期把广告花费和站内注册、购买数据放在一起核对,每天手动导表就比较麻烦,所以把 Google Ads API 接了起来。
接入以后,可以定时读取广告系列、预算、关键词、用户实际搜索词,以及展示、点击、费用、转化和转化价值。数据还能按日期、国家和设备拆分,再和产品自己的注册、订单数据一起分析。
下面分享一下我的接入流程,以及过程中几个需要注意的地方。
先准备 Google Ads 经理账号
Google Ads 的 API Center 只对经理账号开放。直接用普通广告客户账号进入时,会看到下面的提示。
如果还没有经理账号,可以从 Google Ads Manager Accounts 页面创建一个,再把正在投放的客户账号关联进来。
经理账号只是增加一层统一管理入口,不会改变原有广告、余额和付款方式。关联请求发出后,还要回到客户账号的「访问权限和安全」页面接受邀请。
在经理账号中关联现有 Google Ads 客户账号
后面会同时用到两个 Customer ID:
- 经理账号 ID,用作
login_customer_id。 - 实际投放的客户账号 ID,用作查询目标。
在 API Center 申请 Developer Token
进入经理账号的 API Center,填写 API 使用场景并申请 Developer Token。
如果只是分析自己的投放数据,可以如实说明用途是内部只读报告:查询广告系列、搜索词、花费和转化数据,用于投放复盘,不向第三方提供服务,也不自动创建或修改广告。
在 Google Ads API Center 填写访问申请
按照 Google 当前的配额,Explorer Access 每天可以在生产账号中执行 2,880 次操作。对于每天跑一次内部报表的小型项目,通常已经够用;数据量再增加时,再考虑申请更高等级。
在 Google Cloud 中准备身份认证
Developer Token 只代表应用获得了调用 Google Ads API 的资格,每次请求还需要 OAuth 2.0 身份认证。
我的做法是创建一个只用于报表的 Service Account。先在 Google Cloud 项目中搜索并启用 Google Ads API。
在 Google Cloud 中启用 Google Ads API
然后进入「IAM 和管理 → 服务账号」创建 Service Account。做只读报表时,不需要给它 Google Cloud 项目管理员权限。
创建完成后,还要把这个 Service Account 的邮箱添加到 Google Ads 经理账号中,权限选择「只读」。这样它才能访问经理账号下面已经关联的广告客户账号。
本地脚本可以使用 Service Account 的 JSON 密钥完成认证。
这个文件包含私钥,不能发到聊天中、不能提交到 Git,也不能放进前端项目。线上长期运行时,最好放进专门的密钥管理服务,或者使用 Workload Identity Federation,减少长期密钥泄露的风险。
Google Cloud 创建密钥时的安全提醒
这里有个容易混淆的地方:如果使用 Service Account 认证,就不需要再保存某个 Google 用户的 refresh token。
配置参数并完成第一次查询
最终需要准备四项配置:
textGOOGLE_ADS_DEVELOPER_TOKEN=Developer Token GOOGLE_ADS_LOGIN_CUSTOMER_ID=经理账号 ID,不带横线 GOOGLE_ADS_CUSTOMER_ID=广告客户账号 ID,不带横线 GOOGLE_APPLICATION_CREDENTIALS=/secure/path/service-account.json
这些配置只放在本机或服务端环境中,不进入代码仓库。
第一次连接时,我会先做几项简单验证:确认能够获取访问令牌、列出可访问账号、读取广告系列,再查询最近 7 天的展示、点击、费用、转化、关键词和搜索词。
接入以后,可以把投放复盘做得更省事
API 跑通后,可以每天定时查询最近 7 天的数据。选择 7 天而不是只查昨天,是为了覆盖部分延迟进入报表的转化。
我比较关心的内容包括:
- 每天花了多少钱,带来了多少点击、注册和购买。
- 哪些关键词和实际搜索词在消耗预算。
- 不同国家、设备和广告系列的转化表现。
- 广告后台记录的转化,能否和产品中的注册、订单及收入对上。
Google Ads API 只能提供广告平台侧的数据。注册、支付和真实收入仍然要从自己的数据库或分析系统中读取,再通过点击标识、归因参数或已有的转化链路进行关联。
把两边数据放在同一份报告里,排查会清楚很多:点击少,先看流量和广告;点击不少但注册少,检查落地页;注册正常但付费低,继续看产品和支付;站内已有订单但 Ads 没有转化,则检查转化回传。
配置完成后,后续的日报、周报和搜索词清理都可以自动化,减少人工操作的时间。