NEXSUM_LABS
  1. Home
  2. Work
  3. A furniture retailer tamed Performance Max with guardrails instead of faith
Book a call

[ Case study ]

Furniture retailPerformance MaxBrand exclusion strategyMargin-tiered asset groupsGA4 + order reconciliation

A furniture retailer tamed Performance Max with guardrails instead of faith

PMax absorbed the budget happily and reported ROAS that didn't match the P&L. Branded-search traffic was being claimed by the automated campaign, best-sellers absorbed spend while high-margin slow-movers starved, and nobody could see where the money went.

CLIENT a furniture retailer — FOCUS Separate brand from PMax honestly

Google AdsPaid MediaGoogle AdsFurniture retailRepresentative example
Client
a furniture retailer
Industry
Furniture retail
Engagement
8 weeks — growth pod — paid media specialist
Service
Paid Media / Google Ads
Headline outcome
Platform-reported ROAS — with reconciled revenue up 14% and waste down, the honest number replaced the flattering one: 4.2× → 3.1×, read from Ads platform reconciled against order data

Representative examplesEvery case study in this library is an illustrative composite of the kind of engagement we deliver — written to show our method and standards, not to name clients.

Where they started

Two furniture showrooms and an online store make up the retail operation, with a warehouse holding everything from small accents to four-figure sofas. Sales run heavily on brand — customers search the company by name after a showroom visit — and finance closes the books monthly, reconciling platform claims against actual orders. Paid media had grown into a meaningful line without anyone owning its structure: the automated shopping campaign was switched on years ago and left at defaults, while clearance seasons were handled with ad-hoc budget bumps.

What it was costing

PMax absorbed the budget happily and reported ROAS that didn't match the P&L. Branded-search traffic was being claimed by the automated campaign, best-sellers absorbed spend while high-margin slow-movers starved, and nobody could see where the money went.

What they could see

  • The P&L never matched the platform's reported return; finance flagged the paid line monthly and nobody could explain the gap.
  • Customers who searched the brand after showroom visits were being reported as conversions won by the automated campaign.
  • Best-sellers received constant spend while high-margin slow-movers barely appeared in delivery, and no setting seemed to change that.
  • Clearance periods required manual budget surgery with unpredictable results — one season the push barely delivered, another it overspent early.

The constraints we worked inside

  • The client's finance team reconciled revenue monthly — platform ROAS claims had to survive that reconciliation.
  • Exclusion levers (brand, audience) were limited but existed — the plan had to use what's real.
  • Seasonal clearance windows were fixed; the campaign had to re-weight on a calendar.

What had been tried before

PMax budgets had been raised more than once following the platform's optimization-score suggestions.
The score measures adoption of Google's recommendations, not margin — extra budget flowed to best-sellers the algorithm already favored, widening the mix problem.
A standard Shopping campaign ran alongside PMax to force visibility on high-margin lines.
Without brand and audience exclusions the two campaigns competed in the same auctions; PMax won most impressions and the Shopping line idled.
Clearance pushes were handled by temporarily doubling the automated campaign's budget for the window.
Doubling fed the same asset groups; clearance lines surfaced only when the algorithm happened to favor them, which a fixed calendar can't rely on.

What we proposed

We proposed keeping the automation but fencing it. Brand search received exact-match defenses so the automated campaign stopped claiming customers who were already walking in; asset groups were rebuilt around margin tiers with creative matched to each tier, giving the algorithm something to optimize toward besides volume; and every month platform-reported revenue was reconciled against order data with the gap documented. Decisions would run on the blended truth the finance team could accept, and the clearance calendar would drive re-weighting on a schedule.

Just as important is what we ruled out, and why:

  • Abandoning PMax for fully manual ShoppingManual structure would mean rebuilding feed-driven campaigns by hand each season, and the finance constraint demanded reconciliation, not re-platforming — the automation wasn't the core failure.
  • Third-party attribution toolingThe gap between platform and P&L was discoverable with GA4 and order exports the client already owned; new tooling adds another number to reconcile rather than removing one.
  • Standard Shopping alongside PMaxWithout exclusion levers set first, a parallel Shopping campaign re-enters the same auctions PMax already wins — paying twice for the same impression.

How the work ran

