This audit will be short. When there are fundamental problems with the data, there’s nothing to analyze globally. I do have remarks on the campaigns, and I’ll show them. But I’m not assessing the structure yet, because I don’t know the business priorities, and, as you’ll see, that’s not the main thing right now.
Google Ads Account Audit — Furniture Store
Contents
At first glance, everything looks fine
Over 30 days the cost per conversion is UAH 278 ($6.2). For furniture that’s a great price. If these numbers were real, you probably wouldn’t be looking for another contractor. So my conclusion: the data in the account isn’t reliable.
What gets passed to Google Ads
Three goals: purchase through the cart, calls and callbacks via Binotel.
Duplicate calls. Binotel records non-unique inquiries. A person called, didn’t get through, called back — two conversions in the account. No need to guess here: I run into this all the time.
Untargeted inquiries. Among the calls and callbacks there are 100% fakes and off-topic inquiries.
Cart ≠ sale. 21 cart orders are preliminary orders. After checkout someone contacts the person, clarifies something, and some of them cancel. You know this better than I do. Roughly, the 21 orders may actually be 5 sales worth UAH 20K ($444).
| What Google sees | What actually happens |
|---|---|
| ~150 leads | Unknown how many are qualified and how many bought |
| Call = conversion | A repeat call is counted again |
| 21 cart purchases | Some will cancel after the manager’s call |
| UAH 278 per conversion | This isn’t the cost per sale and not even the cost per lead |
Google sees everything up to the CRM. Everything that happens in the CRM, it doesn’t see. And it treats calls, callbacks and cart orders as sales. So it looks for the same audience, including low-quality people.
If you’ve noticed that at some point lead quality started dropping — that’s why. The system learns from low-quality data and brings low-quality people. Why a call and a cart order aren’t a sale yet, I explain in detail in the article what a conversion in Google Ads is.
The fix: reverse CRM → Google Ads integration
This is where you have to start. When I was building integrations like this, I contacted telephony providers with technical questions. They couldn’t answer: they had simply never received similar requests.
How it works:
- The CRM passes qualified inquiries to Google Ads, unqualified ones are filtered out.
- Completed sales are passed in parallel.
- Campaigns learn from real buyers and look for similar ones.
You have KeyCRM, and there’s no problem with it because it has API access. Implementation takes roughly a week. That’s better than continuing to feed the system junk. Here’s what it looks like on another project with KeyCRM:
Google Ads case study · Merchant CenterWhy You Shouldn’t Stop After the First Month: A Mattress Store Case StudyMattress store on Horoshop: feed enrichment, shipping_label, CRM instead of fake conversions, and ROAS from 3.10 to 7.77 after the first month.
Why assessing the structure is pointless right now
The conversion data is dirty, so you can’t calculate campaign performance in the account. You could go to the CRM and match UTM tags with spend and real sales. Then you could evaluate the ads. But not from the account.
Settings that waste budget
Against the data problem this is secondary, but money leaks here too.
All languages. The campaigns target all languages. In the last case I measured, on a Polish website 10% of the budget went to users with English set as their language. With no return at all.
No audience exclusions. For example, 65+. This audience mostly buys offline. If its share of sales is tiny but there is spend, that’s just waste. The system’s attention should be focused on those who buy.
Asset optimization (automatically created assets). Google uses its AI to cut “creatives” and videos out of the website’s images and runs them on Display and YouTube. The traffic there is junk anyway, and with such creatives it gets even worse.
Tablets and TV. PMax shows ads on TV screens, and that’s YouTube only. Cold traffic an online store doesn’t need. The focus is computers and mobile, with deeper tuning later based on real sales data. How much YouTube can eat up in PMax, you can see in the footwear store audit.
Creatives. There are product asset groups without assets, different approaches are being tested. Structurally okay. But while the system learns from the wrong goals, such tests give nothing.
A budget the algorithm can’t learn on
This goes against Google’s logic. A campaign needs a budget for at least 3–5 conversions a day. Here it’s 3–5 conversions a day for the whole account.
| Campaign | Daily budget | Conversions | Conclusion |
|---|---|---|---|
| Main | UAH 350 ($7.8) | ~1.25 a day (CPA UAH 283, $6.3) | Doesn’t scale even on dirty data |
| Kitchens | UAH 100 ($2.2) | 9 a month (~3 per 10 days) | The algorithm has nothing to learn from |
Campaigns should be merged by priority and given a proper budget. Which one exactly is calculated mathematically from the real cost per lead, for example in the Google Ads ROI calculator. Right now everything is scattered, so it’s out of control.
Audit summary
- Correct tracking: reverse KeyCRM → Google Ads integration.
- Define product range priorities.
- Calculate the budget from the real cost per lead.
- Rebuild the campaigns around that.
- Remove the leaks: languages, age, auto assets, TV.
There’s nothing terrible here, everything can be fixed. The main thing is to start with tracking.
03 — AuditGoogle Ads account auditI find where the budget leaks: structure, bidding, keywords, conversion tracking, website.
Where to find me
Message me on Telegram or by email — I respond quickly. Telegram channel and YouTube are for those who want to see real cases before reaching out and understand my approach.