agentleFS
Synter-Media-AISynter-Media-AI/free-skills/skills/performance-max-optimizer/SKILL.md

performance-max-optimizer

Skill4 starsChanged 6 months agoMITView on GitHub

Optimize Google Ads Performance Max campaigns including asset groups, audience signals, search term insights, and channel allocation. Use when managing PMax campaigns, analyzing asset performance, configuring audience signals, or optimizing product feeds.

The file

Show its rules and text

We split this skill into the rules it gives an agent

13 rules. About 0 are common, 13 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈13

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Keep at least 3 headlines, 1 long headline, 2 descriptions as BEST/GOOD

    line 91
  2. Distinctive:

    Never remove all assets of a type simultaneously

    line 92
  3. Distinctive:

    Create a new list: "PMax - Irrelevant Queries"

    line 139
  4. Distinctive:

    Add identified irrelevant terms

    line 140
  5. Distinctive:

    After adding negatives, wait 7-14 days and compare:

    line 152
  6. Distinctive:

    Create custom segments based on:

    line 164
  7. Distinctive:

    Create 2-3 keyword-based segments (high-intent purchase terms)

    line 173
  8. Distinctive:

    Create 1-2 URL-based segments (competitor websites, review sites)

    line 174
  9. Distinctive:

    Keep segments at 50-100 terms/URLs each

    line 175
  10. Distinctive:

    Add as supplementary signals (not primary):

    line 189
  11. Distinctive:

    After 30 days, check Insights tab:

    line 196
  12. Distinctive:

    Use the Insights tab or GAQL to approximate channel distribution:

    line 205
  13. Distinctive:

    Search terms showed 8% irrelevant traffic → added 45 account-level negatives

    line 325

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Performance Max Optimizer

Comprehensive optimization toolkit for Google Ads Performance Max (PMax) campaigns. Covers asset group strategy, search term insights extraction, audience signal configuration, asset performance interpretation, channel allocation analysis, and listing group optimization.

Capabilities

  1. Asset Group Optimization - Structure asset groups, meet minimum requirements, and maximize ad strength
  2. Search Term Insights - Extract search queries, identify wasteful traffic, and apply negatives
  3. Audience Signals - Configure custom segments, interests, and demographics for optimal targeting
  4. Asset Performance Analysis - Interpret Low/Good/Best ratings and prioritize replacements
  5. Channel Allocation - Analyze spend distribution across Search, Display, YouTube, Shopping, and Discover
  6. Listing Group Optimization - Structure product groups and optimize feed attributes

Asset Requirements Reference

Minimum and Maximum Assets per Asset Group

Asset TypeMinimumMaximumCharacter LimitBest Practice
Headlines31530 charsProvide 10-15 for variety
Long Headlines1590 charsProvide 4-5
Descriptions2590 charsProvide 4-5
Images (Landscape)1201.91:1 ratioProvide 5+ unique
Images (Square)1201:1 ratioProvide 5+ unique
Images (Portrait)0204:5 ratioProvide 3+ for mobile
Logos (Square)151:1, min 128×128Provide 2-3
Logos (Landscape)054:1 ratioProvide 1-2
Videos0510s+ (YouTube)Provide 2-3 or Google auto-generates
Business Name1125 charsRequired
Final URL11-Required
Call to Action01Preset list"Automated" recommended

Ad Strength Ratings

RatingMeaningAction
PoorSignificantly below best practicesAdd more assets immediately
AverageMeets minimums but room to improveAdd diverse assets
GoodSolid asset varietyOptimize underperformers
ExcellentMaximized asset diversityMaintain and iterate

Ad Strength improvement checklist:

  1. ☐ 10+ unique headlines (avoid repetition)
  2. ☐ 4+ descriptions with different angles (features, benefits, urgency, social proof)
  3. ☐ 5+ landscape images (different scenes, angles, use cases)
  4. ☐ 5+ square images
  5. ☐ 3+ portrait images
  6. ☐ At least 1 custom video (15-30 seconds)
  7. ☐ Headlines include keywords, brand name, and CTAs

Workflows

Workflow 1: Asset Performance Analysis

Step 1: Pull asset performance data via GAQL

SELECT
  asset.id,
  asset.name,
  asset.type,
  asset.text_asset.text,
  asset_group_asset.performance_label,
  asset_group_asset.status
FROM asset_group_asset
WHERE
  campaign.advertising_channel_type = 'PERFORMANCE_MAX'
  AND asset_group_asset.status = 'ENABLED'
ORDER BY asset.type

Step 2: Categorize by performance label

LabelMeaningAction
BESTTop performer in its categoryKeep, create variations
GOODPerforms wellKeep, monitor
LOWUnderperforming vs peersReplace within 2-4 weeks
LEARNINGInsufficient dataWait 2+ weeks
PENDINGNot yet evaluatedWait for data
UNSPECIFIEDNo label availableCheck asset group setup