01Separate brand from PMax honestly

Brand traffic was segmented out with exact-match defenses so PMax's reported ROAS stopped counting customers who were coming anyway.

02Feed the asset groups by margin tier

Asset groups were structured around margin tiers with tailored creative, giving the algorithm something to optimize toward besides volume.

03Reconcile platform vs P&L every month

Platform-reported revenue was compared against actual order data monthly, with the gap documented — decisions made on the blended truth.

Delivered by the growth pod — paid media specialist over 8 weeks, with working increments reviewed with the client every week.

The stack, and the reasoning

Performance Max
Kept rather than replaced — the client wanted automation, and once brand traffic and margin tiers were fenced, PMax had honest signals to optimize against.
Brand exclusion strategy
The exact-match defenses stopped PMax from counting customers who searched the brand and would have arrived anyway — the ROAS inflation's root cause.
Margin-tiered asset groups
Asset groups by margin tier gave the algorithm something to optimize toward besides raw volume, and made high-margin slow-movers visible in the structure.
GA4 + order reconciliation
The finance team's monthly reconciliation was non-negotiable; GA4 joined to order data produced the blended truth every budget decision runs on.

What went wrong

Obstacle

Finance's first reconciliation found platform revenue including in-store pickup orders flagged as online and a financing partner's settlements double-entered — the gap was worse than the P&L line suggested.

Handled: We defined one reconciliation rule set with the finance team — transaction IDs, exclusions for pickup — and rebuilt the monthly report so both sides signed off before any budget moved.

Obstacle

The margin-tiered asset groups initially shared creative and audience signals, so the algorithm kept blending tiers and the slow-mover tier stayed invisible for the first fortnight.

Handled: We hardened the separation — distinct creative per tier, audience signals weighted to each tier's buyers — and watched delivery shift over two weeks before trusting the structure.

Obstacle

A fixed clearance window landed mid-engagement, before the calendar re-weighting was live — exactly the period the old ad-hoc budget bumps used to mishandle.

Handled: We ran the re-weighting manually for that one window against the new tier structure, then automated the schedule immediately after so the next season never depended on anyone remembering.

How we worked together

Cadence
A monthly reconciliation meeting with the finance team plus a short fortnightly working call; account changes were batched to that calendar rather than made ad hoc.
Client side
Finance owned the reconciliation rule set, the marketing manager owned creative approvals, and both sat in every session that touched budget.
Decisions
Where platform and order data disagreed, finance's number won by prior agreement — the rule was written before the first reconciliation, not during one.
They provided
Monthly order exports with transaction IDs, clearance-season calendars a quarter ahead, and two finance hours per month that the reconciliation genuinely consumed.

What changed

The headline: platform-reported roas — with reconciled revenue up 14% and waste down, the honest number replaced the flattering one4.2× → 3.1×, read from Ads platform reconciled against order data. A second check: high-margin tier revenue share of paid-attributed orders at +27%.

The monthly reconciliation became a short, boring ritual — which is the point. Finance stopped flagging the paid line and started using its numbers in forecasting; the marketing manager plans clearance windows against the calendar now instead of reacting to them. The margin-tier structure gave the team a vocabulary they didn't have: they talk about slow-mover support in reviews without anyone needing to explain why the algorithm should care. The platform-versus-P&L gap is documented, expected, and owned.

The result was read from Ads platform reconciled against order data against the pre-engagement baseline over the stated window, with a guardrail check on high-margin tier revenue share of paid-attributed orders. Where platform-reported numbers and business outcomes differ, this record says which layer it is quoting.

What they own now

  • The brand-exclusion configuration with the exact-match defenses, documented for future campaigns.
  • Margin-tiered asset groups with the creative mapping per tier.
  • The monthly reconciliation workbook — transaction rules, exclusions, and the signed-off gap format.
  • The seasonal re-weighting schedule keyed to the clearance calendar.
  • A short diagnostics reading guide so new asset groups inherit the discipline.

What we would do differently

We would have run the brand-exclusion test in week one — the first month's 'improvements' were partly the brand-segmentation effect we hadn't isolated yet.

Paid MediaGoogle AdsFurniture retailPerformance Max

Next case study

A roofing company's leads became real leads once consent-aware tracking was verified