Goals and constraints
We were hired to restore and then scale the efficiency of Google Ads for a handcrafted children's interactive books store in Australia. The account had slipped from a stable ROAS to ~2 on Google Ads. Our mandate: recover performance to meet a minimum ROAS of 3.5, then grow budgets prudently. Constraints were clear - a starting budget of A$4,000 with the option to double spend once ROAS consistently reached or exceeded 4.
Introduction
This case study covers a 12-month turnaround and scale-up of Google Ads for a niche ecommerce brand: handmade interactive books-toys for children. The products are crafted from natural materials and designed to improve fine motor skills, reduce screen time, and educate through themed figures and scenes. We took over in June 2024, stabilized conversion tracking, removed waste, rebuilt the campaign architecture, and ultimately returned to Performance Max with a disciplined segmentation and budgeting approach. The result - ROAS moved from 3.06 to 5.90 while revenue nearly tripled on only a 37 percent increase in ad spend.
Client context
The client has operated since 2020 and sells online across Australia. Prior to our engagement, Meta Ads delivered ROAS around 3 and Google Ads around 4. In the months before onboarding, the Google channel fell to ~2 ROAS. The client was not able to explain the drop. Our initial audit found data discrepancies between Google Analytics and Shopify direct conversions, and signs of traffic cannibalization from Performance Max - particularly on branded queries. At that time, limited levers to control PMax placements meant a high risk of spending on low-return media inventory.


To frame where we started, we compiled "before" baselines across 1, 3, 6, and 12 months pre-engagement.




Strategy
We set practical targets and staged the plan in phases. Our hypothesis: instability was driven by attribution noise, PMax cannibalization on brand terms, and mismatched campaign-type-to-intent. We would temporarily pause PMax, rebuild measurement, re-learn demand with search and shopping, then return to PMax once signals and product segmentation were reliable.
- Measurement - reconcile conversion tracking between GA4 and Shopify; remove duplication and ensure correct value capture.
- Demand mapping - re-activate search with controlled experiments to re-build high-intent keyword sets, including a cautious broad match test and DSA to collect queries.
- Campaign-type fit - replace PMax with Standard Shopping to improve control and isolate product-level economics; remove cannibalization on brand where needed.
- Merchandising segmentation - split catalog into bestsellers vs underperformers to allocate budget to proven SKUs.
- Scaled automation - when enough high-quality signals accumulated, re-launch PMax with curated asset groups and audience signals, then manage budgets by ROAS thresholds.
Competitive analysis showed five direct peers with overlapping themes but mostly unique SKUs. The market competes more on product appeal and functional value than price. Two of five competitors advertised consistently, others ran intermittent campaigns around promotions. Most competitors used near-identical site templates, already rich in conversion features. We did not recommend a redesign because the client's site had comparable functionality and friction points were not the cause of the ROAS slump.
Audience-wise, initial guidance identified likely buyers as parents and grandparents aged 25+. Because the end user is the child and purchase motivations are gift-oriented, we intentionally avoided strict demographic constraints in search to let intent and query semantics lead. We planned to translate those learnings into PMax audience signals later.
Execution
We executed in four steps: stabilize measurement, test and refine search demand, segment catalog with Shopping, and re-enter Performance Max with better data and signals.
Search rebuild and hypothesis testing: we restarted search with parallel experiments. The broad match experiment did not produce new converting queries, but it helped us rapidly eliminate waste.


Within one week of the broad test, ~80 percent of irrelevant queries were cut via negative keywords and pausing non-performers. We also ran Dynamic Search Ads to harvest semantics. DSA did not produce value and was shut down.

Replacing PMax with Standard Shopping: to regain control and decouple placements, we switched from PMax to Shopping. Early returns outperformed prior PMax, but gains faded.

Catalog segmentation: we tested category-level splits first - ROAS held near ~2 and did not meet goals.

Next, we segmented by performance: bestsellers vs underperformers. Excluding underperformers brought the remaining set to roughly ROAS ~3, setting a foundation for algorithmic scaling.

Audience signals and asset groups: as we learned from search, we built PMax asset groups targeting interest clusters and custom intent audiences. This provided a positive lift when reintroduced.

Returning to PMax: with cleaned conversions and a curated product set, we moved back to PMax in Q1-Q2 2025, then phased out low-impact search. PMax expanded reach while re-centering on product and query relevance, which increased conversions and improved both CPA and ROAS.


