Back to directory
Google Ads Claude skill

Keyword Performance Analyzer

Keyword Performance Analyzer is a Claude skill that audits Google Ads keywords. It queries keyword_view through the gaql action, estimates what low Quality Score costs you, sorts keywords into stars, bleeders and Quality Score victims, reviews match types and returns a bid adjustment queue.
Google AdsIncludes Sample Data4 files
Download Skill

What Keyword Performance Analyzer does

Keyword Performance Analyzer is a Claude skill that audits Google Ads keywords. It queries keyword_view through the gaql action, estimates what low Quality Score costs you, sorts keywords into stars, bleeders and Quality Score victims, reviews match types and returns a bid adjustment queue.

Use it to

  • Find keywords spending without converting
  • Estimate the cost of low Quality Score
  • Get bid increase and decrease recommendations

Example request

Hey Claude, I just added the "keyword-performance-analyzer" skill. Can you analyze my keyword performance and find Quality Score issues?

Keyword Performance Analyzer
SKILL.md
HOW_TO_USE.md
sample_input.json
expected_output.json
skillsgoogle-adsSKILL.md
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
# Keyword Performance Analyzer
 
Deep-dive into your keywords to find what's working, what's bleeding money, and where Quality Score is killing your efficiency.
 
## Core Philosophy
 
**Keywords are the foundation.** Bad keywords = bad account. Great keywords with poor QS = overpaying for every click.
 
**The 3 Keyword Questions:**
1. Which keywords are actually driving results?
2. Where is Quality Score costing me money?
3. What bid adjustments will improve efficiency?
 
---
 
## MCP Integration
 
### Required Data Pull
 
Run this GAQL query with the Google Ads MCP `gaql` action (resource: `keyword_view`):
 
```
SELECT
campaign.id,
campaign.name,
ad_group.id,
ad_group.name,
ad_group_criterion.keyword.text,
ad_group_criterion.keyword.match_type,
ad_group_criterion.negative,
metrics.impressions,
metrics.clicks,
metrics.cost_micros,
metrics.conversions,
metrics.conversions_value,
metrics.ctr,
metrics.historical_quality_score
FROM keyword_view
WHERE segments.date BETWEEN '{start_date}' AND '{end_date}'
AND ad_group_criterion.negative = FALSE
AND metrics.impressions > 0
ORDER BY metrics.cost_micros DESC
```
 
### Data Requirements
 
**From MCP Response:**
- `ad_group_criterion.keyword.text` - The keyword
- `ad_group_criterion.keyword.match_type` - BROAD, PHRASE, EXACT
- `metrics.historical_quality_score` - QS (1-10 scale)
- `metrics.impressions`, `metrics.clicks`, `metrics.cost_micros`
- `metrics.conversions`, `metrics.conversions_value`
- `metrics.ctr` - Click-through rate
 
**User Should Provide:**
- Target CPA or ROAS
- Date range (default: last 30 days)
- Minimum spend threshold for analysis (default: $10)
 
---
 
## Analysis Framework
 
### Tier 1: Quality Score Analysis
 
**QS Breakdown:**
 
| QS Range | Assessment | Priority |
|----------|------------|----------|
| 1-3 | Critical - Major cost penalty | Immediate |
| 4-5 | Poor - Significant penalty | High |
| 6-7 | Average - Room to improve | Medium |
| 8-10 | Good - Maintain | Low |
 
**QS Impact Calculation:**
```
Estimated CPC penalty = (10 - QS) Ɨ 10%
Example: QS 5 = ~50% higher CPCs than QS 10
```
 
**QS Improvement Levers:**
1. **Expected CTR** - Ad relevance, compelling copy
2. **Ad Relevance** - Keyword-ad alignment
3. **Landing Page Experience** - Page quality, load speed, relevance
 
---
 
### Tier 2: Performance Segmentation
 
**Keyword Categories:**
 
| Category | Criteria | Action |
|----------|----------|--------|
| Stars | Conv > 0, CPA < target, QS 7+ | Scale bids, add budget |
| Solid | Conv > 0, CPA at target | Maintain, test improvements |
| Potential | Good CTR, 0 conv, low spend | Give more budget/time |
| Bleeders | High spend, 0 conv | Pause or reduce bids |
| QS Victims | Good conv, QS < 6 | Fix QS to reduce CPA |
| Zombies | Low impressions, no activity | Evaluate relevance |
 
---
 
### Tier 3: Match Type Analysis
 
**Match Type Health Check:**
 
| Match Type | Ideal Use | Red Flags |
|------------|-----------|-----------|
| EXACT | High-intent, proven converters | Too few impressions |
| PHRASE | Balanced reach + control | High spend, low conv |
| BROAD | Discovery, volume | Bleeding on irrelevant terms |
 
**Match Type Migration Signals:**
- BROAD → PHRASE: Good conv but also waste in search terms
- PHRASE → EXACT: Consistent performer, want more control
- EXACT → Pause: No impressions, too restrictive
 
---
 
### Tier 4: Bid Optimization
 
**Bid Adjustment Framework:**
 
| Signal | Recommendation |
|--------|----------------|
| CPA 30%+ below target, limited by rank | Increase bid 15-20% |
| CPA at target, good volume | Maintain bid |
| CPA 10-30% above target | Decrease bid 10-15% |
| CPA 30%+ above target | Decrease bid 20-30% or pause |
| QS < 6 with high CPA | Fix QS before adjusting bid |
 
---
 
## Output Format
 
### Executive Summary
 
```
KEYWORD HEALTH SCORE: 🟢/🟔/šŸ”“
Keywords Analyzed: XXX
Period: [dates]
Avg Quality Score: X.X
Keywords with QS Issues: XX (XX%)
Estimated Monthly QS Penalty: $X,XXX
```
 
