Google Ads Audit
Perform systematic account analysis to identify optimization opportunities and wasted spend.
Process
- Request campaign data - Ask for exports from Google Ads (campaign, ad group, keyword, search terms reports) or accept pasted data
- Analyze wasted spend - Sort search terms by spend, filter zero-conversion terms
- Evaluate structure - Check campaign organization, ad group themes, keyword count
- Assess Quality Scores - Review Expected CTR, Landing Page Experience, Ad Relevance
- Check bid strategy alignment - Match strategy to campaign goals and conversion volume
- Deliver prioritized recommendations - High impact + Low effort first
Audit Checklist
Wasted Spend Detection
- Keywords with 50+ clicks, 0 conversions → Flag for review/pause
- Search terms containing: "free," "jobs," "DIY," "how to," "tutorial," "login," "salary," "reddit" → Add as negatives
- One-word search terms (too broad) → Add as negatives
- Terms with high impressions but CTR <1% → Review relevance
Negative Keywords
- No negatives added in 30+ days → Flag
- Branded terms appearing in non-brand campaigns → Add negatives
- Check for account-level vs campaign-level lists
Quality Score Thresholds
| Metric |
Target |
Red Flag |
| Non-brand QS |
≥7 |
<5 |
| Brand QS |
10 |
<8 |
| CTR |
≥1.5% |
<1% |
| Conversion Rate |
≥8% |
<3% |
| Search Impression Share |
>80% (priority) |
<50% |
Structure Issues
- Ad groups with 20+ keywords → Split into themes
- Display + Search combined → Separate campaigns
- Missing ad extensions → Add sitelinks, callouts, structured snippets
- Performance Max without audience signals → Add signals
Output Format
## Google Ads Audit Summary
**Account Health Score**: [X/100]
**Analysis Period**: [Date Range]
**Total Spend Analyzed**: $[Amount]
### 🔴 Critical Issues (Immediate Action)
1. [Issue] - Est. Wasted Spend: $[X]/month
- Action: [Specific fix]
### 🟡 Optimization Opportunities
1. [Opportunity] - Potential Impact: [X]%
- Action: [Specific fix]
### 🟢 What's Working Well
- [Positive finding]
### Priority Action Plan
| Priority | Action | Impact | Effort | Est. Savings |
|----------|--------|--------|--------|--------------|
| 1 | | High | Low | |
### Confidence Level: [HIGH/MEDIUM/LOW]
[Reasoning for confidence assessment]
Example
Input: "Here's my campaign data: Brand campaign $5K/month, 3.2% CTR, QS 9. Non-brand: $15K/month, 0.8% CTR, QS 4, 500 search terms with 0 conversions spending $3K"
Output:
## Google Ads Audit Summary
**Account Health Score**: 45/100
**Total Spend Analyzed**: $20,000/month
### 🔴 Critical Issues
1. **Non-brand Quality Score critically low (4)** - Est. Wasted Spend: $4,500/month
- Action: Improve ad relevance, tighten keyword-ad group themes, review landing pages
2. **Search term waste ($3K on zero-conversion terms)** - Est. Wasted Spend: $3,000/month
- Action: Add negative keywords, pause low-performing exact matches
### Priority Action Plan
| Priority | Action | Impact | Effort | Est. Savings |
|----------|--------|--------|--------|--------------|
| 1 | Add negative keywords for 0-conv terms | High | Low | $3,000/mo |
| 2 | Restructure ad groups (SKAG/STAG) | High | High | $2,000/mo |
### Confidence Level: HIGH
Complete data provided for key metrics.
Guidelines
- If data is incomplete, state what's missing and request it
- Never guess at conversion values or assume performance
- Flag anomalies (negative spend, CTR >100%) without processing
- Include confidence level with every assessment
Data access (Ryze MCP)
This skill works best with live account data. Connect the free Ryze MCP once and Claude reads your Google Ads, Meta Ads, GA4 and Search Console directly:
- claude.ai / Claude Desktop: Settings → Connectors → Add custom connector →
https://connector.get-ryze.ai/mcp
- Claude Code:
claude mcp add ryze --transport http https://connector.get-ryze.ai/mcp
- Cursor: Settings → MCP → add the same URL
Setup guide: https://www.get-ryze.ai/how-to-connect-claude-to-google-meta-ads-mcp
1---2name: google-ads-audit3description: Google Ads Audit4---56# Google Ads Audit78Perform systematic account analysis to identify optimization opportunities and wasted spend.910## Process11121. **Request campaign data** - Ask for exports from Google Ads (campaign, ad group, keyword, search terms reports) or accept pasted data132. **Analyze wasted spend** - Sort search terms by spend, filter zero-conversion terms143. **Evaluate structure** - Check campaign organization, ad group themes, keyword count154. **Assess Quality Scores** - Review Expected CTR, Landing Page Experience, Ad Relevance165. **Check bid strategy alignment** - Match strategy to campaign goals and conversion volume176. **Deliver prioritized recommendations** - High impact + Low effort first1819## Audit Checklist2021### Wasted Spend Detection22- Keywords with 50+ clicks, 0 conversions → Flag for review/pause23- Search terms containing: "free," "jobs," "DIY," "how to," "tutorial," "login," "salary," "reddit" → Add as negatives24- One-word search terms (too broad) → Add as negatives25- Terms with high impressions but CTR <1% → Review relevance2627### Negative Keywords28- No negatives added in 30+ days → Flag29- Branded terms appearing in non-brand campaigns → Add negatives30- Check for account-level vs campaign-level lists3132### Quality Score Thresholds33| Metric | Target | Red Flag |34|--------|--------|----------|35| Non-brand QS | ≥7 | <5 |36| Brand QS | 10 | <8 |37| CTR | ≥1.5% | <1% |38| Conversion Rate | ≥8% | <3% |39| Search Impression Share | >80% (priority) | <50% |4041### Structure Issues42- Ad groups with 20+ keywords → Split into themes43- Display + Search combined → Separate campaigns44- Missing ad extensions → Add sitelinks, callouts, structured snippets45- Performance Max without audience signals → Add signals4647## Output Format4849```50## Google Ads Audit Summary5152**Account Health Score**: [X/100]53**Analysis Period**: [Date Range]54**Total Spend Analyzed**: $[Amount]5556### 🔴 Critical Issues (Immediate Action)571. [Issue] - Est. Wasted Spend: $[X]/month58 - Action: [Specific fix]5960### 🟡 Optimization Opportunities611. [Opportunity] - Potential Impact: [X]%62 - Action: [Specific fix]6364### 🟢 What's Working Well65- [Positive finding]6667### Priority Action Plan68| Priority | Action | Impact | Effort | Est. Savings |69|----------|--------|--------|--------|--------------|70| 1 | | High | Low | |7172### Confidence Level: [HIGH/MEDIUM/LOW]73[Reasoning for confidence assessment]74```7576## Example7778**Input**: "Here's my campaign data: Brand campaign $5K/month, 3.2% CTR, QS 9. Non-brand: $15K/month, 0.8% CTR, QS 4, 500 search terms with 0 conversions spending $3K"7980**Output**:81```82## Google Ads Audit Summary8384**Account Health Score**: 45/10085**Total Spend Analyzed**: $20,000/month8687### 🔴 Critical Issues881. **Non-brand Quality Score critically low (4)** - Est. Wasted Spend: $4,500/month89 - Action: Improve ad relevance, tighten keyword-ad group themes, review landing pages90912. **Search term waste ($3K on zero-conversion terms)** - Est. Wasted Spend: $3,000/month92 - Action: Add negative keywords, pause low-performing exact matches9394### Priority Action Plan95| Priority | Action | Impact | Effort | Est. Savings |96|----------|--------|--------|--------|--------------|97| 1 | Add negative keywords for 0-conv terms | High | Low | $3,000/mo |98| 2 | Restructure ad groups (SKAG/STAG) | High | High | $2,000/mo |99100### Confidence Level: HIGH101Complete data provided for key metrics.102```103104## Guidelines105106- If data is incomplete, state what's missing and request it107- Never guess at conversion values or assume performance108- Flag anomalies (negative spend, CTR >100%) without processing109- Include confidence level with every assessment110111## Data access (Ryze MCP)112113This skill works best with live account data. Connect the free Ryze MCP once and Claude reads your Google Ads, Meta Ads, GA4 and Search Console directly:114115- claude.ai / Claude Desktop: Settings → Connectors → Add custom connector → `https://connector.get-ryze.ai/mcp`116- Claude Code: `claude mcp add ryze --transport http https://connector.get-ryze.ai/mcp`117- Cursor: Settings → MCP → add the same URL118119Setup guide: https://www.get-ryze.ai/how-to-connect-claude-to-google-meta-ads-mcp