Skip to main content
Vol. 1 · No. 1 · 2026
Animaclarus
Est. 2026 · One per city
Field Notes · 12 minutes · Measurement & Tooling

The steering wheel: why Google Tag Manager decides whether your ads perform.

Your Google Ads account says you got zero conversions last month. The ads ran. The clicks were real. So either the campaign failed — or something isn't being counted. For most veterinary practices, it's the second one.

Here is a moment that happens in veterinary practices more often than anyone would like. The owner, or the office manager, finally sits down to look at the Google Ads account. The campaign has been running for a couple of months. Money has gone out the door — a real amount, every week. They scroll to the column that is supposed to tell them whether any of it worked. The conversions column. And it says 0. Or it says 2, for a quarter's worth of spend, which is somehow worse, because 2 is just enough to look like the truth.

There are only two explanations, and the owner is now quietly deciding between them. Either the ads genuinely don't work — in which case the spending should stop — or the ads work and something is failing to count what they produce. Those lead to opposite decisions. And most practice owners, with nothing else to go on, assume the first one. They assume the channel failed.

This post is about why that assumption is usually wrong, what is actually broken, and the unglamorous piece of infrastructure that fixes it. The short version: the ads are often fine. The measurement is blind. And until the measurement can see, the campaign cannot be steered — which, as we will get to, is the part that actually matters.

Why the number is wrong: the booking button

Start with the most common single reason a veterinary practice's conversion count reads near zero while the ads are genuinely working. It is not exotic. It is sitting on the practice's own homepage, and it is the button that says Book Appointment, or Schedule a Visit, or Request an Appointment.

Here is what that button usually does. It does not submit a form that lives on the practice's own website. It links out — to a third-party booking platform. Most independent practices today run their online scheduling through a dedicated booking tool: Vetstoria, PetDesk, Weave, AllyDVM, or one of several others. These are good products and there is nothing wrong with using them. But mechanically, what happens when a pet owner clicks that button is that they leave the practice's website and land on the booking platform's domain to actually choose a time and confirm.

That hand-off is where the conversion disappears. Standard Google Ads conversion tracking works by firing a small piece of code when something happens on your own website — a confirmation page loads, a contact form is submitted. The tracking lives on your site and watches your site. But the booking was completed on someone else's site, the booking vendor's domain, where your tracking code does not run and cannot reach. A real pet owner really booked a real appointment — and Google Ads never heard about it. The conversion happened offstage.

So the campaign drives a click, the click becomes a booking, the booking becomes a patient — and the conversions column still says zero, because the one event that mattered occurred on a domain the tracking was never able to see. The ads did their job. The measurement simply was not standing in the right place to watch.

There is usually a second, compounding reason this has never been fixed, and it is worth naming. Whatever tracking the practice's website does have was, in most cases, hardcoded into the site years ago by whoever built it — an agency, a contractor, a relative who is "good with computers." It is buried in the site's code. The practice does not control it, often cannot identify it, and cannot change it without going back to a developer they may no longer work with. So even a practice that suspects something is off has no practical way to get in and fix it. The measurement is both blind and locked.

What Google Tag Manager is, in one minute

This is the point where the tool enters, and it deserves only a minute, because the tool is not the interesting part — what it lets you do is.

Google Tag Manager — GTM — is a free container. You (or someone) installs it on the website once. After that, every piece of tracking code the practice ever needs — Google Ads conversion tracking, Google Analytics, a Meta pixel, anything — gets added and changed inside Tag Manager, through its own interface, without touching the website's code again and without a developer. The site has one container; the container holds the tags; the tags are managed in one place by whoever runs the marketing.

That is the whole concept. Its importance is not that it is clever — it is that it takes tracking out of the locked basement of the website's source code and puts it somewhere the practice can actually reach. It is the thing that makes the booking-button problem fixable. Now — what to do with that.

The rear-view mirror and the steering wheel

Most people, if they think about conversion tracking at all, think of it as a rear-view mirror. It is the thing you check, after the fact, to find out whether the ads worked. Did the campaign produce bookings last month? Look in the mirror. It is a reporting function — a record of where you have already been.

That is true. It is also the less important half of the truth, and the half that gets all the attention.

Here is the other half. The conversion data you collect does not just sit in a report. It is fed back into Google Ads — and it changes what the system does next. Modern Google Ads campaigns run on automated bidding: Google's algorithm decides, for each individual auction, how much to bid and whether to show your ad at all. The input that algorithm optimizes toward is your conversion data. When a conversion is recorded, the system learns — it studies who that person was, what they searched, what device they used, the time of day — and it shifts your budget toward more people who look like the ones who converted.

So conversion tracking is not only a record of the past. It is the instruction set for the future. It is the steering wheel. The data you feed in is how the campaign knows which direction to go.

