Goals and constraints
We were engaged to launch and scale Google Ads for a U.S. ecommerce retailer with 20K+ PC-modding and components SKUs. The business runs on tight margins - typically capped under 25% by market pricing - and set a clear constraint: keep monthly ad spend near $3,000 and maintain ROAS above 10. We had to overcome significant site performance and Merchant Center instabilities, then identify profitable product segments, and scale without breaking margin thresholds.
Introduction
This case study covers how we took a new Google Ads account from zero to a sustainable, high-ROAS engine for a specialist PC hardware retailer. The goals were strict: spend about $3,000 a month and keep ROAS above 10. We used a phased approach - Shopping segmentation to learn, Performance Max to scale, and disciplined budget control to stay within margin limits. The last 30 days outperformed the baseline across every efficiency metric: ROAS up 49%, CPA down 59%, and CPC down 45%, while conversions grew 146% with nearly flat spend. Revenue rose 49% while AOV decreased as we intentionally opened more lower-priced volume that the model could convert profitably.
Client context
The client operates a U.S.-based ecommerce store for PC enthusiasts. Founded in 2003, they started with modding and cooling gear - RGB lighting, custom cables, decorative elements, fans, water-cooling, cleaning tools, and laser engraving. Today they offer most PC components and custom builds. With 20K+ SKUs and low margin ceilings set by market pricing and manufacturers, they compete on availability, delivery speed, and timely promotions - including free shipping above a threshold and frequent sitewide offers.
The starting bottleneck was the website. The legacy custom site ran on outdated infrastructure, suffered slow page loads, and used heavy visual effects that degraded response times. This instability caused repeated Merchant Center issues and a fragile product feed. We spent material time stabilizing feeds and coordinating with Google support, while advising the client on site optimizations and, later, on a Shopify migration that ultimately removed most technical blockers.
Strategy
We built the plan around three core hypotheses and a set of supporting tactics tailored to low-margin ecommerce:
- Segment Shopping by product categories across the U.S. - learn which categories drive ROAS within budget, then reallocate spend toward winners.
- Transition to Performance Max and structure asset groups by price ranges - constrain spend away from low-price SKUs that cannot clear CPC and margin constraints, while giving the algorithm tight signals for high-value segments.
- Create product groups by price and exclude unprofitable low-ticket SKUs - avoid scenarios where the click price exceeds item margin or where volume cannibalizes budget without profit.
Supporting tactics included brand defense, geo refinement to "presence only," systematic traffic cleanup via negative keywords and placement exclusions, budget-cap automation to avoid overspend, DSA as a feed-outage contingency, and audience scaffolding for PMax and remarketing. Competitors included Titan Rig, FrozenCPU, and ModMyMods - all constrained by similar margin realities - so we emphasized availability, clear delivery benefits, and promotion alignment in assets and sitelinks.
Execution
We set up Google Ads, GA4, and Merchant Center for a fresh account and prioritized a stable product feed. Given the legacy site constraints, we launched and relaunched Shopping as feed health allowed, while working with Google support. Even in early cycles, category-level ROAS leaders emerged quickly, validating the segmentation approach and enabling budget reallocation.


As performance stabilized, we transitioned to Performance Max. With limited budget and 20K+ SKUs, we could not spin up single-category campaigns at scale. Instead, we created one core PMax campaign with asset groups split by price tiers aligned to observed CPA. With CPA around $20, we tested a >$50 asset group first, then added a $20-$50 group after identifying high-demand bestsellers in the lower band. This structure prevented very low-priced SKUs from draining budget and concentrated spend on ranges that cleared margin and CPA.


We implemented budget-cap automation to prevent overspend under the $3,000 constraint. This protected margins but introduced pauses when caps were hit late month. In April, a script paused campaigns three days before month end; in May, we rebalanced daily caps to avoid downtime while honoring monthly limits.
Geo targeting was set to the U.S., with an initial test that included users "interested in" the location due to ~8% non-U.S. traffic on the site. We later tightened PMax to "presence only" after confirming non-U.S. orders were negligible and saw audience quality improve.


Traffic cleanup was continuous. We added negative keywords and excluded poor placements regularly. For example, excluding broad terms like "computers" and blocking hundreds of mobile app placements in Display improved conversion quality and redirected budget to better queries and inventory.

To defend branded demand against competitors, we launched a brand campaign with a flexible budget, typically $10 per day and up to $30 during competitor pushes or when the feed was down. We also kept brand scope clean with negatives to prevent paying for organic and irrelevant clicks.

A new customer only campaign underperformed on KPIs. In this niche, prospects tend to already shop elsewhere and need repeated exposure. With limited budget, this campaign acted as a first-touch driver but did not meet CPA/ROAS targets, so we retired it to protect efficiency.

When the legacy site's response times degraded and the product feed went down, we deployed a DSA campaign as a contingency to partially replace Shopping functionality via search. DSA ran alongside PMax without a feed and the brand campaign, achieving ROAS above 1000%.



Dynamic remarketing underperformed, partly due to feed instability that broke accurate product-page identity matching. After PMax stabilized, we did not need a standalone remarketing line item.

We built audience segments for PMax and remarketing - purchasers, cart abandoners, checkout starters, and visitors without purchase. Classic remarketing lists did not contribute during instability, but these segments improved PMax performance as audience signals once the feed and site stabilized.



