When your Google Ads dashboard reports a 6x or 8x ROAS but your Shopify revenue has barely moved in six months, the problem is almost never your bidding strategy. A high Google Ads ROAS with flat revenue is a classic symptom of attribution failure: your reported conversions are inflated, your budget is flowing to campaigns that look profitable but are not actually driving incremental sales, and every optimization you make based on those numbers digs the hole deeper. This is the story of how one ecommerce brand discovered exactly that, rebuilt their attribution from the ground up, and watched their reported ROAS drop while their actual revenue climbed for the first time in over a year.
The pattern here is not unusual. It applies to any ecommerce brand running Google Ads at meaningful scale and trusting the numbers in their Google Ads dashboard without cross-referencing them against real bank deposits. If your Google Ads ROAS looks good but sales are not growing, this case will feel uncomfortably familiar.
Background: A Shopify Ecommerce Brand With A Google Ads Blind Spot
Business Context And Ad Spend Level
The brand in question is a Shopify-based direct-to-consumer company selling a consumable product with strong repeat purchase rates. They were spending roughly $45K per month on Google Ads across a mix of Performance Max campaigns, branded Search, non-branded Search, and a small amount of YouTube. They had been running Google Ads for over two years, had a decent product-market fit, and considered paid search their primary acquisition channel.
Their agency at the time reported results monthly. The numbers looked strong. Blended ROAS across all campaigns hovered between 5x and 7x. The agency pointed to these figures as proof the campaigns were performing well. Monthly reports were clean, optimistic, and full of green arrows.
The Symptoms: Strong ROAS Reported, Flat Revenue Growth
The problem surfaced in a quarterly review when the founder compared Google Ads performance reports against actual Shopify revenue. Despite consistently strong reported ROAS, total revenue had been essentially flat for 14 months. Not declining, just flat. New customer acquisition was not growing. Average order value had not changed meaningfully. The business was not scaling, despite what the ad platform said.
This is the core tension that makes this case worth studying. When Google Ads ROAS looks good but revenue stays flat, the reflexive move is to increase budget or launch new campaigns. But if the ROAS itself is a mirage, spending more just wastes more money on the same broken signal.
The Diagnosis: Attribution Was Lying
The root cause was not creative fatigue, not audience saturation, not a bidding problem. It was attribution. The numbers Google Ads reported as conversions were significantly inflated. The campaigns that appeared most profitable were, in several cases, taking credit for revenue they did not actually generate. Every decision made on top of that data, from budget allocation to bid targets, was built on a foundation that did not reflect reality.
The Attribution Problem: Why Reported ROAS Overstated True Performance
Google Ads attribution problems in ecommerce are common, but they tend to be invisible until someone goes looking for them. This brand had three distinct issues compounding on top of each other.
Last-Click Attribution And PMax Overcounting
Performance Max campaigns are particularly prone to attribution inflation. PMax operates across Search, Shopping, Display, YouTube, Gmail, and Discover. It can claim conversions from any of those surfaces, and it often claims conversions that other campaigns (including branded Search) also touched. In this account, PMax was reporting conversions that overlapped heavily with branded Search. The same purchase was being counted in both campaign types. Total reported conversions across all campaigns added up to significantly more than total Shopify orders.
This overcounting is a well-documented behavior in accounts running both PMax and branded Search simultaneously. Google’s own attribution model can assign credit to PMax for a conversion that started with a brand keyword click, simply because a PMax ad was shown to the same user on a different surface earlier in the journey.
How View-Through Conversions Were Inflating Numbers
The second issue was view-through conversions. The account was counting 30-day view-through conversions as conversions. That meant if someone saw a Display or YouTube ad, never clicked it, but purchased within 30 days through any channel, Google Ads claimed that sale. For a brand with strong organic traffic and repeat purchase behavior, this inflated reported ROAS dramatically. A returning customer who happened to see a Display impression during a remarketing campaign was being credited as a Google Ads conversion, even if their purchase was entirely organic or driven by email.
The signal quality in the account was fundamentally compromised. Smart Bidding was optimizing toward a conversion signal that included a large volume of sales Google Ads did not actually cause.
What The Data Looked Like When Cleaned Up
When view-through conversions were excluded and overlapping conversion actions were deduplicated, the real picture emerged. Effective ROAS across the account dropped from the reported 6x-7x range to roughly 3x. Some campaigns that appeared to be top performers, particularly a PMax campaign running remarketing heavily across Display, dropped below 1x when only click-through conversions were counted. The brand had been allocating their largest budget share to campaigns that were largely taking credit for organic and email-driven revenue.
The Fix: Rebuilding Attribution Around Incremental Revenue
Identifying the problem is only half the work. The harder half is rebuilding the account so that every future optimization decision is based on signal that reflects reality.
Moving To Data-Driven Attribution Across All Campaigns
The first step was switching every conversion action in the account to data-driven attribution. This replaced last-click attribution, which had been the default on several legacy conversion actions. Data-driven attribution distributes credit across touchpoints based on Google’s modeling of what actually influenced the conversion. It is not perfect, but it is significantly better than last-click for accounts with multiple campaign types and touchpoints.
Removing Duplicate Conversion Actions
The account had accumulated multiple conversion actions over time. There were two separate purchase events being counted as primary conversions, one from an older Google Ads tag and one from a GA4 import. Both were firing on the same purchase. Every transaction was being double-counted at the conversion action level. This is more common than most advertisers realize, especially in accounts that have been running for years or have changed agencies. Cleaning this up alone cut reported conversions by a meaningful amount.
This same kind of tracking rebuild is exactly what drove results in a legal services case where duplicate and misconfigured conversion actions were distorting the entire account’s optimization signal.
Setting Up GA4 Enhanced Conversions Properly
Enhanced conversions were not configured. This meant Google was losing match data on a significant portion of conversions, which in turn degraded Smart Bidding’s ability to optimize effectively. Implementing enhanced conversions using first-party customer data (hashed email addresses passed at checkout) improved conversion match rates and gave the bidding algorithm better data to work with going forward.
The Reallocation: Shifting Budget Based On Real Signal
With clean attribution in place, the budget allocation that had been in place for over a year suddenly looked indefensible.
Which Campaigns Were Actually Driving Revenue
Non-branded Search, which had been receiving a relatively small budget share, turned out to be the highest-performing campaign type on an incremental basis. These were campaigns targeting category terms and product-specific queries from people who had never visited the site. Conversions from these campaigns held up under clean attribution because they were genuine first-touch acquisitions.
Branded Search, while still positive, was not as dominant as it had appeared. A meaningful share of branded conversions were from returning customers who would have purchased anyway. The incrementality question on brand keywords is one most ecommerce brands never rigorously test, and this case confirmed why that test matters.
PMax, when restricted to Shopping-only inventory and stripped of its Display and YouTube remarketing components, still performed well. But the version of PMax that had been running, with broad audience expansion and view-through conversions counted, had been dramatically overstating its contribution.
The Budget Moves That Felt Risky But Paid Off
Budget was shifted substantially toward non-branded Search and Shopping-only PMax. The remarketing-heavy PMax campaign was paused entirely. Branded Search budget was reduced by roughly 30%, with an incrementality holdback test run over four weeks to validate that organic was picking up the slack.
These moves felt risky at the time because they involved cutting the campaigns with the highest reported ROAS. This is the psychological trap that keeps ecommerce brands stuck. Chasing a high ROAS target often means over-investing in campaigns that look efficient but are not actually generating new revenue.
Results: What Happened To Real Revenue After The Attribution Fix
Reported ROAS Went Down. Actual Revenue Went Up.
Within the first full month after the reallocation, reported blended ROAS dropped from roughly 6x to 3.5x. In the same period, Shopify revenue increased. Over the following quarter, revenue grew meaningfully for the first time in over a year. The campaigns that were now receiving budget were acquiring net-new customers at scale, and those customers converted at rates that held up when checked against actual Shopify orders.
This is the counterintuitive outcome that makes Google Ads attribution problems so dangerous for ecommerce brands. A lower reported ROAS was correlated with higher actual revenue because the budget was finally going to campaigns that drove incremental purchases rather than campaigns that claimed credit for purchases that were already going to happen.
The Metric That Mattered More Than ROAS
The metric that actually mattered was incremental revenue per dollar of ad spend, measured by comparing Shopify revenue against periods with controlled budget changes. ROAS as reported in Google Ads became a monitoring metric rather than an optimization target. The primary decision-making framework shifted to: “If I add $1,000 to this campaign, does Shopify revenue go up by more than $1,000?”
This is a simple question, but answering it requires clean attribution, proper conversion tracking, and someone who knows how to run holdback tests. Most ecommerce brands running Google Ads do not have that infrastructure in place.
Lessons For Ecommerce Brands Running Google Ads At Scale
Why Chasing Reported ROAS Is A Trap
Reported ROAS in Google Ads is a platform metric. It tells you what Google thinks happened based on the conversion actions and attribution model you configured. If those inputs are wrong, the output is wrong, and every optimization built on that output makes things worse. Flat revenue despite high reported ROAS is one of the clearest signals that your attribution is lying to you.
How To Know If Your Attribution Is Telling The Truth
Start with a simple cross-reference. Compare total conversions reported in Google Ads over the last 90 days against total orders in your ecommerce platform for the same period. If Google Ads claims more conversions than you have orders, you have a counting problem. Then check: how many conversion actions are set as primary? Are view-through conversions being counted? Are you running PMax and branded Search simultaneously without deduplication?
If the answer to any of these is “I don’t know,” the attribution is almost certainly inflated.
When To Bring In Outside Execution
This is the part most brands get stuck on. Diagnosing attribution problems requires deep technical knowledge of Google Ads conversion tracking, GA4, and the interaction between campaign types. Fixing it requires rebuilding the measurement infrastructure and then reallocating budget based on the new data, which means tolerating a period where reported numbers look worse before real results improve.
This is precisely the kind of problem groas solves at the structural level. With the DFY service, a dedicated strategist owns the entire account end to end, including the attribution and tracking layer that most agencies never touch. The proprietary engine trained on over $500 billion in profitable ad spend identifies signal quality issues that human-only teams miss because the patterns show up across thousands of accounts, not just one. And because groas works on everything from the first click to the final conversion, including landing pages, the optimization is not limited to what happens inside the Google Ads interface.
For brands that have an in-house team but need the engine and strategic support to run this kind of rebuild, the DWY option puts a senior strategist alongside your team while you stay in control of execution.
The pattern in this case study is not unique. It plays out in thousands of ecommerce accounts where reported ROAS looks healthy but revenue has flatlined. The fix is always the same: stop trusting the number Google Ads gives you by default, rebuild the measurement layer so it reflects incremental reality, and then have the discipline to reallocate budget even when the dashboard screams at you for doing it. If your team does not have the depth to do that confidently, groas is built for exactly this situation. Apply for DFY and find out what your numbers actually look like underneath the surface.



