Paid Ads Autopilot
Manage Google Ads, Meta Ads, and Apple Search Ads seamlessly through Claude chat.
Paid Ads Autopilot
Manage Google Ads, Meta Ads, and Apple Search Ads from a single Claude chat window.
Inspired by Austin Lau's workflow at Anthropic, where he runs all paid search operations (search term mining, negative keywords, budget changes, RSA generation) through Claude + MCP. This plugin recreates that setup and extends it with account creation guides, multi-platform support, and a customizable playbook.

What it does
- Mine search terms across campaigns, flag wasted spend by category, and add negative keywords in batches
- Optimize budgets by analyzing impression share loss by day and recommending adjustments
- Generate RSA copy with 15 headlines + 4 descriptions, character-validated and ready for Google Ads Editor
- Audit ad copy for quality, compliance, and performance issues
- Find wasted spend across all campaigns (high CPA, zero-conversion ad groups, broad match bleed)
- Generate reports with 30-day performance trends, anomalies, and period-over-period comparison
- Set up from scratch with step-by-step guides for creating Google/Meta/Apple ad accounts and connecting via MCP
Skills
| Command | Description |
|---|---|
/mine-search-terms | Audit search terms, flag wasted spend, add negative keywords in batches |
/budget-optimizer | Analyze impression share by day, recommend and apply budget changes |
/rsa-generator | Generate Responsive Search Ad headlines + descriptions |
/spend-efficiency | Find optimization opportunities across all campaigns |
/ad-copy-audit | Audit active RSAs for quality, compliance, and performance |
/campaign-report | Generate a 30-day performance report with trends and anomalies |
/ads-setup | Walk through ad account creation and MCP connection from scratch |
Plus the ads-playbook skill: a customizable "brain" that stores your business context, CPA targets, wasted spend thresholds, and negative keyword taxonomy. Every other skill reads from it.
How it works
The plugin follows Austin's architecture:
- GAQL MCP (read): Google's official MCP server handles all queries (search terms, impression share, campaign data)
- Google Ads API (write): A separate connection handles mutations (adding negatives, changing budgets)
- Playbook-driven evaluation: Every search term gets scored against your custom methodology, not generic rules
- Human-in-the-loop: Nothing gets modified without your explicit approval. Changes are batched and confirmed individually.
From Austin's own replies: "You need to provide a strong base of examples on what to actually query. If you want to know why spend dropped you need to look at impression share as well but Claude might not know that out the gate." The playbook encodes these patterns.
Quick start
1. Install the plugin
In Claude Code:
# Clone the repo
git clone https://github.com/nichecata/paid-ads-autopilot.git
# Copy to your project's .claude directory
cp -r paid-ads-autopilot/skills your-project/.claude/skills/
cp paid-ads-autopilot/CLAUDE.md your-project/.claude/CLAUDE.md
In Cowork: Go to Plugins > Upload Plugin, and point it to this repo.
2. Connect your ad platform via MCP
Run /ads-setup and follow the prompts. Or set it up manually:
Google Ads (read-only, recommended to start):
Install Google's official GAQL MCP:
git clone https://github.com/googleads/google-ads-mcp.git
cd google-ads-mcp
pip install -r requirements.txt
Add to your .mcp.json:
{
"mcpServers": {
"google-ads": {
"command": "python",
"args": ["-m", "google_ads_mcp.server"],
"env": {
"GOOGLE_ADS_YAML_PATH": "/path/to/your/google-ads.yaml"
}
}
}
}
You need: a Developer Token, OAuth Client ID/Secret, Refresh Token, and Customer ID. The /ads-setup skill walks you through getting each one.
Google Ads (read + write):
For write operations (adding negatives, changing budgets), use the community MCP server with 29 tools:
pip install git+https://github.com/itallstartedwithaidea/google-ads-mcp.git
Meta Ads and Apple Search Ads: Full setup guides included in /ads-setup.
3. Customize your playbook
Edit skills/ads-playbook/SKILL.md and replace every [CUSTOMIZE] marker:
- Your business context and what you sell
- Target CPA and wasted spend thresholds
- Negative keyword categories with examples specific to your business
- Brand voice guidelines for RSA copy
The more specific you make it, the better every skill performs.
4. Run your first audit
/mine-search-terms audit my [campaign name] over the last 14 days
You'll get:
- A CSV with every flagged term, performance data, and reasoning
- An in-chat summary with top wasted spend terms and category breakdown
- An offer to add negatives in batches (grouped by ad group, applied at campaign level)
Playbook features
The ads-playbook skill includes more than just thresholds. It also encodes:
Negative keyword taxonomy (8 categories from Austin's actual output):
- Wrong intent
- Brand/bottom-funnel leakage
- Job/interview intent
- Research-only intent
- Comparison shoppers
- Developer/coding intent
- Too generic
- Fully off-theme
GAQL query intelligence: Patterns for diagnosing spend drops (check impression share), CPA increases (check conversion tracking), CTR drops (check ad position), and conversion drops (check tracking first).
Account health checklist (from Austin's thread replies):
- Conversion windows and repeat rates
- Primary vs secondary conversion actions
- Location targeting set to "Presence in"
- AI features OFF unless tested
- Final URL expansion OFF unless tested
- Automated assets OFF
- And more
Match type strategy: Start with exact/phrase. Graduate to broad only with solid negative keyword coverage.
AI enhancements policy: Auto-apply recommendations, auto-created assets, final URL expansion all OFF by default.
Brand bidding guidance: Manual CPC with bid cap often beats Smart Bidding on brand terms.
Safety
- Every write operation requires explicit "yes" from you
- Dry-run by default. Skills show what WOULD happen before doing anything
- Negative keywords are batched and each batch needs individual approval
- All cost values converted from micros to human-readable dollars
- CSV output for manual review before any changes
File structure
paid-ads-autopilot/
.claude-plugin/
marketplace.json # Plugin metadata
CLAUDE.md # Plugin overview and safety rules
README.md # This file
LICENSE # MIT
skills/
ads-playbook/SKILL.md # Customizable methodology (the "brain")
mine-search-terms/SKILL.md # Search term mining + negative keywords
budget-optimizer/SKILL.md # Impression share + budget recommendations
rsa-generator/SKILL.md # RSA copy generation
spend-efficiency/SKILL.md # Cross-campaign optimization finder
ad-copy-audit/SKILL.md # RSA quality/compliance audit
campaign-report/SKILL.md # 30-day performance report
ads-setup/SKILL.md # Account creation + MCP setup guides
Don't have an ad account yet?
The /ads-setup skill walks you through creating one from scratch:
- Google Ads: Account creation, Expert Mode setup, billing, MCC setup, conversion tracking, Developer Token, OAuth credentials, MCP connection
- Meta Ads: Facebook Page, Business Suite, ad account, Meta Pixel, domain verification, API credentials, MCP connection
- Apple Search Ads: Apple Developer account, Search Ads Advanced setup, API certificate, JWT generation, MCP connection
Credits
- Workflow inspired by Austin Lau (growth marketer at Anthropic)
- Austin's original thread with screenshots and technical details
- Google's official GAQL MCP
- Community read+write MCP
License
MIT