google-ads-pmax
Installation
SKILL.md
Google Ads PMax
Read first:
google-ads/references/operator-thesis.mdgoogle-ads/references/intent-map.mdgoogle-ads/references/query-patterns.mdgoogle-ads/references/structure-playbook.mdgoogle-ads/references/benchmarks.mdgoogle-ads/references/deliverable-templates.md
Read workspace if available:
workspace/ads/account.mdworkspace/ads/goals.mdworkspace/ads/intent-map.mdworkspace/ads/findings.mdworkspace/ads/change-log.mdworkspace/ads/learnings.md
Data Acquisition
Connected Mode (MCP available)
Pull via the search tool on google-ads-mcp:
Primary: PMax campaign performance:
SELECT
campaign.name,
campaign.status,
metrics.impressions,
metrics.clicks,
metrics.cost_micros,
metrics.conversions,
metrics.conversions_value,
metrics.cost_per_conversion
FROM campaign
WHERE campaign.advertising_channel_type = 'PERFORMANCE_MAX'
AND campaign.status = 'ENABLED'
AND segments.date DURING LAST_30_DAYS
Primary: Asset group performance:
SELECT
campaign.name,
asset_group.name,
asset_group.status,
metrics.impressions,
metrics.clicks,
metrics.cost_micros,
metrics.conversions
FROM asset_group
WHERE campaign.advertising_channel_type = 'PERFORMANCE_MAX'
AND segments.date DURING LAST_30_DAYS
Supplementary: Compare with Search campaign performance (cannibalization check):
SELECT
campaign.name,
campaign.advertising_channel_type,
metrics.impressions,
metrics.clicks,
metrics.cost_micros,
metrics.conversions,
metrics.cost_per_conversion
FROM campaign
WHERE campaign.status = 'ENABLED'
AND segments.date DURING LAST_30_DAYS
ORDER BY metrics.cost_micros DESC
See data/gaql-recipes.md for additional queries.
Export Mode (no MCP)
Ask the user for:
- PMax campaign metrics
- Asset group list with performance
- Search campaign performance (for comparison)
- Any listing group or audience signal notes
Core Questions
- Is PMax cannibalizing branded or clean high-intent traffic?
- Is it helping discover net-new signal, or just absorbing existing demand?
- What can we infer about intent quality despite limited visibility?
- What should be protected outside PMax?
- What should be fixed in feeds, exclusions, or surrounding structure?
Process
- Announce mode (connected/export).
- Pull PMax and Search campaign data.
- Compare PMax vs. Search on shared conversion actions.
- Look for branded cannibalization signals.
- Assess asset group quality.
- Attempt PMax query visibility recovery using Steps 5/5b from the shared retrieval ladder (
data/search-term-retrieval.md). - Separate direct evidence from inference. Query rows from PMax are useful, but they do not automatically carry the same term-level cost / CPA detail as classic Search reports.
- Identify what should be protected in dedicated Search campaigns.
Draft Output
PMax analysis typically does not produce its own draft type — its findings feed into:
- Structure drafts (if PMax is cannibalizing, recommend brand exclusions or campaign restructure)
- Negative drafts (if account-level negatives can help contain PMax)
- Budget drafts (if PMax is absorbing budget that should go to proven Search campaigns)
When PMax-specific actions are needed, use the structure draft template and note the PMax context.
Always update workspace memory:
workspace/ads/findings.md— PMax observations (inference vs. direct evidence)workspace/ads/learnings.md— what we learned about PMax behavior in this account
Output Format
Use operator summary, then add:
- Cannibalization risks (with evidence level)
- Useful signal PMax may still be surfacing
- What should be protected in Search or other buckets
- What is direct evidence vs inference
Rules
- Treat PMax as useful but not self-explanatory.
- Look for contamination before celebrating efficiency.
- Protect clean branded and high-intent buckets when needed.
- Be explicit about what is inference versus direct evidence.
- If visibility is weak, say that clearly instead of pretending certainty.
Related skills