Google Shopping Ads Not Profitable? The Four Checks, in Order
Google Shopping ads losing money? Check in this order: feed first, then your margin against your real click cost, then search terms, then structure.
- 12,000+PMax campaigns audited
- 200+Live ecom clients
- €200M+Tracked sales
Your Shopping ads are approved. They serve, they get clicks, tracking fires, and the money still leaves faster than it comes back.
That is a different problem from ads that do not run at all. It needs a different check order.
Step 1: Is the Feed Good Enough to Compete?
Standard Shopping has no keyword list. Google reads your product data and decides which searches you belong in. Performance Max lets you add search themes and block words, and it still leans on the same product data. Your feed does the job keywords do in a Search campaign.
Open Merchant Center diagnostics. Four things:
- Products Google blocked. Merchant Center calls those disapprovals. A blocked product sells nothing. Count them before you touch anything else.
- The number that names the product. That is the barcode number (GTIN) or the maker's part number (MPN). Every product that has one should carry it.
- Titles. Google shows around 70 characters on most placements. The title can be longer than that. Just put the words that sell the product in the first 70.
- Your own category label. That is the product_type field. Filled on every row, never blank.
These are not rare problems. We measured 12,375 products across 251 real Merchant Center accounts on 2026-07-28. 81.3% carried neither a GTIN nor an MPN. 68% of titles ran past 80 characters. Many of those accounts were measured at onboarding, before anyone had worked on the feed. Full breakdown in the Product Feed Quality Index.
Pass: nothing blocked. A barcode or part number wherever one exists. The product named inside the first 70 characters of the title. A category label (product_type) on every row.
Fail: anything less. Fix it, wait for the re-crawl, then move on. The next three checks read a lot cleaner once this one is done.
Deep dive: the complete Google Shopping feed optimization guide.
Step 2: Do Your Margins Survive Your Real Click Cost?
This is the check for the account where everything is approved, serving and clicking, and the bank balance still goes down.
Open two numbers in Google Ads. What one click costs you on average (average CPC). And how often a click turns into a sale (conversion rate). Last 30 days, from the campaign, not the whole account. Account averages get dragged around by brand traffic.
Those two give you the ad cost of one sale. Work out how many clicks it takes to get one sale. Multiply that by what a click costs you.
Take a normal order. Take out what the product cost you. Then the shipping you pay for, the payment fees, the discount codes, and the share that comes back as a refund. What is left is what that sale can spend on ads.
Put the two side by side. If the ad cost per sale is bigger, the campaign loses money on every order, and the harder it works the faster it loses.
| Margin on the invoice | The number to use | |
|---|---|---|
| What the product cost you | Taken out | Taken out |
| Shipping you pay for | Often left in | Taken out |
| Payment and platform fees | Often left in | Taken out |
| Discount codes | Often left in | Taken out |
| Orders that come back | Often left in | Taken out |
Do the same maths per product where you can. One blended number for the whole account still works, and it beats having no number at all. It just hides the spread. Put thin-margin and fat-margin products under one target and some of them get asked for a return they can never hit. The rest get held back.
Performance Max used to report all its channels as one lump. There is a channel performance report now that splits Shopping out from the rest, so use it. Even then, a product that converts is not automatically a product that pays you. Check the profit at product level yourself.
One thing break-even does not cover: rent, salaries, software, packing and tax. Covering the ads is not the same as making money. Set the target above break-even, never on it.
We never publish client margin data, so run your own numbers. Your product cost, your shipping, your fees, your return rate.
Pass: you have written down what a sale leaves you and what the ads must return to cover themselves. Your target sits above that.
Fail: there is a target in the account and nobody knows what number it has to beat.
Deep dive: when and how to use target ROAS. For the cost side of the same maths, what Google Shopping ads actually cost.
Step 3: Which Searches Are You Actually Paying For?
Open the searches you paid for (search terms report), last 30 days, sorted by cost. Read it line by line. Not the summary. The lines.
Two kinds of loss hide in there.
Wasteful terms carry no buying intent at all. "free", "diy", "how to make", "second hand", "repair", "wholesale". Someone clicks, reads, leaves. You paid for the reading.
Wrong-intent terms are worse, because they look fine on the page. Real buying intent, wrong product. A rival's brand name. A size you do not carry. A material you do not sell. Those people land, see the wrong thing, and bounce. You paid full price for a click that never had a chance.
Blocking a term and starving a product are one keystroke apart. A blocked word (a negative keyword) added at campaign level kills that search for every product in the campaign. Block "cheap" and you also block "cheap velvet armchair" from the one product that wins on price. Check what the term spent and what it sold before you add it. Then add it narrow. Phrase, not broad.
Pass: you can name the five terms that cost you most last month and say why each one is still allowed to run.
Fail: you have never opened the report, or you pasted in a negative list you found online.
Deep dive: negative keywords for ecom Google Ads.
Step 4: Is Your Structure Hiding the Losers?
One campaign for the whole catalog means your winners pay for everything that never sells. The average covers it up.
Fashion products with spend and no tracked Google Ads sale in 30 days
71.7%
Share of fashion ad spend those zero sellers took
14.7%
Share of fashion ad revenue from the top 10% of products
85.6%
All three numbers are the fashion cut of our own data, not a survey. The full study covers 106,400 products across 137 stores in two niches. In the home decor cut, the products with no tracked sale took 29.5% of the spend. And "sold nothing" here means Google Ads tracked no sale in that 30-day window. A sale that happened somewhere else and never got attributed does not show up. Full method and tables in the ecom Pareto study.
So sort your products by what they have actually sold. Tag them. Proven sellers in one group, everything unproven in another.
On an account with steady sales, give each group its own campaign and its own budget. Then you can see what the unproven group costs you and cap it. On a small account that split can spread your sales too thin for the bidding to learn. There, keep one campaign and use product labels and exclusions instead.
Either way, a daily budget is an average, not a hard ceiling. Google can spend more on a busy day and pull back on a quiet one. So check the unproven group every week instead of setting it and walking away.
Pass: you can say what share of last month's spend went to products with zero sales.
Fail: you cannot, because it is all one campaign.
Deep dive: fix a Performance Max campaign that is wasting spend, and Performance Max is not the problem, your feed is.
How Long Should You Wait Before You Judge a Fix?
One change at a time.
Change several things at once and you cannot tell which one moved the number. Then the next decision is a guess too.
I cannot hand you a fixed day count. It depends on your volume. Wait until the change has collected enough clicks and sales that the result sits outside your normal week-to-week wobble. A store with a handful of sales a week waits a lot longer than a busy one.
Feed edits need a re-crawl before anything can happen at all. Bidding edits need a fresh learning period. Judge either one too early and you are reading noise, not results.
When the Account Is Not the Problem
Sometimes the ads are fine and the business under them is not.
- Your price sits above the market and the page gives no reason for it.
- Rivals on that results page ship free and you charge for shipping at checkout.
- Your best product is out of stock.
- Your product page has one photo, a few lines of copy, and no reviews.
- You are in the quiet part of your season.
None of that is a bidding problem. No strategy fixes a price nobody wants to pay.
If step 2 says the maths does not work, do not hire anyone yet, and that includes us. A management fee on top of a sale that already loses money makes the loss bigger, not smaller. Fix the margin, the price, or the size of a typical order first. Then the ads have something to work with.
If the maths does work and you want someone to run these four checks properly, here is how we handle Shopping accounts. Or read more Google Shopping questions answered before you decide anything.
Frequently Asked Questions
Why do my Google Shopping ads get clicks but no sales?
Usually the searches are wrong, not the ads. Standard Shopping has no keyword list, so Google matches searches against your product data. Vague titles and empty attributes pull you into searches that were never going to buy. Open the search terms report, sort by cost, and read the lines. If the terms look right and people still do not buy, the problem has left the ad. Look at the product page, the price, and the shipping cost that shows up at checkout.
What is a good ROAS for Google Shopping?
There is no universal number. The one that matters is your own break-even. Take a normal order. Take out what the product cost you. Then the shipping you pay for, the payment fees, the discount codes, and the share that comes back as a refund. What is left is what the sale can spend on ads. Divide 1 by that share and you get the return the ads need just to cover themselves. Set your target above it, because rent, salaries, software, packing and tax still come out after that.
Can a bad product feed really make Shopping ads unprofitable?
Yes. Standard Shopping has no keyword list, so your product data is what Google matches searches against. Performance Max lets you add search themes and block words, and it still leans on the same product data. A missing barcode number pushes Google to guess. So does a title that buries the product name, or an empty category label (the product_type field). Google guesses wide. You pay for the wide guesses. Fix the feed first, because it makes the other three checks easier to read.
The Checklist in One Place
- Feed. Open Merchant Center diagnostics. Pass when nothing is blocked and the barcode or part number is filled. The product is named inside the first 70 characters of the title. Every row has a category label (product_type).
- Margin. Open what one click costs you and how often a click turns into a sale. Pass when you have written down what a sale leaves you after all its costs, and your target beats it.
- Search terms. Open the search terms report, 30 days, sorted by cost. Pass when you can defend the five most expensive terms on the list.
- Structure. Open the products view. Pass when you know what share of spend went to products that sold nothing.
Feed first. The other three get a lot easier to read once it is clean.