Your blended ROAS, the single number Google Ads shows you, averages your converting products together with the dead weight that never sells. Strip out the non-converting “zombie” products and recalculate on your active products only, and the true figure is usually three to five times higher. That active-only number is the real measure of how well your Shopping campaigns work.
If you’ve ever looked at a 6x ROAS and thought “that’s fine, but it doesn’t feel like it should be this hard,” this is almost certainly why. You’re not running a mediocre account. You’re running a strong account with a large parasite attached to the reporting.
This piece shows you exactly how to separate the two and calculate the number that actually matters. It’s the diagnostic foundation for everything in our complete Google Shopping guide for South Africa.
Why blended ROAS misleads you
Blended ROAS is total conversion value divided by total spend, across every product in your account. It treats all spend as equal. But your spend isn’t distributed across products that all perform — it’s distributed across a catalogue where, typically, around half the products never convert at all.
Those non-converting products still cost money. They take clicks, they spend budget, and they contribute R0 in return. When you average them in with your genuine performers, they drag the whole number down. The result is a blended figure that describes neither group accurately — it’s a fiction created by mixing winners and dead weight in one bucket.
Here’s the problem in practice. Two stores both report a blended 6x ROAS. Store A has a healthy catalogue where most products pull their weight. Store B has 60% dead products dragging down a set of hero products that are actually running at 25x. Same headline number, completely different reality — and completely different right next moves. Blended ROAS can’t tell them apart. Active-only ROAS can.
The four buckets (a quick recap)
To calculate active-only ROAS, you first need to split your products into performers and non-performers. Over a clean measurement window (90 days is the standard), every product falls into one of four buckets:
- Zero-impression zombies — never even shown to a shopper.
- Impression-only zombies — shown, but never clicked.
- Click zombies — clicked, spent your budget, but never converted.
- Active products — the products actually converting and carrying the account.
The first three are collectively your “zombies.” For a full breakdown of each type and why they exist, see what a zombie SKU in Google Shopping looks like. For this calculation, all you need is the split: active vs everything else.
How to calculate your true active-only ROAS
Step 1: Pull your product-level report
Export your Shopping product report from Google Ads over a 90-day window, with spend and conversion value per product (by Item ID).
Step 2: Clean the data first
Before you classify anything, check for duplication. If your store runs a translation layer or sells into multiple markets, the same product can appear several times in the data under different IDs — which inflates your product count and distorts the zombie ratio. Compare your unique product count against total rows; if they don’t match, deduplicate down to unique products before going further. Skip this, and you’ll calculate a scary number that isn’t real.
Step 3: Classify active vs zombie
Sort products into two groups:
- Active: conversions greater than zero over the window.
- Zombie: zero conversions (whether they got impressions, clicks, or nothing).
You can refine this later — for example, treating high-ticket, long-consideration products separately, since those can show zero conversions in the window without being genuinely dead — but the basic split is enough to expose the distortion.
Step 4: Recalculate ROAS on the active group only
Take the total conversion value from your active products, and divide it by the total spend on your active products only. That’s your true active-only ROAS.
Then, for contrast, calculate the spend that went to your zombie group. That figure is what your blended number has been hiding — budget spent for R0 return.
A worked example
Take a real (anonymised) account we audited. The blended figure looked ordinary:
- Blended ROAS: 6.35x — respectable, nothing special.
But once we split active from zombie and recalculated:
- Active-only ROAS: 31.66x — the true performance of the products that actually convert.
The blended number was understating real efficiency by five times. The hero products weren’t mediocre; they were exceptional, and the account’s reporting had been quietly burying that under the weight of non-converting SKUs.
This wasn’t a one-off. Across the accounts we’ve audited, the pattern held every time — one account went from 4.59x blended to 14.44x active (roughly 3x), and even the healthiest account we saw was understating its real performance by around 1.5x. The multiplier varies with how bad the zombie problem is, but the direction never changes: active-only is always meaningfully higher than blended.
What to do with the number
Calculating active-only ROAS isn’t just a reporting tidy-up — it changes decisions:
It reframes what “good” looks like. Once you know your heroes run at 30x, a blended 6x stops being your benchmark and starts looking like a problem to solve, not a result to accept.
It makes the budget case obvious. The zombie spend figure from Step 4 is the money you can redirect. On the account above, the majority of spend was going to products returning nothing — that’s not a small optimisation, it’s a structural reallocation waiting to happen.
It tells stakeholders the truth. If you report to a client, a finance team, or a board, the blended number sells your work short. Active-only ROAS, shown alongside the zombie-spend figure and a plan to fix it, is a far more honest and far more compelling story.
Crucially, the fix for those zombies is not simply to switch them off — some of them can be rescued with better feed data, and the genuinely low-demand products need their own space to prove themselves rather than being deleted on a hunch. That’s covered in building a discovery campaign that actually performs. And a share of the “dead” products aren’t demand problems at all — they’re discoverability problems that better feed optimisation can solve.
Our own ShopRank platform exists to fix exactly that at catalogue scale.
Frequently asked questions
What is a good ROAS for Google Shopping? There’s no universal number — it depends on your margins. But the more useful question is which ROAS you’re looking at. A blended 6x might hide active products running at 30x, or it might be a genuinely thin account. Calculate active-only ROAS before judging performance, because the blended figure alone can’t tell you which situation you’re in.
Why is my ROAS lower than it should be? The most common hidden cause is zombie drag: around half your catalogue may be spending budget with zero conversions, pulling down the average. Your converting products are likely performing far better than the blended number suggests. Separate the two and recalculate to see the real picture.
How often should I recalculate active-only ROAS? Treat it as an ongoing measure, not a one-off. Products move between active and zombie as demand shifts, seasons change, and new SKUs arrive. A monthly review keeps the number honest and feeds your budget and campaign decisions.
Does active-only ROAS work for Performance Max too? Yes. The calculation is the same — you’re splitting converting from non-converting products using the product-level data. The difference in pMax is what you can do about the zombies afterwards, since pMax controls bidding at the campaign level rather than per product.
Next in this cluster: what is a zombie SKU in Google Shopping and building a discovery campaign that actually performs. Or return to the complete Google Shopping guide for South Africa.
Want your own account’s true ROAS and zombie rate assessed? Get in touch — or see how ShopRank optimises your feed.

