mcpField
G
gaql-query-patterns

gaql-query-patterns

github.com/fourteenwm营销与增长7732 次安装9 周前更新
代码仓库

关于 gaql-query-patterns

gaql-query-patterns 收录用于常见 PPC 分析的只读 Google Ads Query Language 模板,面向需要查询示例的分析人员;实际执行和结果诊断由其他工具或技能处理。

主要功能

  1. 01广告系列支出与进度查询
  2. 02展示份额分析模板
  3. 03搜索词和关键字报告
  4. 04广告与转化查询
  5. 05地域和设备细分
  6. 06GAQL 字段与日期说明

适用场景

  1. 01检查广告系列预算和进度
  2. 02查找高成本且无转化的搜索词
  3. 03审核关键字质量得分
  4. 04准备账户级效果报告

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/fourteenwm/ppc-ai-skills --skill gaql-query-patterns

安装后在 Claude Code 中输入/gaql-query-patterns确认已加载。

附带文件README.md

详细介绍

GAQL 查询模式

适用于常见 PPC 分析任务的 GAQL(Google Ads Query Language)现成查询模板。

本技能明确不会做什么

  • 运行查询。 这些是可复制粘贴的模板,不是执行工具——将它们粘贴到你自己的 API 客户端、Google Ads Scripts 或 google-ads-query 中,才能实际执行并导出结果。
  • 修改任何内容。 每个模板都是只读的 SELECT;这里的内容不会更改账户。
  • 涵盖变更历史查询。 查询何时发生了哪些变化,需要指定有限的日期范围和 LIMIT,相关内容请参阅 change-history-checker——没有日期范围的变更查询无法运行。
  • 诊断结果。 “用途”和“结果解读”说明会引导你进行分析;实际根因分析由诊断技能完成(例如,印象份额查询可参阅 impression-share-diagnostics)。

广告系列查询

7 天广告系列支出分析
SELECT
    campaign.id,
    campaign.name,
    campaign.status,
    campaign.advertising_channel_type,
    campaign.bidding_strategy_type,
    campaign_budget.amount_micros,
    campaign_budget.explicitly_shared,
    metrics.cost_micros,
    metrics.impressions,
    metrics.clicks,
    metrics.conversions,
    metrics.conversions_value
FROM campaign
WHERE segments.date DURING LAST_7_DAYS
ORDER BY campaign.name

**用途:**近期支出分析、预算使用情况、广告系列健康检查


月初至今的支出进度
SELECT
    campaign.id,
    campaign.name,
    campaign_budget.amount_micros,
    metrics.cost_micros
FROM campaign
WHERE segments.date DURING THIS_MONTH
ORDER BY campaign.name

**用途:**月度支出进度计算、预算跟踪


广告系列设置审计
SELECT
    campaign.id,
    campaign.name,
    campaign.status,
    campaign.advertising_channel_type,
    campaign.bidding_strategy_type,
    campaign.target_cpa.target_cpa_micros,
    campaign.target_roas.target_roas,
    campaign_budget.amount_micros,
    campaign_budget.explicitly_shared
FROM campaign
WHERE campaign.status = 'ENABLED'

**用途:**配置审计、出价策略检查、预算审核


印象份额

搜索印象份额分析
SELECT
    campaign.id,
    campaign.name,
    campaign.advertising_channel_type,
    metrics.search_impression_share,
    metrics.search_budget_lost_impression_share,
    metrics.search_rank_lost_impression_share,
    metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_7_DAYS
  AND campaign.advertising_channel_type IN ('SEARCH', 'PERFORMANCE_MAX')
ORDER BY metrics.search_budget_lost_impression_share DESC

**用途:**诊断支出不足,识别预算限制还是质量问题

结果解读:

  • 预算导致的印象份额损失较高 → 增加预算以获得更多展示
  • 排名导致的印象份额损失较高 → 质量或相关性问题(不是预算问题)
  • 两者都较高 → 预算是主要限制因素,但质量也需要改进

搜索字词

搜索字词报告(最近 30 天)
SELECT
    search_term_view.search_term,
    campaign.name,
    ad_group.name,
    metrics.impressions,
    metrics.clicks,
    metrics.cost_micros,
    metrics.conversions,
    search_term_view.status
FROM search_term_view
WHERE segments.date DURING LAST_30_DAYS
  AND metrics.impressions > 0
ORDER BY metrics.cost_micros DESC

**用途:**发掘否定关键字、审计搜索字词、分析意图


高支出且未带来转化的搜索字词
SELECT
    search_term_view.search_term,
    campaign.name,
    metrics.clicks,
    metrics.cost_micros,
    metrics.conversions
FROM search_term_view
WHERE segments.date DURING LAST_30_DAYS
  AND metrics.conversions = 0
  AND metrics.cost_micros > 0
ORDER BY metrics.cost_micros DESC

**用途:**查找浪费的支出、发掘否定关键字候选项


关键字

带质量得分的关键字效果
SELECT
    ad_group.name,
    ad_group_criterion.keyword.text,
    ad_group_criterion.keyword.match_type,
    ad_group_criterion.quality_info.quality_score,
    ad_group_criterion.quality_info.creative_quality_score,
    ad_group_criterion.quality_info.post_click_quality_score,
    ad_group_criterion.quality_info.search_predicted_ctr,
    metrics.impressions,
    metrics.clicks,
    metrics.cost_micros,
    metrics.conversions
