LAB LIVE
SCANNING409 CAMPAIGNS
ANOMALIES15 FLAGGED
AVG LIFT+4.10× ROAS
Strategy

Your ROAS Looks Great But Sales Aren't Growing — Here's Why

The Google Ads dashboard reports 420% ROAS. The business owner asks why revenue hasn't moved in three months. Both numbers are real. The gap between them is one of the most common — and most expensive — blind spots in performance marketing.

Alex Sterling··8 min read

ROAS is the ratio of reported conversion revenue to ad spend. The word “reported” is doing a lot of work in that sentence. What Google Ads reports as revenue is not necessarily what your business received — and in many accounts, the gap between the two numbers is significant enough to completely distort decision-making.

There are five specific reasons why ROAS in Google Ads becomes detached from actual business results. Most accounts we audit have at least two of them active simultaneously.

Reason 1: Attribution Is Giving Credit to the Wrong Touchpoint

Last-click inflation

Google Ads default attribution has historically been last-click — the final touchpoint before conversion gets 100% of the credit. In a multi-touch journey, this creates a systematic distortion: the bottom-of-funnel ad (often branded search or a retargeting campaign) gets credited for a sale that was actually driven by an upper-funnel awareness campaign weeks earlier.

The result: your branded Search campaign reports 800% ROAS. Your Prospecting campaign reports 120%. You cut Prospecting budget and increase branded Search. Sales stay flat because you just cut the campaign that was actually generating new demand.

The diagnostic questionWhat percentage of your Google Ads conversions are attributed to branded search campaigns? If it's above 60%, you may be measuring brand recapture (users who were going to buy anyway) and calling it paid acquisition.

Data-Driven Attribution doesn't fix this by itself

Google's Data-Driven Attribution model distributes credit across touchpoints based on path data. It's better than last-click. But it still operates within Google's own channel ecosystem — it can't properly attribute the influence of an email, a Meta ad, or a word-of-mouth recommendation that happened between two Google touchpoints. For businesses with diverse acquisition channels, DDA is a better model inside a still-incomplete picture.

Reason 2: View-Through Conversions Are Inflating Your Numbers

View-through conversions (VTC) count a conversion when a user saw your ad (without clicking it) and then converted later, directly or through another channel. By default, Google Ads includes VTCs in your total conversion count — and therefore in your ROAS calculation.

For Display and YouTube campaigns, VTCs are often the majority of reported conversions. The problem: this metric assumes your Display impression caused the conversion — when in reality, that user may have converted because of an email, a recommendation, or organic search. The Display ad just happened to be in their browser at some point in the previous 24 hours.

How to checkIn Google Ads, column settings → Segment → Click type. Add the View-through conversions column separately. If your Display or YouTube campaign shows a large VTC count with a small click-through conversion count, your ROAS is being inflated by impression credit. This is especially common in remarketing and Performance Max campaigns.

Fix: Separate click-through ROAS from view-through ROAS in your reporting. For strategic decisions, base budget allocation on click-through conversions only. Use VTCs as a secondary signal for upper-funnel awareness, not as a primary ROAS justification.

Reason 3: You're Counting Conversions That Don't Reflect Revenue

Google Ads “conversions” is a container that holds whatever events you configure. We regularly audit accounts where the conversion column includes: add-to-cart events, phone number views (not calls), PDF downloads, chatbot opens, and actual purchases — all counted together in the same number, all assigned a value (sometimes the same value).

When your “conversion” includes a €0.50 email signup and a €200 product purchase treated identically, the algorithm optimizes toward volume — which means it optimizes toward the cheapest conversion to generate, which is usually the least valuable one.

Conversion typeWhat it signalsShould count toward ROAS?
Purchase (with real order value)Direct revenueYes — primary conversion
Qualified lead form submissionSales pipeline entryYes — with estimated revenue value assigned
Phone call (60+ seconds)Engaged prospectSecondary — track separately, assign value based on close rate
Add to cartInterest, not commitmentNo — use for optimization signal, not ROAS calculation
Page view / time on siteEngagementNever — this has no relationship to revenue