Step 3: Replacement strategy

  • Replace LOW assets with variations of BEST assets
  • Keep at least 3 headlines, 1 long headline, 2 descriptions as BEST/GOOD
  • Never remove all assets of a type simultaneously
  • Replace 1-2 assets at a time, wait 2 weeks between changes

Step 4: A/B variant creation

For each BEST headline, create 2-3 variations:

BEST: "Free Shipping on All Orders"
Variant A: "Ships Free — No Minimum"
Variant B: "Free Delivery on Every Purchase"
Variant C: "Zero Shipping Costs, Always"

Workflow 2: Search Term Insights Extraction

Step 1: Access Search Term Insights

Navigate to: Campaign → Insights → Search terms

Or via GAQL (limited — Google restricts raw search term data for PMax):

SELECT
  campaign.name,
  search_term_insight.category_label,
  metrics.clicks,
  metrics.impressions,
  metrics.conversions,
  metrics.cost_micros
FROM search_term_insight
WHERE
  campaign.advertising_channel_type = 'PERFORMANCE_MAX'
  AND segments.date DURING LAST_30_DAYS

Step 2: Identify wasteful categories

Flag search term categories where:

  • Conversion rate < 50% of campaign average
  • CPA > 2× campaign target
  • High clicks but zero conversions

Step 3: Apply account-level negatives

PMax supports account-level negative keywords (not campaign-level):

  1. Go to Admin → Account settings → Negative keyword lists
  2. Create a new list: "PMax - Irrelevant Queries"
  3. Add identified irrelevant terms
  4. Apply list to the PMax campaign

Common PMax negative keyword categories:

  • Job-related: "jobs", "careers", "salary", "hiring"
  • Informational: "what is", "how to", "definition", "wiki"
  • Free/cheap: "free", "cheap", "discount code", "coupon"
  • Competitor brand terms (if not targeting them intentionally)
  • DIY: "diy", "tutorial", "template", "homemade"

Step 4: Monitor impact

After adding negatives, wait 7-14 days and compare:

  • Conversion rate change
  • CPA change
  • Impression share change (should not drop significantly)

Workflow 3: Audience Signal Configuration

Understanding audience signals (not audience targeting): PMax audience signals are suggestions, not restrictions. They guide the algorithm's initial targeting but PMax will expand beyond them. Stronger signals = faster learning.

Step 1: Configure custom segments

Create custom segments based on:

Signal TypeExampleBest For
Search terms"buy running shoes online"Purchase-intent audiences
URLscompetitor websitesCompetitor conquesting
Appscompetitor appsMobile-focused audiences

Recommended custom segment strategy:

  • Create 2-3 keyword-based segments (high-intent purchase terms)
  • Create 1-2 URL-based segments (competitor websites, review sites)
  • Keep segments at 50-100 terms/URLs each

Step 2: Add first-party data

Data SignalPrioritySetup
Customer Match (purchasers)CriticalUpload customer list → Existing customers
Customer Match (high-LTV)HighUpload top 20% customers by revenue
Website visitors (converters)HighGA4 audience → People who converted
Website visitors (all)MediumGA4 audience → All visitors
Cart abandonersHighGA4 audience → Add to cart, no purchase

Step 3: Layer interests and demographics

Add as supplementary signals (not primary):

  • Affinity audiences related to your product category
  • In-market audiences for related purchase categories
  • Demographic filters only if strong data supports exclusion

Step 4: Evaluate signal quality

After 30 days, check Insights tab:

  • Which audience segments are converting?
  • Is PMax expanding beyond your signals effectively?
  • Are the top converting audiences aligned with your signals?

Workflow 4: Channel Allocation Analysis

Step 1: Pull channel-level data

Use the Insights tab or GAQL to approximate channel distribution:

SELECT
  campaign.name,
  segments.ad_network_type,
  metrics.impressions,
  metrics.clicks,
  metrics.conversions,
  metrics.cost_micros
FROM campaign
WHERE
  campaign.advertising_channel_type = 'PERFORMANCE_MAX'
  AND segments.date DURING LAST_30_DAYS

Step 2: Assess allocation health

Typical healthy PMax distribution (e-commerce):

ChannelSpend %Conversion %Healthy?
Shopping40-60%50-70%Primary converter
Search15-25%15-25%Brand + generic queries
Display10-20%5-10%Awareness + retargeting
YouTube5-15%3-8%Awareness + consideration
Discover/Gmail3-8%2-5%Incremental reach

Step 3: Diagnose imbalanced allocation

ProblemSymptomsFix
Too much Display> 30% spend on Display, low conversion rateImprove audience signals, add more purchase-intent custom segments
Too much brand SearchHigh Search %, mostly brand queriesAdd brand terms as negatives at account level
Low Shopping< 30% on Shopping for e-commerceImprove product feed quality, add more product images
No YouTube0% YouTube spendAdd custom video assets (even 15-second)