---
 
### Quality Score Report
 
**Critical QS Issues (QS 1-5):**
 
| Keyword | Match | QS | Impressions | CPA | Est. Penalty |
|---------|-------|-----|-------------|-----|--------------|
| [keyword] | EXACT | 4 | X,XXX | $XX | +XX% CPC |
| [keyword] | PHRASE | 3 | X,XXX | $XX | +XX% CPC |
 
**QS Improvement Priorities:**
 
1. **[Keyword]** (QS: 4)
- Issue: Low expected CTR
- Action: Test new ad copy with keyword in headline
- Potential savings: $XXX/month
 
2. **[Keyword]** (QS: 5)
- Issue: Landing page experience
- Action: Improve page load speed, add keyword relevance
- Potential savings: $XXX/month
 
---
 
### Performance Tiers
 
**Stars (Scale These):**
 
| Keyword | Conv | CPA | vs Target | QS | Recommendation |
|---------|------|-----|-----------|-----|----------------|
| [keyword] | XX | $XX | -XX% | 8 | Increase bid 15% |
 
**Bleeders (Fix or Pause):**
 
| Keyword | Spend | Conv | QS | Action |
|---------|-------|------|-----|--------|
| [keyword] | $XXX | 0 | 5 | Pause |
| [keyword] | $XXX | 0 | 7 | Reduce bid 30% |
 
**QS Victims (Fix QS First):**
 
| Keyword | Conv | CPA | QS | Potential CPA |
|---------|------|-----|-----|---------------|
| [keyword] | XX | $XX | 4 | $XX (if QS=8) |
 
---
 
### Match Type Recommendations
 
**Migrate to Exact:**
- [keyword] (PHRASE) - 5+ conversions, consistent performer
- [keyword] (BROAD) - Proven term, want bid control
 
**Consider Pausing:**
- [keyword] (EXACT) - 0 impressions in 30 days
- [keyword] (BROAD) - 80% of clicks from irrelevant terms
 
---
 
### Bid Adjustment Queue
 
**Increase Bids:**
 
| Keyword | Current Bid | Conv | CPA | Recommended |
|---------|-------------|------|-----|-------------|
| [keyword] | $X.XX | XX | $XX | $X.XX (+15%) |
 
**Decrease Bids:**
 
| Keyword | Current Bid | Conv | CPA | Recommended |
|---------|-------------|------|-----|-------------|
| [keyword] | $X.XX | X | $XX | $X.XX (-20%) |
 
---
 
### Quick Wins Summary
 
```
ACTION KEYWORDS EST. IMPACT
────────────────────────────────────────────────────────
Pause bleeders XX Save $X,XXX/mo
Fix QS issues XX Save $X,XXX/mo
Increase bids on stars XX +XX conv/mo
Migrate to exact match XX Better control
```
 
---
 
## Composability
 
**Chains from:**
- `search-term-gold-miner` - Promoted search terms become keywords to analyze
 
**Chains to:**
- `bid-strategy-auditor` - Keywords feed into bid strategy analysis
- `budget-allocation-optimizer` - Keyword efficiency informs budget moves
 
---
 
## Limitations
 
**I can assess:**
- Quality Score and its cost impact
- Keyword-level performance tiers
- Match type distribution health
- Bid adjustment opportunities
 
**I cannot assess:**
- QS component breakdown, unless you add `ad_group_criterion.quality_info.creative_quality_score`, `ad_group_criterion.quality_info.post_click_quality_score` and `ad_group_criterion.quality_info.search_predicted_ctr` to the GAQL query
- Search term quality within keyword (need search term report)
- Competitor keyword bids
- Incrementality of keyword conversions
 
**For deeper analysis, also run:**
- `search-term-gold-miner` for search term quality
- Landing page audit for QS improvements
 
---
 
## Quality Checklist
 
Before delivering analysis:
- [ ] QS distribution calculated
- [ ] Bleeders identified with spend impact
- [ ] Stars identified with scaling opportunity
- [ ] QS penalty estimated in dollars
- [ ] Bid recommendations include % change
- [ ] Match type migrations justified
- [ ] Composability next steps noted
Ready
UTF-8

How to use Keyword Performance Analyzer with Claude

  1. Download the ZIP from this page. It contains a keyword-performance-analyzer folder with SKILL.md, HOW_TO_USE.md, sample_input.json, expected_output.json. No account is needed to download it.
  2. Add the folder to Claude as a skill, or paste the contents of SKILL.md into a conversation.
  3. Connect the Google Ads MCP server so Claude can pull live data. Each server page has setup steps for Claude, ChatGPT, Claude Code, Cursor, Gemini CLI and Codex.
  4. Ask Claude for the task in plain language, like the example request above.

Frequently Asked Questions

Common questions about Keyword Performance Analyzer and how to use it with Claude.

The default query uses historical Quality Score. Claude can add the ad_group_criterion.quality_info fields to the GAQL query to see expected CTR, ad relevance and landing page experience.

Either order works. Search Term Gold Miner looks at the queries people typed; this skill looks at the keywords you bid on. Running both covers waste from both sides.

Click Download Skill on this page. You get a ZIP file with a keyword-performance-analyzer folder containing SKILL.md plus HOW_TO_USE.md, sample_input.json and expected_output.json. Downloading does not require an InsightfulPipe account.

Not to download or read it, and you can paste exported data into Claude. For Claude to pull live data, connect the Google Ads MCP server, which needs an InsightfulPipe plan. Plans start at $29.99/month with a 7-day free trial.

Ready to connect your data?

Join hundreds of agencies and brands using InsightfulPipe to connect marketing data to AI.

Start a free trial today.