---
name: launch-pmax-feed-only-campaign
description: >-
  Launches a Performance Max campaign built deliberately WITHOUT creative assets or audience
  signals, so delivery concentrates on Shopping placements, automated Shopping bidding without
  Display/YouTube spread. Use it when a store has 30+ conversions/month, an approved feed, and wants
  PMax's value-based bidding with minimal creative investment and management overhead. It builds the
  campaign, an intentionally-empty asset group, listing-group filters, bidding, budget, and shared
  negatives, then polices channel leakage after launch. Do not use it below 30 conversions/month or
  when manual bid control matters (launch-standard-shopping-campaign), when quality creative exists
  and cross-channel reach is the goal (launch-pmax-full-assets-ecommerce-campaign), before the feed
  is healthy (set-up-and-optimize-product-feed), or for ongoing tuning of a live PMax
  (run-pmax-ecommerce-optimization-cycle).
---
# Launch a Feed-Only Performance Max Campaign

## Purpose
Stand up a PMax campaign whose only input is the product feed. Withholding every creative asset and
every audience signal is the mechanism: with nothing to render on Display, YouTube, Gmail, or
Discover, spend stays overwhelmingly on Shopping surfaces while the campaign still benefits from
PMax's automated value bidding. The discipline is in what is NOT added, one uploaded image quietly
converts the campaign into a cross-channel one.

## When to run
- 30+ conversions in the last 30 days (50+ before attaching a ROAS target).
- The account wants Shopping results with less hands-on management than Standard Shopping.
- No strong image/video assets exist, or creative production is not worth the effort yet.
- A segmentation project needs PMax bucket campaigns per tier (called from
  set-up-performance-based-shopping-segmentation).

## When NOT to run
- Under 30 conversions/month, or manual CPC control / query sculpting is needed ->
  launch-standard-shopping-campaign.
- Good creative exists and incremental cross-channel reach is the goal ->
  launch-pmax-full-assets-ecommerce-campaign.
- Feed unapproved, disapproval-heavy, or unoptimized -> set-up-and-optimize-product-feed first.
- Conversion value tracking unverified -> set-up-google-ads-conversion-tracking; value bidding on
  bad values compounds the error.
- The campaign already exists and needs tuning -> run-pmax-ecommerce-optimization-cycle.

## Prerequisites
- Merchant Center linked to Google Ads with an approved, current feed.
- Purchase conversion action with accurate values, verified.
- 30+ conversions in the trailing 30 days at the account (or migrating-campaign) level.
- The store's own brand terms listed, for exclusions and negatives.
- A daily budget figure and, if history supports it, a ROAS target derivation.

## Procedure
1. **Session guardrail.** Before the first Google Ads write of this session, call
   `gads_policy_guardrail` and honor its output.
2. **Plan the build.** Call `gads_plan_pmax_campaign` to assemble the full plan, naming (mark the
   campaign clearly as feed-only), geo/language, budget, bidding, listing-group scope, and present
   it to the user before any write.
3. **Create the budget (write).** `gads_create_budget` with the agreed daily amount. Preview first
   (validate_only=true default), apply only after explicit user approval.
4. **Create the campaign (write).** `gads_create_pmax_campaign` attached to the linked Merchant
   Center account, targeting only countries the store ships to. Preview first, apply after
   approval.
5. **Create the empty asset group (write).** `gads_create_asset_group` named to signal its
   feed-only intent. Add NO images, NO logos, NO headlines, NO descriptions, NO videos, the
   product listings from the feed are the creative. Preview first, apply after approval.
6. **Scope the listing groups (write).** With `gads_create_product_group` on the asset group's
   listing tree: either keep all products, or subdivide by custom label/brand/product type and
   include only this campaign's slice, excluding the rest. Preview first, apply after approval.
   Every product must be servable from exactly one PMax/Shopping campaign.
7. **Do NOT add audience signals.** Skip `gads_add_audience_signal` entirely, for a feed-only
   build the feed is the targeting, and signals invite delivery expansion. This is a deliberate
   omission, record it as such.
8. **HUMAN STEP (outside VigilDog), two UI toggles.** In the Google Ads UI: (a) turn Final URL
   expansion OFF (with it on, Google rewrites destinations and auto-creates assets, defeating the
   feed-only design); (b) add brand exclusions for the store's own brand and common misspellings so
   cheap brand traffic stays in dedicated brand campaigns. VigilDog has no tool for either control.