On creative, Shopping images directly from the feed performed best because they matched intent at the SKU level. For PMax, lifestyle and build images highlighting RGB, modding outcomes, and finished rigs provided strong visual cues, while text assets emphasized top categories, promotions, and delivery benefits.






Results
Against a monthly ad budget near $3,000, we kept ROAS above 10 throughout the engagement, dropping below target in September 2024 only once due to site issues. The last 30 days versus baseline show the core outcomes:
- ROAS increased from 14.26 to 21.23 - up 49%.
- Revenue rose from $40,486 to $60,530 - up 49.5% - with flat spend (+0.4%).
- Conversions grew from 189.47 to 465.76 - up 146%.
- CPA fell from $14.98 to $6.12 - down 59%.
- Clicks increased from 5,162 to 9,504 - up 84% - as Avg. CPC dropped from $0.55 to $0.30 - down 45%.
- AOV moved from $213.68 to $129.96 - down 39% - a direct result of intentionally opening lower-priced, high-conversion ranges controlled by price-tier segmentation.
PMax moved from a supporting role to the core driver once price-tier asset groups were implemented: revenue scaled from roughly $9K in February to more than $26K in March, all while maintaining high ROAS. During feed outages and site instability, DSA and brand campaigns preserved coverage and profit.









Data provenance: All figures are sourced from the client's Google Ads account and GA4. A live, read-only Looker Studio view was used for reporting and cross-checks.
Open the Looker Studio dashboards
What changed and why it worked
- Problem - vast catalog, low margins, and fragile legacy site leading to feed instability. Hypothesis - learn via Shopping segmentation, then scale via PMax with strict price-tier groups. Action - launch category Shopping, fix feed issues, roll PMax with $20-$50 and >$50 asset groups, exclude low-price SKUs that cannot clear CPC. Outcome - ROAS up 49%, revenue up 49.5% on flat spend, conversions up 146%.
- Problem - monthly budget cap risked overspend. Hypothesis - automate caps and refine daily budgets. Action - deploy budget-cap scripts then rebalance day caps to avoid late-month pauses. Outcome - prevented overspend while reducing downtime risk and keeping weekly performance stable.
- Problem - irrelevant traffic from generic queries and poor placements. Hypothesis - ongoing traffic hygiene will improve conversion quality. Action - add negatives like broad "computers," exclude weak placements like mobile apps at scale. Outcome - immediate CPA and ROAS improvements as budget shifted to better-intent clicks.
- Problem - competitors bidding on brand. Hypothesis - a lean brand defense prevents leakage with minimal cannibalization. Action - run brand with flexible budget and precise negatives. Outcome - efficient coverage of high-intent branded traffic, especially during competitor pushes and feed downtime.
- Problem - feed outages and site slowness. Hypothesis - DSA can partially replace Shopping. Action - launch DSA alongside PMax without feed and brand. Outcome - DSA delivered ROAS above 1000%, preserving profitable volume until Shopify migration stabilized the site.
- Problem - narrow initial audience assumption. Hypothesis - let Google's models find buyers across broader signals while we provide strong product and price cues. Action - leverage PMax audience signals and allow broad discovery; refine geo to presence-only after validation. Outcome - better audience quality and volume without manual over-segmentation.
Lessons and next steps
Key lessons for low-margin, large-catalog ecommerce:
- Structure before scale - segmentation and price-tiering were decisive. Tight groups give algorithms cleaner signals and let you protect margin by excluding sub-$margin SKUs.
- Scale budgets gradually - 10-20% steps preserve efficiency. Sharp increases can widen learning and dent ROI, especially in constrained catalogs.
- Automate with intent - budget caps protect margins, but plan day caps to avoid idle days. If pauses happen, restart fast on day one of the cycle.
- Traffic hygiene never ends - keep pruning search terms, placements, and geo settings. Each cleanup unlocks incremental ROAS and lowers CPA.
- Campaign synergy - PMax complements search and remarketing. Coordinate budgets to avoid redundancy and let the system serve the most relevant ad.
- Contingencies matter - DSA filled gaps when Shopping was down. Always have a playbook for feed instability, especially on legacy stacks.
Next steps we recommend:
- Expand PMax asset groups by price and by high-margin subcategories - keep low-ticket SKUs excluded or isolated with strict targets.
- Continue feed enrichment - ensure complete attributes, accurate availability, and promotion annotations to lift Shopping and PMax quality.
- Run controlled tests on top brands and assemblies - validate if dedicated campaigns outperform within PMax for those lines.
- Double down on creative variety in PMax - more build visuals and SKU clusters tied to seasonal demand and promotions.
- Refine budget pacing - model day caps to remove end-of-month stoppages, keeping weekly conversion curves smooth.
- Broaden measurement - maintain GA4 and Looker Studio dashboards; monitor device and geo skew to guide micro-adjustments.
In short, disciplined structure, thoughtful automation, and fast operational responses delivered sustained efficiency under tight margins and budget limits. Performance Max with price-tier asset groups became the backbone of profitable scale, while Shopping segmentation, brand defense, DSA contingencies, and relentless hygiene did the unglamorous work that made the numbers hold.