Workflow 5: Product Feed Optimization (Shopping)

Step 1: Feed quality audit

AttributeImpactRecommendation
TitleCriticalInclude brand + product type + key attributes (color, size)
DescriptionHigh150-500 characters, include keywords naturally
ImagesCriticalHigh-res, white background, no text overlays
PriceCriticalMust match landing page exactly
GTIN/MPNHighInclude for product matching
Product typeMediumUse Google's taxonomy hierarchy
Custom labelsMediumUse for campaign segmentation (margin, seasonality, bestseller)

Step 2: Listing group structure

Organize products into logical groups for different asset groups:

Asset Group: "Premium Running Shoes"
└── Listing Group: Brand = Nike, Category = Running
    └── Audience Signal: "buy running shoes", competitor URLs

Asset Group: "Budget Athletic Shoes"
└── Listing Group: Price < $80, Category = Athletic
    └── Audience Signal: "affordable running shoes", price-comparison URLs

Asset Group: "Accessories"
└── Listing Group: Category = Shoe Accessories
    └── Audience Signal: "running accessories", complementary products

Step 3: Custom label strategy

Custom LabelValuesUse Case
custom_label_0"high_margin", "low_margin"Bid differently by profitability
custom_label_1"bestseller", "new", "clearance"Prioritize top products
custom_label_2"seasonal_spring", "evergreen"Adjust by season
custom_label_3"promo_active", "full_price"Align with promotions
custom_label_4"priority_1", "priority_2", "priority_3"General prioritization

Reference Data

PMax Performance Benchmarks by Industry

IndustryAvg ROASAvg CPAAvg Conversion Rate
E-commerce (apparel)4.5x$282.8%
E-commerce (electronics)3.8x$451.9%
E-commerce (home goods)5.2x$223.2%
Lead Gen (B2B SaaS)N/A$852.1%
Lead Gen (financial)N/A$1201.4%
Lead Gen (education)N/A$423.8%
Local servicesN/A$354.5%

PMax vs Standard Shopping Comparison

MetricPMax AvgStandard Shopping AvgDifference
ROAS4.2x3.8x+10.5%
Impression share65%55%+18.2%
New customer %35%25%+40%
CPC$0.85$0.72+18.1%
Conversion volumeHigherLower+15-25%

Examples

Example 1: E-commerce PMax Setup

Scenario: Online shoe retailer, $5K/day budget, 500+ SKUs.

Asset group structure (3 groups):

  1. "Men's Running" — Products: Men's running shoes. Signals: "buy men's running shoes", nike.com, competitor URLs. 12 headlines, 4 long headlines, 5 descriptions, 8 landscape images of men running.
  2. "Women's Athletic" — Products: Women's athletic shoes. Signals: "women's workout shoes", fitness app users. 12 headlines, 4 long headlines, 5 descriptions, 8 lifestyle images.
  3. "Accessories & Apparel" — Products: Socks, insoles, shorts. Signals: "running accessories", existing customer list. 10 headlines, 3 long headlines, 4 descriptions, 6 product images.

Result after 30 days:

  • ROAS: 4.8x (up from 3.2x on Standard Shopping)
  • 40% of conversions from new customers
  • Search terms showed 8% irrelevant traffic → added 45 account-level negatives

Example 2: Lead Gen PMax Optimization

Scenario: B2B SaaS, $150 target CPA, 200/month leads needed.

Problem: CPA at $220, mostly Display traffic with low quality.

Optimization steps:

  1. Added 5 custom segments with purchase-intent keywords
  2. Uploaded customer match list (500 existing customers)
  3. Added 3 custom videos showing product demo
  4. Added account-level negatives for "free", "jobs", "salary", competitor brands
  5. Created 2 asset groups: one for "Enterprise" signals, one for "SMB" signals

Result: CPA dropped to $145 in 3 weeks. Lead quality score (internal) improved 35%.

Example 3: Diagnosing PMax Cannibalizing Brand Search

Symptom: Brand Search campaign impressions dropped 60% after PMax launch.

Diagnosis:

  1. Checked Search Term Insights → 45% of PMax search queries were brand terms
  2. Brand CPA in PMax: $8 (cheap but not incremental)
  3. Non-brand CPA in PMax: $65 (real incremental cost)

Fix:

  1. Added brand terms as account-level negatives
  2. PMax impressions dropped 30% but conversion volume only dropped 5%
  3. Brand Search campaign recovered to pre-PMax levels
  4. Blended CPA improved as brand queries returned to cheaper Brand campaign

About this skill

Part of the Synter free skills collection — open-source agent skills for advertising, PPC, and marketing automation.

Want this skill (and 40+ more) running on autopilot against your live ad accounts? Try Synter — AI Agent Media Buyers that connect to Google, Meta, LinkedIn, TikTok, Reddit, Amazon, and 7+ more platforms.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.