9. **Attach shared negatives (write).** `gads_create_shared_negative_set` (or reuse an existing
   list), seed it with known-waste queries from Search history (wrong-intent words, competitors not
   carried), then `gads_link_shared_set_to_campaign`. Preview first, apply after approval.
10. **Set bidding (write).** `gads_set_campaign_bidding_strategy`: Maximize Conversion Value with NO
    target for a fresh campaign; add a tROAS only when history supports it, set at roughly actual
    ROAS minus 10-20% (see Decision rules). Preview first, apply after approval.
11. **Pre-launch audit.** Read the build back (campaign, asset group, listing groups, bidding,
    negatives) and confirm the checklist with the user: zero assets, zero signals, URL expansion
    off (human-confirmed), brand exclusions in (human-confirmed), listing scope correct, budget
    right. Enable only after this passes.
12. **48-72h verification.** PMax ramps slowly; confirm via `gads_run_gaql_query` that the campaign
    is eligible, products serve, and impressions appear. No impressions after 72h usually means
    feed/eligibility, not bidding.
13. **Week-2+ leakage patrol.** Call `gads_get_pmax_channel_performance` to inspect the channel
    split. Shopping should dominate decisively. Material Display/YouTube spend means assets or
    signals crept in, or URL expansion is back on, audit the asset group and re-do step 8.
14. **Day-30 evaluation.** First real performance read after learning settles: ROAS vs
    expectation, channel mix still clean, then hand ongoing care to
    run-pmax-ecommerce-optimization-cycle.

## Decision rules
- **Volume gates:** 30+ conversions/month to run PMax at all; 50+ before setting a tROAS. Below 30,
  use Standard Shopping.
- **Per-campaign volume when segmenting:** each PMax bucket needs its own 30+ conversions/month, do not split into more buckets than the volume affords.
- **Initial target:** launch targetless; once 50+ conversions/month and stable, set tROAS at actual
  trailing ROAS minus 10-20%, tightening later in small steps.
- **Budget:** established accounts derive daily budget from revenue goal / target ROAS; new builds
  start with a test budget and scale after 2-4 weeks of data.
- **Feed-only integrity test:** in the channel report, Shopping placements should carry the
  overwhelming majority of spend. Sustained non-Shopping share = the build is no longer feed-only;
  find and remove the cause rather than tolerating it.
- **Learning discipline:** weeks 1-2 hands off; no target/budget swings during learning; first
  judgment at day 30.
- **Never convert this campaign into a full-assets one.** If cross-channel is wanted later, build a
  separate campaign via launch-pmax-full-assets-ecommerce-campaign, adding assets here changes its
  behavior wholesale and muddies history.

## Common failure modes
- **The helpful asset.** Someone adds "just a logo" and the campaign starts buying Display
  inventory. Any asset breaks the containment; the step 11 zero-asset check and step 13 patrol
  exist for this.
- **URL expansion left on.** Google expands destinations and generates assets on its own,
  reintroducing exactly the spread the build avoids. It defaults ON, the human toggle in step 8 is
  mandatory.
- **No brand exclusions.** PMax hoovers up brand queries, ROAS looks stellar, and it is all
  cannibalized traffic that Search brand campaigns bought cheaper. Exclude the brand at launch, and
  check for brand queries in week 1.
- **Audience signals "to help learning".** On a feed-only build they mostly help the campaign find
  non-Shopping inventory. Omit them.
- **Day-5 verdicts.** PMax needs 48+ hours to serve and 2-4 weeks to learn; early panic changes
  reset the clock. Calendar the day-30 review and sit on hands.
- **Over-segmentation.** Five tier buckets at 12 conversions each never exit learning. Respect the
  per-campaign volume gate.

## Related skills
- Before: set-up-and-optimize-product-feed, set-up-google-ads-conversion-tracking.
- Called by: set-up-performance-based-shopping-segmentation / set-up-scoring-model-segmentation
  (per-bucket builds).
- Alternatives: launch-standard-shopping-campaign (control, low volume),
  launch-pmax-full-assets-ecommerce-campaign (cross-channel with creative).
- After: run-pmax-ecommerce-optimization-cycle (ongoing tuning), scale-bids-and-budgets (growth
  moves once stable).
