The four pieces of healthcare attribution
Closed-loop attribution requires four things working together: DNI on inbound calls, click ID capture on forms (GCLID/FBCLID), UTM parameters on every link, and offline conversion uploads back to the ad platforms. Miss any one and the attribution chain breaks.
- DNI (Dynamic Number Insertion) — swaps the phone number on the website based on traffic source
- GCLID — captures the Google Ads click identifier on form submissions
- FBCLID — captures the Meta (Facebook/Instagram) click identifier on form submissions
- UTM parameters — utm_source, utm_medium, utm_campaign tagged on every marketing link
- Offline conversion uploads — sending booked patient events back to Google Ads and Meta
Why most healthcare practices have broken attribution
The single biggest leak in healthcare attribution is phone calls. Most practices run Google Ads driving call traffic but have no DNI in place — so the call shows up in their CRM as 'direct traffic' or 'unknown source.' For practices where 60-80% of new patients call (vs. fill out a form), this means majority of attribution is invisible.
How to implement DNI properly
DNI works by dynamically swapping the displayed phone number on the website based on the visitor's traffic source. Implementation requires three things: a pool of tracking numbers, a JavaScript snippet on the website, and a CRM that captures the source attribution when the call comes in.
- Provision a tracking number pool: typically 5-20 numbers per practice
- Install the DNI JavaScript on the website (one line, async)
- Configure source rules: Google Ads → tracking number A, Meta Ads → tracking number B, direct traffic → main number
- Connect the CRM to capture source attribution on every call
Closing the loop: offline conversion uploads
Once lead data flows in with proper attribution, the next step is sending the booked patient event back to Google Ads and Meta. This 'closes the loop' — the ad platforms now optimize toward booked patients, not just form submissions. Google's offline conversion upload (via API or sheet) and Meta's Conversions API (CAPI) both support this.
What changes when attribution actually works
Practices that get attribution right typically discover their previous decisions were wrong: campaigns producing cheap leads were producing the worst patients (low show rate, low LTV), while seemingly expensive campaigns were producing the most booked patients. Within 60-90 days of clean attribution + offline conversion uploads, most practices see 30-60% CPA improvement on Google Ads and Meta Ads alike.
Common attribution mistakes
Three mistakes consistently break healthcare attribution:
- Last-click attribution — credit goes to the final touch, ignoring earlier influence
- Direct traffic over-attribution — many CRMs lump untagged traffic into 'direct,' inflating its apparent ROI
- Form-only conversion tracking — phone calls are invisible without DNI
- Not uploading offline conversions — ad platforms optimize on the wrong signal
- Not respecting consent and HIPAA — sending PHI to ad platforms is a violation
Inside Velant
Velant ships this entire workflow out of the box — HIPAA-compliant CRM, AI Voice Agent, AI Lead Follow-up, Surescripts-certified ePrescribe, 270/271 eligibility, 837P claims, and closed-loop attribution. Book a 20-minute walkthrough and we'll show you how it runs end to end.
Frequently asked questions
What is closed-loop attribution in healthcare?
Closed-loop attribution ties every booked patient back to the original marketing source that produced them — including phone calls (via DNI), form submissions (via GCLID/FBCLID/UTMs), and downstream events. The loop 'closes' when the booked patient event is sent back to the ad platform as an offline conversion.
Why is phone call attribution important in healthcare?
60-80% of new healthcare patients call rather than fill out a form. Without Dynamic Number Insertion (DNI), those calls show up as 'direct traffic' in analytics and the practice has no idea which ad campaign produced them. DNI fixes this by dynamically swapping the displayed phone number based on the visitor's traffic source.
How do I send healthcare conversion data back to Google Ads or Meta?
Both platforms support offline conversion uploads. Google Ads accepts uploads via Google Ads API or Google Sheets connector, matching on GCLID. Meta accepts uploads via the Conversions API (CAPI), matching on FBCLID or hashed customer data. Important: do not send PHI — send only the click ID and the conversion event.
Is sending booked patient data back to ad platforms HIPAA-compliant?
Yes, if done properly. Send only the click ID (GCLID/FBCLID) and the conversion event type — never the patient's name, DOB, contact info, or any clinical information. The click ID is not PHI; the patient's identity is never disclosed to the ad platform.
Does Velant handle closed-loop attribution?
Yes. Velant captures DNI on every call, GCLID/FBCLID and UTM parameters on every form, ties every lead to a booked patient, and pushes offline conversions back to Google Ads and Meta automatically. PAC by source, by campaign, by keyword is built into the reporting dashboard.
Related reading
- Patient AcquisitionPatient Acquisition Cost: The 2026 Buyer's Guide for Healthcare PracticesHow to measure, benchmark, and reduce patient acquisition cost (PAC) — including realistic 2026 benchmarks for behavioral health, addiction treatment, primary care, dental, and aesthetics practices.
- Patient AcquisitionHow to Respond to Healthcare Leads in Under 30 SecondsHealthcare leads cool 80% within 30 minutes. This guide shows how to build a response system that hits sub-30-second SMS, sub-5-second inbound calls, and full 24/7 coverage — without adding intake staff.