Skip to main content

Home  /  Marketing Atlas  /  Reference  /  Channels  /  PMax Campaign Structure

Marketing Atlas · Channels

Shopify Performance Max campaign structure.
The working setup.

Attention

Most Shopify accounts run one campaign, branded included, catalog-wide. Google's wizard produces it. It produces a nice report and quiet budget bleed.

Get the structure built right →
Question

Why does most Shopify run the wrong PMax shape?

Answer

Google's wizard produces the catch-all. The operator never chose it. Building the structure below is the operator choosing a different default.

  • Wizard ships one PMax. Branded included. Catalog-wide. Looks fine on the dashboard.
  • No warning issued. The setup flow doesn't tell you PMax will claim branded.
  • Three months in. Reported 4x ROAS feels real. The leak stays invisible until somebody pulls the segmentation report.
§01 The structure, named

Five campaigns. Each one a job.

The structure costs more to manage than "one PMax handles everything." It is the only structure where reported numbers track the bank account.

Account
├── Brand Defense           [Standard Shopping or Search]
│     - Brand terms only
│     - Defensive bids
│     - $50-200/month
│
├── PMax: High-Margin SKUs  [Performance Max]
│     - Brand excluded
│     - custom_label_0 = margin tier "A"
│     - Budget sized to non-brand acquisition target
│
├── PMax: Low-Margin SKUs   [Performance Max]
│     - Brand excluded
│     - custom_label_0 = margin tier "B"
│     - Budget smaller; tested for whether it can pull positive non-brand
│
├── Priority SKU Shopping   [Standard Shopping]
│     - 10-20 SKUs needing bid control
│     - Manual CPCs or target ROAS with manual overrides
│
└── Discovery + Retargeting [Demand Gen or PMax with audience signals]
      - Top-of-funnel and retargeting only
      - Separate budget; separate ROAS target

Brand campaign

Defensive

PMax high-margin

Acquire

PMax low-margin

Test

Standard priority

Control

Reported PMax ROAS drops the day you exclude branded. That drop is what the campaign was actually delivering on non-brand the entire time.

§02 The five build steps

Build it in this order.

Each step assumes the previous step has shipped. Skip one and the next produces meaningless data.

The rules.

  1. Separate brand defense via Standard Shopping or Search; exclude brand from PMax.
  2. Segment PMax by margin tier using custom_label_0.
  3. Add priority Standard Shopping for the 10-20 SKUs needing bid control.
  4. Use audience signals as inputs, not exclusive targets.
  5. Maintain feed + asset hygiene weekly. Zero disapprovals on top-50 SKUs.

Old way

One PMax across everything. Branded included. No margin segmentation. Algorithm decides; operator hopes.

New way

Five campaigns, one job each. Branded out. Margin tiered. Priority SKUs controlled. Each judged on its own non-overlapping work.

When?

In this exact order. Each step depends on the prior one.

§03 Order of operations

Seven moves. This sequence.

The drop you see on step 4 is the bias you've been paying. Steps 5-7 are only meaningful after the bias is gone.

01

Set up brand defense first. Standard Shopping or Search on branded terms. Defensive budget.

02

Build the brand-exclusion list. Apply it nowhere yet. Get it ready.

03

Audit current PMax. How much of its spend is on branded queries? Note the number — this is your baseline bias.

04

Apply brand exclusion to PMax. Watch reported ROAS drop. The drop equals the bias.

05

Segment PMax by custom_label_0. Only after the bias is removed. Otherwise segmentation data is contaminated.

06

Set up Standard Shopping for the 10-20 priority SKUs. Bid and exclusion control where it matters.

07

Iterate audience signals and asset hygiene. Last layer, not first. These compound month over month.

"Doing this out of order — segmenting PMax before excluding brand — produces nice-looking but meaningless data. Order of operations is more load-bearing than any single tactic."

— Stan Tscherenkow, Principal · SC build sequence canon

"The drop in reported ROAS is not a loss.
It's the truth, finally measurable."

§04 What goes wrong

The six mistakes.

Most rebuilds fail in one of these six places. The structure is correct; the order or the maintenance is off.

Where rebuilds fail.

  • Segmenting margin tiers before excluding brand. The segmentation data is contaminated by branded attribution. You can't tell which tier is profitable.
  • Treating audience signals as exclusive targets. They're directional hints to the algorithm. Caging it produces disappointment when PMax serves outside the list anyway.
  • Skipping the brand campaign. Brand exclusion without a brand campaign means competitors bid on your brand cheaply and you have no defense.
  • Letting feed disapprovals sit. Every disapproval is a real performance tax. Weekly Merchant Center check is the floor.
  • Setting one PMax ROAS target across all margin tiers. Defeats the segmentation. Each tier needs its own target.
  • Not rebuilding asset groups quarterly. PMax learns; assets age out. Refresh asset groups every 90 days minimum.
§05 Where Stan Consulting fits

If your numbers still don't match after this.

The structure is one layer. Attribution, tracking, feed accuracy, and audience signal contamination compound on top of it. The Conversion Second Opinion examines all four.

Diagnose the bleed

The Conversion Second Opinion checks attribution, tracking, feed accuracy, audience signal contamination. 72-hour written diagnostic.

Commission the diagnostic →

See all engagement formats

Five formats from diagnostic-first to ongoing strategic partnership.

See how we work →

Begin a conversation

Direct intake. The diagnostic conversation routes the engagement from there.

Begin a conversation →
Common questions

Common questions.

Why does most Shopify run the wrong PMax shape?

Default Google Ads onboarding suggests Smart Shopping (now PMax) as the entry-level campaign. The wizard doesn't warn the operator that branded search will be claimed and reported inflated. The single-campaign-runs-everything pattern is what Google produces, not what the operator chose.

How do I separate brand defense from PMax?

Build a Standard Shopping or Search campaign for branded queries (small budget, defensive). Exclude brand from PMax via account-level negative keywords plus a brand-exclusion list. When you ship this, PMax reported ROAS drops — that drop is the truth.

How do I segment PMax by margin tier?

Use custom labels on the Shopify feed. custom_label_0 = margin tier (A, B, C). Build separate PMax campaigns filtered by that label. High-margin SKUs get higher ROAS target and more budget; low-margin SKUs get smaller budget, tested for whether they pull positive non-brand at all.

Which SKUs go into Standard Shopping?

The 10-20 SKUs where you need control over bids, exclusions, or messaging. New-product launches needing bid escalation. Loss-leaders you don't want PMax over-investing in. Seasonal-demand products the algorithm hasn't seen. Regulated categories.

What's the order of operations?

Brand defense first. Brand-exclusion list built but not yet applied. Audit current PMax for branded spend share. Apply brand exclusion. Segment PMax by margin tier. Set up Standard Shopping for priority SKUs. Iterate audience signals plus asset hygiene. Doing this out of order produces meaningless data.

The diagnostic decides

Find out which step in the structure is breaking.

Begin a conversation. The intake call routes the engagement.

Begin a conversation