Scaling ad spend
PPC management in San Antonio: how one store got 6.45x back on ad spend by fixing the tracking, not the bidding
A San Antonio store's Google Ads account finished at 6.45x on ad spend and $4.77 per conversion. The five changes, in order, and two checks for your own account.
A San Antonio store’s Google Ads reports showed hundreds of conversions a month while the orders in its shop admin never matched. The bidding was fine. The tracking was the problem: add-to-carts, newsletter signups and purchases were all counted as the same conversion, so Google’s bidding had been buying the cheapest one. Once that was fixed and the budget moved onto buying-intent searches, the account returned 6.45 in conversion value for every 1 spent, at $4.77 per conversion across 787.59 conversions and 24.3K in tracked value.
That is the whole result, before the story. The .59 is not a typo: Google reports fractional conversions when it attributes part of a sale across more than one click, and most dashboards round it away. The client’s name and some identifying details are withheld at their request. The figures are from the live account and are untouched.
What $4.77 means against the average
WordStream’s 2026 Google Ads benchmarks, according to the company, put the average cost per lead across industries at $66.69, the average cost per click at $5.42, and the average conversion rate at 8.18 percent.
Where those three figures come from, and why your own account legitimately sits somewhere else, is set out in the 2026 cost per lead benchmarks. The comparison flatters this account and needs a caveat.
WordStream’s figure is a cost per lead drawn largely from lead generation accounts, where one conversion is one person filling in a form. This is a retail account where a conversion is a purchase and order values are small. A $4.77 purchase and a $66.69 lead are not the same unit.
The number that survives the caveat is 6.45. Value returned per unit of spend is a ratio, and ratios compare cleanly across account types.
Who the client was
A small retailer selling a low-ticket food product online with local pickup, three staff, the owner running the business and, until then, the ads. Low order value matters for reading the rest of this. When the average order is modest, wasted clicks hurt faster than they do for a company selling roof replacements.
The owner’s complaint, roughly: the reports say hundreds of conversions, the orders are visible in the shop, the two have never once agreed, and nobody can say why. That is one of the most common things owners say, and it is usually a definition problem rather than a reporting bug.
Somebody set up conversion tracking years ago, ticked more boxes than they needed, and every box has been feeding the bidding ever since. The second complaint surfaced later: nobody knew which searches were spending the money, because the account ran on broad match and nobody had opened the search terms report in months.
The five changes, in order
Rebuilt conversion tracking. Purchases became the only primary conversion action. Add-to-carts and newsletter signups were demoted to secondary, so they still report and no longer steer bidding.
Set the count setting correctly. Purchases count every conversion, because a repeat customer buying twice is two sales. Lead-type actions were switched to count once. This alone deflated the old conversion number and made it honest.
Passed real order values into the account. Before, every conversion carried a flat placeholder value, which told Google that a small jar and a gift box were identical. They are not.
Cleaned up matching. Ninety days of search terms, a negative list built from the recipe, how-to and do-it-yourself queries eating the budget, and the money moved onto phrase and exact terms with buying intent. The negative keywords guide shows the method.
Switched bidding last. Only after thirty days of clean value data did the account move to a target return on ad spend. Changing the bid strategy before the data is clean makes the algorithm confidently wrong.
Four of the five are plumbing. The clever bidding move is the one at the bottom, and it only worked because the four above it happened first.
Why it worked
Smart bidding does exactly what it is told, and it had been told the wrong thing. When a newsletter signup and a sale both count as a conversion, and a signup costs cents while a sale costs dollars, the algorithm buys signups all day. It was doing its job perfectly. The job was wrong. Fix the definition and the same algorithm, on the same budget, starts buying sales. That is most of the 6.45.
The rest came from the negatives. A store selling a food product attracts an enormous volume of people looking for recipes, and those people are lovely and are not customers. Every click from them was money that never had a chance.
The two checks for your own account
Both are free and take about ten minutes.
First, open Tools, then Conversions, and read the primary conversion actions. If anything other than a real sale or a real enquiry is listed as primary, that is where the budget is going. Check the count column too, and make sure lead actions are set to one rather than every.
Second, open the search terms report and sort by cost, highest first. Read the top fifty. You will recognise the waste instantly, because it will be queries you would never pay for on purpose. Add them as negatives.
If both come back clean, the problem is somewhere else, which is useful to know before spending anything on a fix.
What to expect on timing and cost
Expect thirty days before the data means anything and sixty to ninety before a bid strategy has settled. Anyone promising a turnaround in week one is selling the first report rather than the result. Budget enough to get roughly thirty to fifty clicks a week on your best terms, worked out from your own cost per click rather than a figure in a blog post, including this one.
On management fees, ask three things of anyone: what the fee does if you pause spend for a month, who owns the account if you leave, and what the manager is paid for. The paid search engagement here is priced per qualified lead rather than as a flat fee or a share of spend, for the reason this account illustrates: the manager should be paid for sales, not for clicks.
Where the line is
A 6.45 return is not a forecast for another account. This one started from broken tracking, so there was obvious waste to remove, and the margin and order value decide what a good ratio is for any business. An account that is already tidy has less room to move, and the honest answer there is that management earns less.
Run it yourself if you have a few hours a week and enjoy the detail, because nobody knows your customers better. Hire out when the account is losing more per month than the fee would cost, which is the only honest test.
The account did not need a new strategy. It needed someone to open the settings and read what was in there, which took an afternoon, and then wait for the data to catch up, which took a month.
Questions people ask about this
How do I know if my conversions are set up wrong?
Compare last month’s conversions in Google Ads against last month’s orders or enquiries in your shop admin or inbox. If Google’s number is several times larger, more than one action is counting as a conversion. Then open Tools, then Conversions, and read the primary column as the post describes. Anything that is not a sale or a real enquiry sitting there is steering your bidding.
What is the difference between a primary and a secondary conversion?
Primary actions feed the bidding and appear in the main conversions column. Secondary actions are recorded for reporting but do not influence how Google spends. Make the outcome you would pay for primary, usually a sale or a qualified enquiry. Make everything else secondary: add-to-carts, signups, page views. You lose nothing, because the data still appears in the account. You gain an algorithm that buys the thing you want.
Should I count conversions once or every time?
Once for lead actions, because a person who submits the same form twice is still one lead. Every time for sales, because a repeat customer buying twice is two sales. Getting this wrong in either direction distorts the bidding. Counting leads every time inflates the number with duplicates. Counting sales once hides repeat business, which is often your cheapest revenue.
How do I pass real order values into Google Ads?
Through the conversion tag on the order confirmation page, or through your shop platform’s Google integration if it has one. The tag needs to read the order total dynamically rather than carry a fixed value. Test it by placing a small order yourself and checking the value that appears in the account a day later. If every conversion shows the same value, the tag is still carrying a placeholder.
How long should I wait before switching to target ROAS?
Until the account has clean value data for at least thirty days, as the post did, and enough conversions for the algorithm to learn from. Switching earlier teaches it from the broken numbers you just fixed. While waiting, run a conversion-maximising strategy or manual bidding. When you do switch, set the target near the ratio the account is already achieving rather than the one you want, then tighten it slowly.
Does this apply to a lead generation business rather than a shop?
Yes, and the plumbing is the same. The primary conversion becomes a qualified enquiry, counted once, and the value can be set to an estimate of what a lead is worth to you. The search terms check is identical. The main difference is volume. Leads arrive more slowly than orders, so learning takes longer and consolidating campaigns matters more. The negative keyword work often pays faster for lead businesses.
How often should I read the search terms report?
Weekly for the first two months after any change, then monthly once the negative list is mature. Sort by cost, read the top of the list and add negatives in themes rather than one query at a time. A recipe query is one negative, but “recipe” as a phrase match negative covers many variants. Google’s report hides some low-volume terms, so a small share of waste stays invisible.
Why does broad match cost so much on a small account?
Because broad match lets Google extend your keyword to searches it judges related, and its judgement is only as good as the conversion data you gave it. On the account in this post, that data was wrong, so broad match spent on recipes. On a small budget every mismatched click is a large share of the day. Phrase and exact match with a strong negative list gives you control back while the data is rebuilt.
Is a return of 6.45 realistic for my business?
The post says no forecast should come from it. The number depends on margin, order value and how broken the account was to begin with. A business with high order values can be very profitable at a lower ratio. A low-margin business needs a higher one just to break even. Work out the ratio at which you make money after product cost and fees. That is your target, not someone else’s case study.
What should I ask a PPC manager about their fee?
The three things in the post: what the fee does if you pause spend, who owns the account if you leave, and what exactly they are paid for. Add one more. Ask what they would change in the first week, and listen for whether they mention conversion settings before bidding. A manager who starts with bids on a broken account is optimising the wrong thing.
Can I fix the tracking myself without an agency?
Yes, if you are comfortable in the Google Ads interface and your shop platform. The two checks in the post are free, and demoting conversion actions to secondary is a single setting each. Passing real order values is the step most owners need help with, because it touches the site code. Do the first two yourself this week, then decide whether the third is worth a developer’s hour or a manager’s fee.
Free review
Want this looked at on your own site?
Send the address. A person reads it and writes back with the two or three things that would move your enquiry number first. Free, and yours to keep whether you hire us or not.