Email me

Dental marketing attribution: tracking your ads to booked and completed treatment

On this page
  1. In short
  2. Why lead counts mislead
  3. What revenue attribution measures
  4. How the data flows
  5. What I need from your practice
  6. What changes once it works
  7. Consent and patient data
  8. Sources

Dental marketing attribution is the work of joining your practice management system (PMS) to Google Ads and Meta, so that every pound of ad spend is judged on the consultations it booked and the treatment it produced, not on how many forms were filled in. It's the core of what I build for practices, and the part most marketing suppliers leave out.

I'm Mohammad Fayez, a dental marketing consultant working with UK independent private practices. Below is what the attribution build measures, how the data moves, what I need from you, and where its limits are. The method itself, stage by stage, is written up in measuring marketing against booked revenue.

Why lead counts mislead

A lead is an enquiry: a form, a call, an online booking request or a message. Ad platforms and most agency reports stop counting there, because that is the last thing the website can see.

The trouble is that enquiries vary enormously. One campaign can produce plenty of cheap enquiries that never book. Another produces fewer, dearer enquiries that turn into implant cases. Judged on cost per lead, the first looks better. Judged on patients, it's the one losing money. I set out the arithmetic on why cost per lead misleads practices, and the number I use instead on what each booked consultation cost.

It also matters for bidding. Google Ads and Meta both use automated bidding that spends your budget chasing more of whatever you tell them counts as a result. If that result is a form fill, they will find more form fillers. They won't find more patients unless they are told which form fillers became patients.

If you're looking at campaigns to decide whether the marketing paid for itself, lead counts can't answer it. Only the practice system can.

What revenue attribution measures

Revenue attribution follows a patient through the stages your practice system records and links each stage back to the marketing that started it.

StageRecorded inWhat attribution adds
EnquiryWebsite, call tracking, booking toolThe ad click or campaign behind it
Consultation bookedPractice diaryWhich campaign produced the booking
Consultation attendedAppointment statusWhich campaign produced a real patient
Treatment acceptedTreatment planWhich campaign produced a case
Treatment startedAppointment bookWhich campaign produced a start, the result Google Ads receives
Treatment completed and paidInvoices and paymentsThe revenue each campaign produced
Returning patientPatient historyLifetime value by source, over time

What it produces for you is a monthly view of spend, booked consultations, attended patients and revenue by campaign, with the share of new patients it can trace stated alongside. What that report looks like is on what a dental marketing report should show. I do not publish performance figures from client work, and I would be wary of anyone quoting "typical" results without saying where the figure comes from. The website side of the picture, what GA4 can and can't answer, is covered in GA4 for dental practices.

How the data flows

The build has three moving parts: capture the click, join it to the patient, and send the result back.

Capture. When someone clicks a Google ad, Google adds an identifier to the link called the GCLID (Google click identifier). A booking form built for it stores that identifier alongside the enquiry, with the visitor's consent. Calls from ads are tracked separately; see call tracking for dental practices. Third-party booking widgets often lose the identifier, which is covered in tracking online bookings in GA4 and Google Ads.

Join. Your practice system is the software that runs your diary, records and billing. On a schedule, the build reads which enquiries became booked, attended and paid appointments, and matches them to the stored click. What that looks like depends on your software. For Dentally practices it's set out in tracking Dentally bookings to your ads; for EXACT users, in joining Software of Excellence to your ad accounts. The UK practice software comparison shows what each system allows.

Send back. Google Ads accepts results that happen away from the website through offline conversion import: you upload the click identifier, the conversion time and a value, and Google attributes it to the original click.1 Enhanced conversions for leads adds matching on a scrambled (hashed) email or phone number collected on your site, which helps when the click identifier is missing. Google now calls the older file import by click identifier a legacy feature and recommends enhanced conversions for leads instead.2 Meta has an equivalent server route, the Conversions API,3 but Meta restricts health information, so what a dental practice may send there is much narrower. I explain those limits on the Meta Conversions API page.

What I need from your practice

Attribution fails for practical reasons more often than technical ones. Before I start, these need to be in place or agreed.

WhatWhy it matters
Access to your practice system, read-only where the software allowsNo access, no revenue attribution. It is the whole join
Ownership of your Google Ads, Meta, analytics and tag manager accountsResults should be sent into accounts you own and keep
A booking route that can carry a click identifierSome booking widgets drop it; I may need to change the route
Calls from ads trackedPhone is often the biggest enquiry channel for a practice
Reception recording source and consent consistentlyManual bookings with no source are lost to the report
A named person at the practice who answers questions within a few daysSetup stalls without it
A decision-maker for data protectionThe practice is the data controller, and signs off the lawful basis and patient wording