Audience personalisation in creatives: we targeted messaging to the gift-giver. Value propositions emphasized natural materials, motor-skill development, suitability for travel, and stress reduction for parents.



Creative and feed usage: best results came from product images pulled directly from the feed aligned to user queries. Headlines emphasized local craftsmanship, 5-star ratings, and clear calls to action; descriptions highlighted hand-made quality and deferred payment options.



What we tried that did not work: competitor keyword targeting and DSA underperformed and were disabled quickly. Keeping clean experiments and tight stop-loss rules preserved budget for what worked.
Automation and budgeting: we tested budget automation rules such as "increase budget when ROAS > threshold." In practice, we had to refine them. During scale, we occasionally reduced budgets to protect ROAS - a reliable lever in fixed-demand windows. Over time we adjusted rules to grow from small increments to avoid efficiency shocks.



Tooling stack: GA4, Google Ads, Google Trends, Ads Transparency, Keyword Planner, Optmyzr for automation and reporting, and SE Ranking supported analysis and iteration speed.
Results
In the last 30 days versus baseline (June 2024 to June 2025), ROAS improved from 3.06 to 5.90, revenue rose from A$6,863.37 to A$18,112.12 on a cost increase from A$2,242.93 to A$3,069.85. Conversions grew from 47.13 to 125.00 and cost per conversion dropped from A$47.59 to A$24.56. Average order value remained stable, indicating efficiency gains were driven by better acquisition and budget allocation rather than ticket size inflation.






Post-optimization, the transition back to PMax in February 2025 proved decisive in exceeding the 3.5 ROAS target and consistently reaching ~4 and higher in several campaigns. The brand campaign is excluded from the performance table to keep the view conservative and non-brand focused.

What changed and why it worked
- Problem - ROAS fell to ~2 with unclear cause, and measurement was inconsistent across GA4 and Shopify. Hypothesis - attribution noise plus PMax cannibalization on brand masked true efficiency. Action - reconcile conversion tracking, pause PMax temporarily, and rebuild with search and Shopping. Outcome - cleaner signals and a controllable testing environment.
- Problem - search campaigns converted but under target ROAS. Hypothesis - query mix was diluted by irrelevant broad terms. Action - run a contained broad match experiment and DSA purely to harvest data, then prune aggressively. Outcome - ~80 percent of irrelevant queries eliminated within a week, with better spend quality.
- Problem - broad category splits underperformed. Hypothesis - economic performance differs by SKU, not category. Action - segment by bestsellers vs underperformers. Outcome - ROAS improved toward ~3 by focusing budget on proven SKUs.
- Problem - Shopping plateaued. Hypothesis - we needed the scale and cross-network reach of PMax, but with better signals. Action - return to PMax with curated asset groups, audience signals from search, and cleaned conversions. Outcome - conversions scaled and ROAS rose above targets.
- Problem - budget scaling risked efficiency drops. Hypothesis - mature campaigns have budget thresholds after which ROAS degrades. Action - implement rules cautiously and reduce budgets when ROAS dipped to re-stabilize. Outcome - repeatable ROAS lifts after budget trims, and a refined automation approach based on small-step changes.






Lessons and next steps
Four principles emerged from this engagement.
- Fix measurement first - without reconciled conversion values and de-duplicated events, optimization is guesswork. Clean signals made every subsequent step more effective.
- Test to learn, then cut fast - the broad match and DSA trials were purposeful. They did not scale, but they taught us what to exclude, which accelerated ROAS recovery.
- Segment by economics, not taxonomy - bestsellers vs underperformers was more predictive than categories. Keep flexibility to re-allocate budget toward SKUs that prove margin and conversion velocity.
- Automate with guardrails - PMax and Smart Bidding outperform manual control when conversions are correctly set up and there is sufficient data. Use conservative budget rules and be ready to trim spend to protect ROAS, especially in fixed-demand periods.
Next steps:
- Expand PMax segmentation for new arrivals and high-margin SKUs with tailored tROAS.
- Continue audience-signal iteration in PMax, including custom intent clusters and interest themes proven in search.
- Introduce small-step budget automation increments only after multi-week stability at or above ROAS targets.
- Evaluate importing margin data or custom conversion values to optimize toward profit, not just revenue, once operationally feasible.
- Monitor brand cannibalization and maintain negative lists and exclusions as Google evolves PMax serving logic.





