Open your Google Ads dashboard. Conversions are up, cost per conversion looks healthy, the graphs are green. Then you look at the schedule and the bank account, and the story does not match. New patients are not up the way the ad account says they should be. This is the single most common problem I see on New York practice accounts, and it is almost never a bidding problem. It is a measurement problem.
The New York version of the problem is worse
Every practice that advertises on Google runs into the gap between a lead and a patient. In New York City it hurts more, for a few reasons that stack on top of each other.
Clicks are expensive here. Medical categories in NYC are among the most competitive keywords in the country, so you are paying a premium for every visit. When each click costs real money, wasting spend on the wrong campaigns is not a rounding error, it is the difference between a channel that funds the practice and one that quietly drains it.
Patients do not always show. A booked appointment in Manhattan is not a completed one. No-shows and cancellations mean the conversion your ad account celebrated at booking never turned into revenue, and the account has no idea.
Practices here run on the phone. A large share of New York patients call rather than fill out a form, especially older patients and anyone booking something urgent. If your calls are not tied back to the ad that produced them, a big piece of your best-performing spend is invisible.
Many practices have more than one location. Attribution that cannot tell which location a patient chose cannot tell you which campaigns to scale for which office.
What your account is actually counting
Here is the thing most setups get wrong. Google Ads counts what you tell it to count, and by default that is a form submit, a button click, or a phone-number tap. Every one of those is treated as a conversion of equal value. None of them knows whether the person became a patient who showed up and paid.
So the account optimizes toward whatever produces the most cheap conversions. The campaign that generates a flood of low-intent form fills looks like a winner. The campaign that brings in fewer leads who actually book and pay looks expensive, so you cut it. The dashboard looks efficient the whole time. The revenue disagrees. Google is optimizing toward the wrong finish line because that is the only finish line it can see.
There is an even simpler version of this trap. On more than one practice account I have found the conversion marked as the important one turn out to be the button tap, the click on "book now", not a booking that actually happened. The two events had nearly the same name, one suffix apart, and the button version had been set as the key conversion years earlier by someone no longer around. The tell is easy to check: count how many of that conversion the account recorded, and compare it to how many appointments your system actually created in the same period. If the ad account shows several times more, it is counting intent, not patients. Before you trust any conversion, sanity-check it against the real number of bookings in your system.
The fix: count the patient, not the form
The way out is to feed real outcomes back to Google Ads, a setup usually called offline conversion tracking or a closed-loop attribution setup. The shape of it is simple.
You capture the Google click id (the gclid) when a lead arrives, and store it
on the lead record. You wait for the real outcome in your booking system or EHR,
the patient booked, showed, or paid. Then you upload that outcome back to Google
Ads, matched by the click id, with the value you actually collected. Now the
account can learn which clicks turn into patients, not which clicks turn into
forms, and once enough real value has flowed you can move bidding from lead
count to revenue.
One thing to watch, and it bites hardest in medicine: the click id and the uploaded conversion each have a limited time window. When weeks pass between the click and the paid visit, an upload can be accepted and still not counted, because it arrived outside that window.
The symptom is quiet, the upload runs, there are no errors, and the conversion total simply does not move. It is worth checking the window on the specific conversion action rather than trusting the default. And uploading real revenue only changes what Google does if bidding is set to use it: on a manual bidding strategy the conversion value is ignored entirely, so the numbers look right in reports while budget does not move.
I walk through exactly how this was built on a real account in the offline conversion loop case study, and the service that delivers it is patient conversion tracking.
Do not lose the phone calls
Because New York practices lean on the phone, call tracking is not optional here, it is half the picture. A call should carry the same click id as a web lead, so a phone booking and a web booking land in one attribution model instead of two disconnected ones. When calls are tracked as their own conversion action and matched by a hashed phone number, one patient is never counted twice, and the campaigns that drive your best phone leads finally get credit.
Keeping it HIPAA-conscious
For a medical practice this only works if patient privacy is respected, and it can be. Only three things ever need to leave your system: an anonymous click id, a value, and a timestamp. The phone number used for matching is hashed, and no patient record is persisted into the marketing layer. GA4 is not HIPAA compliant and Google will not sign a BAA for it, which is precisely why protected data stays out of analytics entirely and only non-identifying signals move between systems. You get revenue-level attribution without moving protected health information around.
What good looks like
A practice with this in place stops guessing. You can see which campaigns, which keywords, and which locations produce patients who show up, and you can move budget toward them with confidence instead of toward whatever fires the most tags. The phone and the web live in one model. Bidding chases revenue. And when someone asks why marketing spend went up, you have a number that ties spend to patients, not a screenshot of green graphs.
If you run a Manhattan or New York City practice and your ad account looks fine but the new-patient numbers do not, that gap is measurable and fixable. Here is how I work with New York practices, and the broader approach lives under marketing analytics. Start with an audit of what your account is actually counting, before you spend another dollar on the wrong campaigns.
Tags
Frequently asked questions
Why does my NYC practice's Google Ads look efficient but revenue stays flat?
Because the account is optimizing toward form fills and clicks, not patients who showed up and paid. In a competitive New York market that fills the dashboard with cheap conversions while the campaigns that produce fewer but real patients get starved. Until you feed real outcomes back to Google Ads, the platform is bidding blind and so are you.
How do you tie Google Ads spend to actual patients for a New York practice?
You capture the Google click id when the lead comes in, wait for the real outcome in your booking system or EHR (booked, showed, paid), then upload that outcome back to Google Ads matched by click id. That closes the loop, so bidding learns which clicks turn into patients instead of which clicks turn into forms.
Is patient conversion tracking HIPAA compliant?
It can be done HIPAA-conscious. Only an anonymous click id, a value, and a timestamp leave your system, phone numbers used for matching are hashed, and no patient record is persisted into the marketing layer. GA4 itself is not HIPAA compliant, which is exactly why protected data is kept out of it.
Do I need to be in Manhattan to work with you?
No. The work is delivered and verified remotely, on New York hours. The measurement and ad-account work happens online anyway, so there is no walk-in office and no travel priced into the quote. The offline conversion loop on this site was built for a New York City practice.
How long does it take to set up conversion tracking for a practice?
Usually two to four weeks, depending on how clean the CRM or EHR data and campaign structure are. The audit and click-id capture are typically live in the first week, and the first week of any project is refundable.
Need something like this built?
Free 15-min discovery call. I'll listen, ask honest questions, and tell you if I can help.