If your front desk struggles to follow up enquiries, fix that alongside the build. Attribution will show the problem clearly, but it can't solve it. The page on what happens after the enquiry explains why.

What changes once it works

Three things change, and none of them is a promise about numbers.

You see cost per patient, not cost per lead. For each campaign you can see booked consultations, attended patients and revenue, with the untraced share stated. Budget decisions stop being arguments about lead quality.

Bidding can aim at patients. Booked and attended consultations and treatment starts go back to Google Ads within its upload window (90 days for offline import1); treatment completed later is measured in the practice's own report. When Google Ads receives those results against clicks, its automated bidding can be pointed at those results instead of form fills. It needs enough results to learn from (Google's own requirement for target return on ad spend on Search is at least 15 conversions in the past 30 days4), so low-volume treatment lines may stay on reporting only. That trade-off is part of running Google Ads for a practice.

Problems get located. If enquiries rise and bookings don't, the issue is at the front desk or in lead quality, not the ad account. If bookings hold and attendance falls, it's reminders or booking friction. Each stage has an owner.

What it won't do: it can't tell you which patients would have come anyway, it can't trace every patient, and it can't lift a campaign that is limited by ad rank or local competition rather than bidding. I say so up front, and the report says so every month. Whether marketing caused a booking, rather than sitting alongside it, takes a different method; see incrementality testing.

The limits to plan for:

  • Phone privacy. A phone call carries no click identifier, so callers are matched by call tracking and, where lawful, by number. Some will never match.
  • Manual bookings. Patients who ring and are booked by reception keep their link only if the source is recorded.
  • Cross-device journeys. Clicking on a phone and booking on a laptop breaks the click link. Hashed contact matching recovers some of these, not all.
  • Consent. Patients who decline are not tracked. That is correct, and it lowers coverage.

To see what else an engagement covers, see what an engagement includes.

Dental data is health data. Under UK GDPR, health data is special category data and needs a lawful basis plus an extra condition to process.5 Appointment and treatment information can reveal a person's health, so I treat everything that comes out of the practice system that way.

My position, as a rule for the build:

  1. Nothing clinical is sent to an ad platform. No treatment names, notes or conditions. Google is told a conversion happened, when, and what it was worth. Conversion names are generic.
  2. Consent is recorded per patient and checked before anything is sent. Advertising tags on the website wait for cookie consent; see cookie consent on dental websites. Uploads check the patient's recorded consent.
  3. Measurement isn't advertising. Patients can agree to measurement without agreeing to be targeted. Google's upload format has separate consent fields for sending user data and for personalised advertising, and I set the second to denied.6
  4. The practice decides. You're the data controller. I draft the data protection impact assessment, patient wording and reception script; you sign them off.
  5. Meta gets less. Meta's terms restrict health information, so Meta gets two stage events only: a booked and an attended consultation, under generic names, with hashed identifiers and only for patients whose explicit consent is recorded. Meta can restrict or reject even those for a health business,7 and if it does, I measure Meta patients inside the practice instead.

If you want to know whether your practice could be joined up this way, email me at [email protected] with the name of your practice system and your monthly ad spend. The first look costs nothing: I review your site, ads and local results from the outside and reply with what I find. I will tell you what is possible with your setup, including when the answer is "not yet". Terms on this page are defined in the dental marketing glossary.

Sources

  1. Google Ads Help, "Import conversions from ad clicks into Google Ads using files (legacy)". https://support.google.com/google-ads/answer/7014069, accessed 1 October 2026. ↩ ↩2

  2. Google Ads Help, "About enhanced conversions for leads", https://support.google.com/google-ads/answer/15713840, and "Import conversions from ad clicks into Google Ads using files (legacy)", https://support.google.com/google-ads/answer/7014069. Both accessed 1 October 2026. ↩

  3. Meta for Developers, "Conversions API". https://developers.facebook.com/docs/marketing-api/conversions-api, accessed 1 October 2026. ↩

  4. Google Ads Help, "About Target ROAS bidding". https://support.google.com/google-ads/answer/6268637, accessed 1 October 2026. ↩

  5. Information Commissioner's Office, "What is special category data?". https://ico.org.uk/for-organisations/uk-gdpr-guidance-and-resources/lawful-basis/special-category-data/what-is-special-category-data/, accessed 1 October 2026. ↩

  6. Meta Business Help Centre, "Understand data sharing restrictions based on data source categories". https://www.facebook.com/business/help/511197658391698, accessed 1 October 2026. ↩

In this section

Talk to me about your practice

Send me your website address, the area your patients come from and the treatments you want more of. The first look is free, and I reply personally.

[email protected]