Agent SkillsTheMattBerman/google-ads-copilot › google-ads-intent-map

google-ads-intent-map

GitHub

基于Google Ads搜索词和投放数据,构建或更新意图地图。支持MCP自动拉取或手动导出模式,对搜索词进行聚类并划分为购买、对比等意图类别,辅助广告策略优化。

skills/google-ads-intent-map/SKILL.md TheMattBerman/google-ads-copilot

Trigger Scenarios

需要分析Google Ads搜索词意图 构建或更新广告意图映射表 从广告账户获取搜索词数据进行聚类

Install

npx skills add TheMattBerman/google-ads-copilot --skill google-ads-intent-map -g -y
More Options

Use without installing

npx skills use TheMattBerman/google-ads-copilot@google-ads-intent-map

指定 Agent (Claude Code)

npx skills add TheMattBerman/google-ads-copilot --skill google-ads-intent-map -a claude-code -g -y

安装 repo 全部 skill

npx skills add TheMattBerman/google-ads-copilot --all -g -y

预览 repo 内 skill

npx skills add TheMattBerman/google-ads-copilot --list

SKILL.md

Frontmatter
{
    "name": "google-ads-intent-map",
    "description": "Build or update a Google Ads Intent Map from search terms, campaign data, and account context. Pulls live data via MCP or works with manual exports. Produces structure drafts when intent classes need separation."
}

Google Ads Intent Map

Read first:

  • google-ads/references/operator-thesis.md
  • google-ads/references/intent-map.md
  • google-ads/references/query-patterns.md
  • google-ads/references/deliverable-templates.md

Read workspace if available:

  • workspace/ads/account.md
  • workspace/ads/goals.md
  • workspace/ads/intent-map.md
  • workspace/ads/queries.md
  • workspace/ads/winners.md
  • workspace/ads/learnings.md

Data Acquisition

Connected Mode (MCP available)

Pull via the search tool on google-ads-mcp:

Primary: All search terms for clustering — last 30 days:

SELECT
  search_term_view.search_term,
  campaign.name,
  campaign.advertising_channel_type,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions,
  metrics.conversions_value,
  metrics.all_conversions
FROM search_term_view
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.impressions DESC
LIMIT 1000

Retrieval ladder — if the primary query returns no rows, follow the shared retrieval ladder in data/search-term-retrieval.md. In pmax-fallback mode, use rows for clustering but note that performance metrics are unavailable for intent-class profiling. In limited mode, clustering is blocked — request a UI export.

Supplementary: Campaign and ad group structure (for routing analysis):

SELECT
  campaign.name,
  campaign.advertising_channel_type,
  ad_group.name,
  ad_group.status,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions
FROM ad_group
WHERE campaign.status = 'ENABLED'
  AND ad_group.status = 'ENABLED'
  AND segments.date DURING LAST_30_DAYS
ORDER BY campaign.name, ad_group.name

See data/gaql-recipes.md for additional queries.

Date Range Fallback

If LAST_30_DAYS returns too few terms for meaningful clustering (<20 terms), fall back to LAST_90_DAYS, then all-time. Intent mapping benefits from volume — more search terms means better clustering. Always state the date range used.

Export Mode (no MCP)

Ask the user for:

  • Search Terms report: last 30 days, all terms (not just top spenders)
  • Include: Search term, Campaign, Ad group, Impressions, Clicks, Cost, Conversions, Conv. value
  • Campaign names are essential for routing analysis

See data/export-formats.md for recommended format.


Process

  1. Announce mode (connected/export).
  2. In connected mode, run the shared retrieval ladder (data/search-term-retrieval.md). Report retrieval_mode in the output header.
  3. If pmax-fallback, use rows for clustering but note that performance profiling is unavailable. If limited, clustering is blocked — request a UI export.
  4. Load existing Intent Map from workspace/ads/intent-map.md if it exists.
  5. Identify recurring query clusters and modifiers across all terms.
  6. Classify clusters into intent classes:
    • Buyer — high commercial intent, ready to convert
    • Comparison — evaluating options, not yet committed
    • Informational — learning, researching, no purchase signal
    • Navigational — looking for a specific brand/page
    • Branded — searching for your brand specifically
    • Junk — no plausible path to conversion
  7. For each class: note representative queries, performance profile, and current routing (which campaign/ad group they land in).
  8. Separate high-confidence signals from ambiguous ones.
  9. Infer structural implications — which classes are incorrectly sharing optimization buckets?
  10. Build or update workspace/ads/intent-map.md.
  11. Use the operator summary template when presenting results.

Always Answer

  • What query patterns signal a likely buyer?
  • What patterns signal weak or misleading intent?
  • What traffic types should never be optimized together?
  • What language repeats among likely winners?
  • What should be cut, isolated, or tested next?
  • Where is intent mixing causing structural problems?

Draft Output

Structure Draft

Trigger: Two or more distinct intent classes are sharing a single campaign or ad group, AND the performance gap between them is significant (e.g., 2x+ CPA difference, or one class converts and the other doesn't).

Create a draft using drafts/templates/structure-draft.md:

  • Write to workspace/ads/drafts/YYYY-MM-DD-[account-slug]-structure.md
  • Specify exactly which intent classes to separate, which campaigns/ad groups to split
  • Include keyword lists or patterns that should route to each new bucket
  • Update workspace/ads/drafts/_index.md

Negative Draft (secondary)

Trigger: Intent Map reveals a clear junk class that should be excluded account-wide.

Create using drafts/templates/negative-draft.md if the junk class is better solved by exclusion than by structure.

Always update workspace memory:

  • workspace/ads/intent-map.md — the primary deliverable. Rebuild or update the map.
  • workspace/ads/queries.md — notable clusters
  • workspace/ads/findings.md — strategic observations about intent routing

Output Shape

  1. Account Status block — account name, CID, status, date range used, tracking confidence, mode
  2. Data summary (terms analyzed, date range)
  3. Intent Map (classes with representative queries, performance, current routing)
  4. Routing problems (intent classes sharing wrong buckets)
  5. Structural implications (what should be separated)
  6. Emerging patterns (new intent classes forming)
  7. Confidence assessment per class
  8. Drafts created (with paths and summaries)
  9. Memory updates

Rules

  • Do not confuse underperformance with irrelevance.
  • Do not recommend negatives where isolation is the better move.
  • Prefer pattern interpretation over checklist regurgitation.
  • The Intent Map is the most strategic artifact in the workspace. Treat updates seriously — it compounds across every other skill.
  • When in doubt between "exclude" and "isolate," prefer isolation. You can always exclude later. You can't un-exclude query data you never saw.

Version History

  • 2c253ee Current 2026-07-25 07:33

Same Skill Collection

google-ads/SKILL.md
skills/google-ads-apply/SKILL.md
skills/google-ads-audit/SKILL.md
skills/google-ads-budget/SKILL.md
skills/google-ads-connect/SKILL.md
skills/google-ads-daily/SKILL.md
skills/google-ads-draft-summary/SKILL.md
skills/google-ads-landing-review/SKILL.md
skills/google-ads-negatives/SKILL.md
skills/google-ads-plan/SKILL.md
skills/google-ads-pmax/SKILL.md
skills/google-ads-rsas/SKILL.md
skills/google-ads-search-terms/SKILL.md
skills/google-ads-structure/SKILL.md
skills/google-ads-tracking/SKILL.md

Metadata

Files
0
Version
2c253ee
Hash
967d6e01
Indexed
2026-07-25 07:33

ホーム - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-22 06:16
浙ICP备14020137号-1 $お客様$