Query, audit, and optimize Google Ads campaigns. Supports two modes: (1) API mode for bulk operations with google-ads Python SDK, (2) Browser automation mode for users without API access - just attach a browser tab to ads.google.com. Use when asked to check ad performance, pause campaigns/keywords, find wasted spend, audit conversion tracking, or optimize Google Ads accounts.
数据来源:ClawHub。 在 ClawSkills 查看
选择你使用的 Agent
方法一:命令行安装(推荐)
推荐(无需提前安装 clawhub)
npx clawhub@latest --dir ~/.claude/skills install google-ads或使用 clawhub CLI(需提前安装)
clawhub --dir ~/.claude/skills install google-ads⚠️ 需要 Node.js 18+,没有 Node?请使用下方方法二直接下载 ZIP。 安装 Node.js →
方法二:手动下载安装(无需 Node)
下载 ZIP,解压后将文件夹放到以下路径,重启 Agent 即可:
安装路径
~/.claude/skills/google-ads/💡解压后将文件夹放到上方路径,重启 Agent 即可生效
--- name: google-ads description: "Query, audit, and optimize Google Ads campaigns. Supports two modes: (1) API mode for bulk operations with google-ads Python SDK, (2) Browser automation mode for users without API access - just attach a browser tab to ads.google.com. Use when asked to check ad performance, pause campaigns/keywords, find wasted spend, audit conversion tracking, or optimize Google Ads accounts." metadata: { "openclaw": { "emoji": "📊", "requires": { "anyBins": ["python3"], "config": ["~/.google-ads.yaml"], }, }, } ---
Manage Google Ads accounts via API or browser automation.
Check which mode to use:
google-ads.yaml configured or GOOGLE_ADS_* env vars# Check for API config
ls ~/.google-ads.yaml 2>/dev/null || ls google-ads.yaml 2>/dev/null
If no config found, ask: "Do you have Google Ads API credentials, or should I use browser automation?"
---
Requirements: User logged into ads.google.com in browser
browser tool with profile="chrome"1. Navigate to: ads.google.com/aw/campaigns
2. Set date range (top right date picker)
3. Snapshot the campaigns table
4. Parse: Campaign, Status, Budget, Cost, Conversions, Cost/Conv
1. Navigate to: ads.google.com/aw/keywords
2. Click "Add filter" → Conversions → Less than → 1
3. Click "Add filter" → Cost → Greater than → [threshold, e.g., $500]
4. Sort by Cost descending
5. Snapshot table for analysis
1. Navigate to keywords or campaigns view
2. Check boxes for items to pause
3. Click "Edit" dropdown → "Pause"
4. Confirm action
1. Navigate to desired view (campaigns, keywords, etc.)
2. Click "Download" icon (top right of table)
3. Select format (CSV recommended)
4. File downloads to user's Downloads folder
For detailed browser selectors: See references/browser-workflows.md
---
Requirements: Google Ads API developer token + OAuth credentials
# Verify google-ads SDK
python -c "from google.ads.googleads.client import GoogleAdsClient; print('OK')"
# Check config
cat ~/.google-ads.yaml
from google.ads.googleads.client import GoogleAdsClient
client = GoogleAdsClient.load_from_storage()
ga_service = client.get_service("GoogleAdsService")
query = """
SELECT campaign.name, campaign.status,
metrics.cost_micros, metrics.conversions,
metrics.cost_per_conversion
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.cost_micros DESC
"""
response = ga_service.search(customer_id=CUSTOMER_ID, query=query)
query = """
SELECT ad_group_criterion.keyword.text,
campaign.name, metrics.cost_micros
FROM keyword_view
WHERE metrics.conversions = 0
AND metrics.cost_micros > 500000000
AND segments.date DURING LAST_90_DAYS
ORDER BY metrics.cost_micros DESC
"""
operations = []
for keyword_id in keywords_to_pause:
operation = client.get_type("AdGroupCriterionOperation")
operation.update.resource_name = f"customers/{customer_id}/adGroupCriteria/{ad_group_id}~{keyword_id}"
operation.update.status = client.enums.AdGroupCriterionStatusEnum.PAUSED
operations.append(operation)
service.mutate_ad_group_criteria(customer_id=customer_id, operations=operations)
For full API reference: See references/api-setup.md
---
Quick health check for any Google Ads account:
| Check | Browser Path | What to Look For | |-------|--------------|------------------| | Zero-conv keywords | Keywords → Filter: Conv<1, Cost>$500 | Wasted spend | | Empty ad groups | Ad Groups → Filter: Ads=0 | No creative running | | Policy violations | Campaigns → Status column | Yellow warning icons | | Optimization Score | Overview page (top right) | Below 70% = action needed | | Conversion tracking | Tools → Conversions | Inactive/no recent data |
---
When reporting findings, use tables:
## Campaign Performance (Last 30 Days)
| Campaign | Cost | Conv | CPA | Status |
|----------|------|------|-----|--------|
| Branded | $5K | 50 | $100| ✅ Good |
| SDK Web | $10K | 2 | $5K | ❌ Pause |
## Recommended Actions
1. **PAUSE**: SDK Web campaign ($5K CPA)
2. **INCREASE**: Branded budget (strong performer)
---
google-ads.yaml安装 Google Ads 后,可以对 AI 说这些话来触发它
Help me get started with Google Ads
Explains what Google Ads does, walks through the setup, and runs a quick demo based on your current project
Use Google Ads to query, audit, and optimize Google Ads campaigns
Invokes Google Ads with the right parameters and returns the result directly in the conversation
What can I do with Google Ads in my marketing & growth workflow?
Lists the top use cases for Google Ads, with example commands for each scenario
将技能文件夹放到 ~/.claude/skills/google-ads/ 目录(个人级,所有项目可用),或 .claude/skills/google-ads/(项目级)。重启 AI 客户端后,用 /google-ads 主动调用,或让 AI 根据上下文自动发现并使用。
Google Ads 支持 Claude、Cursor、OpenClaw,可与这些 AI 平台无缝集成,扩展其能力。
Google Ads 可免费安装使用。请查阅仓库了解许可证信息。
Query, audit, and optimize Google Ads campaigns. Supports two modes: (1) API mode for bulk operations with google-ads Python SDK, (2) Browser automation mode for users without API access - just attach a browser tab to ads.google.com. Use when asked to check ad performance, pause campaigns/keywords, find wasted spend, audit conversion tracking, or optimize Google Ads accounts.
Google Ads 属于「Marketing & Growth」分类,该分类的技能帮助 AI 智能体在此领域执行专业任务。
Automate my marketing & growth tasks using Google Ads
Identifies repetitive steps in your workflow and sets up Google Ads to handle them automatically