Audit your local ad account for booked work
A core update is rolling out and everyone is talking about GPT-4. The more useful job this month is checking what your ad account counts as a conversion.
Last week was loud. GPT-4 arrived on Tuesday, Google confirmed a core update on Wednesday, and this week Bard opened to a waitlist. If your organic traffic moved in the last few days, the core update is the likely reason and the advice is the same as it always is: wait for it to finish before you touch anything.
Meanwhile there is a quieter job sitting in almost every local ad account we are handed, and it is worth more than any of that news. The account is counting conversions that are not booked work, and it is bidding toward them.
Here is the audit we run, in order. Give it an afternoon.
Start with what the account is actually counting
Open the conversions list and write down every action, what fires it, and whether it is included in the “Conversions” column. Then read it like a stranger would. The recurring problems we find:
- A page view counted as a conversion. Someone reaching the contact page is not a lead.
- The same lead counted twice. The form submission and the thank you page both fire, so one person becomes two.
- A goal imported from Analytics sitting next to the native tag for the same event, doubling everything quietly.
- Every click on the phone number counted, including the ones that last four seconds because somebody hit it by accident on a phone.
- Old actions nobody removed, still counting a newsletter signup from a promotion that ended two years ago.
Every one of these inflates the number the account reports, and because Smart Bidding chases whatever you feed it, it also teaches the campaign to buy more of the wrong clicks.
Sort every action into three buckets
Not all conversions deserve equal weight, and Google Ads lets you say so. Set each action as primary or secondary, and be strict about what gets to be primary.
- Booked work. A confirmed appointment, a signed estimate, a reserved table. This is the only bucket that should be primary and included in bidding.
- Real contact. A form submission, a phone call over a real duration, a chat that produced a name and a number. Useful to watch. Keep it secondary unless booked work is too rare to bid on.
- Noise. Page views, short calls, clicks on the map, downloads. Set them to secondary so they stay in reporting and stay out of bidding.
The first time an account gets this treatment the reported conversion count usually falls hard. That is the point. The number is going down because it was wrong, and the cost per booked patient was already whatever it was.
Fix the phone side, because that is where local leads live
For most of the clients we run, the majority of leads arrive as calls, and calls are where measurement is weakest.
Set the counting threshold on call conversions to a duration that means something for your business. Sixty seconds is the default in a lot of accounts and it is too short for most of them. A minute of “do you take my insurance, no, thanks” is not a lead. In dental and home services we usually land between ninety seconds and two minutes, then check it against recordings rather than guessing.
Then listen to a sample. Twenty calls from last month, tagged for what actually happened: booked, wanted something you do not offer, price shopping, existing customer, wrong number. Two things come out of that hour every time. You learn which search terms produce the wrong kind of call, and you learn whether the front desk is losing bookings the ads already paid for. We have seen more money lost to unanswered phones than to bad keywords.
Close the loop with the CRM
The version that changes results is sending booked work back into the account.
Capture the click identifier that Google appends to the landing page URL, store it on the contact record with the form submission, and when that contact is marked as a booked and kept appointment, upload it back as an offline conversion. In GoHighLevel that is a hidden field on the form plus a workflow that fires when the opportunity moves into the booked stage. Any decent CRM can do the same thing.
Once it is running, bidding optimizes toward the people who actually showed up rather than the people who filled in a form. Two caveats worth saying out loud. It needs enough volume to be a usable signal, so a practice with a handful of booked appointments a month should keep bidding on contact and use the booked data for reporting only. And the tagging has to be honest, because a front desk that marks everything booked will teach the account nonsense.
While you are in there, the July deadline
Universal Analytics stops processing data on 1 July. That is fourteen weeks away.
If the conversions in your ad account are imported from Universal Analytics goals, they stop when it stops, and campaigns go blind mid-summer during the busiest stretch of the year for most local businesses. Get Google Analytics 4 collecting now, define the same conversions there, link the accounts, and run both while you compare the numbers. They will not match exactly, and that is expected.
What to do this month
- Export the conversion actions list and delete every action nobody can explain.
- Set exactly one bucket as primary, and make it the closest thing you have to booked work.
- Raise the call duration threshold to something defensible, then check it against twenty recorded calls.
- Tag the search terms that produced wrong-fit calls and add them as negatives.
- Get the click identifier saved on every form submission so offline conversion imports become possible.
- Confirm your Analytics 4 conversions exist and are linked before the summer, not in June.
Do this once and the reporting stops flattering everyone. Our Google Ads work starts with this audit for every account we take over, because the accounts that look best on paper are usually the ones counting the most junk, and for a practice the number that matters is chairs filled, not clicks.
Written March 23, 2023, and kept as written. Platforms, features and policies mentioned here are described as they stood at the time.
Local measurement without third-party cookies
Call tracking, first-party events and honest ranges: how we measure a local business when the tracking is partial, and how to report it without guessing.
ReadBook the right jobs when the crew is full
Peak season with a crew you cannot grow. How we bid for the work worth having, protect the answer rate, and book the shoulder months while it is busy.
ReadWhat we stopped letting the phone agent do
After more than a year of AI agents answering real calls: the work they handle well, the jobs we took back off them, and the numbers we judge them on.
ReadThis is what we do for clients: Google Ads.
The platforms have moved on since this was written. We will show you where your business stands right now and what to do first.