Fix: Audit every conversion action in your Google Ads account. For each one, answer: does this conversion, by itself, represent attributable revenue? If not, move it to “Secondary conversion” status (it still tracks, but doesn't count toward the ROAS column or influence Smart Bidding targets).

Reason 4: Your Conversion Value Doesn't Match Actual Margin

ROAS is calculated as conversion value ÷ ad spend. If the “conversion value” in Google Ads is the gross order value and your actual margin is 30%, a 400% ROAS means you made 400% of what you spent in revenue — but only 120% in margin. After subtracting COGS (300% of revenue), your net on ad spend is negative.

This is why “what ROAS do I need to break even?” is not answerable without knowing your margin — and why a target of 300% ROAS might be deeply unprofitable for one business and highly profitable for another.

ScenarioGross marginBreak-even ROASAt 400% ROAS
Physical product, high COGS25%400%Exactly break-even
Physical product, mid COGS40%250%Profitable (60% above break-even)
Software / digital product80%125%Very profitable
Service business60%167%Profitable but must account for sales cost
What to use instead of ROASMER (Marketing Efficiency Ratio): total revenue ÷ total marketing spend, calculated from your actual P&L — not from the Google Ads dashboard. MER is platform-agnostic, margin-aware, and harder to inflate with attribution tricks. If MER is growing, the business is growing. If ROAS is growing and MER isn't, you have a measurement problem.

Reason 5: You're Measuring a Metric Google Controls

ROAS, as reported in Google Ads, is a number calculated by Google using Google's attribution, Google's conversion windows, and Google's model for cross-device and view-through credit. Google has a financial interest in showing you a high ROAS — it justifies your ad spend on their platform.

This is not a conspiracy — it's simply how any attribution system works when operated by the entity whose revenue depends on the outcome of that measurement. The fix is not to distrust Google entirely, but to triangulate: always compare Google-reported ROAS against platform-independent data (Shopify revenue, CRM new deals, backend order database) before making budget decisions.

01
Compare Google Ads revenue to your actual backend

Export Google Ads conversions for a 30-day period. Export orders from your Shopify / WooCommerce / CRM for the same period. If the Google Ads number is consistently 20–30% above the backend number, you have an attribution overlap problem (likely double-counting from both GA4 and native Google Ads tags firing on the same purchase event).

02
Run a spend pause test

The most direct test of whether Google Ads is generating incremental revenue: pause all campaigns for 1–2 weeks (if business can absorb it). If organic and direct revenue stays the same, the campaigns were capturing conversions that would have happened anyway — not generating new demand. If revenue drops, the campaigns were working. This is the ground truth that no attribution model can replicate.

03
Track new customers separately

Google Ads “new vs. returning customers” segmentation (available in Performance Max and standard campaigns under Settings) shows what percentage of your reported conversions are from genuinely new customers vs. repeat purchasers. A high-ROAS account that's mostly re-activating existing customers is a retention channel, not a growth engine — and should be evaluated (and priced) accordingly.

What to Use Instead: A Measurement Stack That Works

What you want to knowUse this instead of reported ROAS
Is overall marketing profitable?MER (total revenue ÷ total ad spend from P&L)
Is this specific campaign generating new revenue?Incrementality test (geo holdout or time-based pause test)
Which channel generates new customers?New customer rate per channel (filter by first-order tag in backend)
Is the ad spend efficient?Click-through conversions only, primary conversion actions, margin-adjusted
How does Google Ads compare to other channels?GA4 multi-channel attribution + backend revenue cross-reference

The accounts we run that have the clearest picture of what's actually working share one habit: they reconcile Google Ads dashboard data against backend revenue monthly. It's not a complicated process — it's a 30-minute spreadsheet comparison. But it's the only way to catch ROAS inflation before it affects budget decisions that compound over months.

If you're seeing strong ROAS but flat revenue, start with the checklist above. In our experience, the problem is almost always attribution overlap or conversion action misconfiguration — both are fixable in under a day. More in the Sterling Lab blog or talk to us if you want a second set of eyes on the numbers.

Alex Sterling

Alex Sterling

Founder at Sterling Lab · Google Ads strategist · 42 client accounts across 10 countries