Conversion tracking isn't the rear-view mirror. It's the steering wheel. Feed it nothing, and you've handed Google a car with no way to steer — and told it to drive.

Now put that together with the booking-button problem, and the real cost comes into focus. A practice whose booking conversions are leaking off-domain is not merely missing a number in a report. It is feeding the bidding algorithm nothing — or worse, feeding it the wrong thing. With no real conversions to learn from, Google's automation falls back to optimizing for whatever it can see: raw clicks, cheap traffic, volume. It will dutifully optimize. It will get very good at buying you clicks. It just will not be optimizing toward booked patients, because it was never shown one. You have handed it a car and told it to drive, and you have taken the steering wheel out of the vehicle.

That is the difference between a campaign that improves over time and one that just spends. Both have their hands off the wheel. Only one of them has a wheel.

How GTM fixes the booking button: the outbound click

So how do you measure a booking that completes on a domain you do not control? You cannot track the booking completion — that genuinely happens on the vendor's site, out of reach, and no amount of cleverness changes that. But you can track the thing that happens just before it, on your own site: the click on the booking button itself.

This is something Tag Manager does well. You can set up what is called an outbound-click trigger — a rule that fires the moment a visitor clicks a link pointing to your booking vendor's domain, in the instant before the browser carries them away. That click becomes a tracked event, and that event can be passed to Google Ads as a conversion.

Be clear-eyed about what this is: a click on the booking button is not a confirmed booking. Some people who click will not finish. So it is a proxy — an imperfect one. But it is a proxy that is enormously better than the alternative, which is zero. It gives the bidding algorithm a real, directional signal: these clicks, from these searches, led people to the booking step. That is a steering input. The algorithm can work with it. It could do nothing with zero.

And for practices on a booking platform that can report completed appointments back out — some can, particularly the modern cloud-based systems — the proxy can later be upgraded to the real thing. But that is a refinement. The first, large, immediate win is simply this: stop letting the booking button be invisible.

Tag Manager is the layer underneath everything

The booking button is the sharpest single example, but it is one instance of a larger role. Tag Manager is not a fifth marketing task competing for attention alongside the campaign, the website, and the rest. It is the foundation the others stand on. Three quick connections make the point.

I have written before about why most veterinary practices can't prove their Google Ads work. That post diagnoses the problem — the broken, invisible measurement. Tag Manager is the practical answer to it: the place the missing conversion tracking actually gets built and, crucially, gets built somewhere the practice can see and control.

I have also written about demand capture versus demand creation, and noted there that paid social advertising gets meaningfully better when you feed the platform real first-party data — a Meta pixel, a customer list. That pixel does not need to be hardcoded into the website either. It lives in the same Tag Manager container, alongside the Google tags, managed the same way. One container holds the whole measurement layer.

And the post on what Google's Recommendations tab is optimizing for made the case that Google's automated suggestions are only as trustworthy as the conversion data underneath them. This is the steering wheel again, seen from a different seat: clean conversion data is not only your defense against bad recommendations — it is the active signal that makes the automation work for the practice instead of merely spending its budget. Every one of those posts, in the end, depends on the same piece of plumbing being in place.

What to actually do

If you take one action from this, make it this: find out whether your practice can see its own booking button.

Concretely — first, find out whether the practice even has Google Tag Manager installed. Many do not. Many others have it installed and sitting empty, never configured, put there once by someone and forgotten. Second, look at your own Book Appointment button and find out where it goes. If it carries the visitor to a different domain — a Vetstoria, PetDesk, Weave, or similar address — then that click is almost certainly the conversion your account is failing to count, and an outbound-click trigger in Tag Manager is the fix. Third, make sure your Google Ads and Google Analytics tracking actually run through the container, so the whole measurement layer is in one place the practice controls.

None of this is glamorous, and none of it is a weekly chore — it is one-time infrastructure. But until it is in place, every other decision about the advertising is being made in the dark. The campaign cannot be judged, because the results are not being counted. And it cannot be steered, because the steering wheel is not connected to anything. Get the measurement seeing first. Everything else — the bidding, the budget, the honest yes-or-no on whether the ads work — depends on it.

— Free Audit · 24 Hour Turnaround —

Is your booking button invisible to Google?

Part of the free audit is checking whether your conversions are actually being counted — including whether your Book Appointment button is leaking bookings to a domain your tracking can't see. Quick Audit from public data in 24 hours, or Full Audit with read-only account access in 72 hours. Both free. No call required.

Request the Free Audit →
— One practice per city —

Founder, Animaclarus

I run Animaclarus, a Google Ads service built only for independent veterinary practices. Thirteen years inside vet practice ad accounts — long enough to have seen a lot of working campaigns mistaken for broken ones because nothing was counting the bookings. One practice per city. Learn more →