FROM keyword_view
WHERE segments.date DURING LAST_30_DAYS
  AND ad_group_criterion.status = 'ENABLED'
ORDER BY metrics.cost_micros DESC

**用途:**质量得分审计、关键字效果分析


未投放的关键字(零展示)
SELECT
    campaign.name,
    ad_group.name,
    ad_group_criterion.keyword.text,
    ad_group_criterion.keyword.match_type,
    ad_group_criterion.status,
    metrics.impressions
FROM keyword_view
WHERE segments.date DURING LAST_180_DAYS
  AND campaign.status = 'ENABLED'
  AND ad_group.status = 'ENABLED'
  AND ad_group_criterion.status = 'ENABLED'
  AND metrics.impressions = 0

**用途:**查找需要清理的无效关键字、维护账户整洁


广告

RSA 效果
SELECT
    campaign.name,
    ad_group.name,
    ad_group_ad.ad.id,
    ad_group_ad.ad.responsive_search_ad.headlines,
    ad_group_ad.ad.responsive_search_ad.descriptions,
    ad_group_ad.ad_strength,
    metrics.impressions,
    metrics.clicks,
    metrics.conversions,
    metrics.cost_micros
FROM ad_group_ad
WHERE segments.date DURING LAST_30_DAYS
  AND ad_group_ad.ad.type = 'RESPONSIVE_SEARCH_AD'
  AND ad_group_ad.status = 'ENABLED'
ORDER BY metrics.impressions DESC

**用途:**广告效果审核、RSA 优化


转化

转化操作列表
SELECT
    conversion_action.id,
    conversion_action.name,
    conversion_action.type,
    conversion_action.status,
    conversion_action.category,
    conversion_action.value_settings.default_value,
    conversion_action.counting_type,
    conversion_action.attribution_model_settings.attribution_model
FROM conversion_action
WHERE conversion_action.status = 'ENABLED'
ORDER BY conversion_action.name

**用途:**转化跟踪审计、识别配置错误的操作


按操作划分的转化效果
SELECT
    segments.conversion_action_name,
    segments.conversion_action_category,
    metrics.conversions,
    metrics.conversions_value,
    metrics.all_conversions,
    metrics.cost_micros
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.conversions DESC

**用途:**了解哪些转化操作正在触发、价值分布情况


地理位置效果

SELECT
    geographic_view.country_criterion_id,
    geographic_view.location_type,
    campaign.name,
    metrics.impressions,
    metrics.clicks,
    metrics.cost_micros,
    metrics.conversions
FROM geographic_view
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.cost_micros DESC

**用途:**地理位置出价调整、位置定位审计


设备效果

SELECT
    campaign.name,
    segments.device,
    metrics.impressions,
    metrics.clicks,
    metrics.cost_micros,
    metrics.conversions,
    metrics.average_cpc
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ORDER BY campaign.name, segments.device

**用途:**设备出价调整、移动设备与桌面设备效果分析


账户级摘要

SELECT
    customer.id,
    customer.descriptive_name,
    metrics.cost_micros,
    metrics.impressions,
    metrics.clicks,
    metrics.conversions,
    metrics.conversions_value
FROM customer
WHERE segments.date DURING LAST_30_DAYS

**用途:**账户概览、高管报告


日期范围参考

关键字含义
YESTERDAY仅昨天
TODAY仅今天
LAST_7_DAYS最近 7 天
LAST_14_DAYS最近 14 天
LAST_30_DAYS最近 30 天
THIS_MONTH本月至今
LAST_MONTH上一个日历月
THIS_WEEK_MON_TODAY本周(周一至今天)

重要字段说明

微单位转换

API 以微单位返回金额(1,000,000 = $1):

50000000 micros = $50.00
1234567 micros = $1.23

向用户显示时,始终除以 1,000,000。

印象份额以小数形式返回

API 以**小数(0.0 - 1.0)**形式返回印象份额,而非百分比:

  • API 值 0.2464 = 实际印象份额 24.64%
  • 显示时始终乘以 100
指标需要按日期细分

任何包含 metrics.* 字段的查询都必须包含 WHERE segments.date 子句。否则查询将失败。

展示份额仅适用于搜索广告系列和 PMax 广告系列

search_impression_share、search_budget_lost_impression_share 和 search_rank_lost_impression_share 仅适用于搜索广告系列和 Performance Max 广告系列。

AND 与 OR

GAQL 不支持 OR。请改用 IN:

-- Wrong
WHERE campaign.status = 'ENABLED' OR campaign.status = 'PAUSED'

-- Correct
WHERE campaign.status IN ('ENABLED', 'PAUSED')

何时加载其他技能

技能适用场景
google-ads-query在账号中运行这些模板并将结果导出为 CSV——本技能提供模板,该技能负责运行
change-history-checker查询“何时发生了哪些更改”——这类查询需要有限的日期范围(90 天 / 30 天)和一个这些通用模板未包含的 LIMIT
impression-share-diagnostics解读展示份额查询——搜索 IS、预算流失 IS 和排名流失 IS 的根因分析都在该技能中

随着自身需求超出范围,多个技能会调用这些模板——underspending-investigation、budget-recommendation-calculator 和 mcc-hack-audit 都会在自定义 GAQL 时指向此处。

评论

支持 Markdown