folder_open Analytics & Attribution

Lead tracking for optometry companies in the UK

Martin Marinov Martin Marinov
17 min read
Topics lead-source-attributioncall-trackingwhatsapp-enquiry-handlingcondition-specific-landing-pagesgoogle-business-profile

Which of last month’s enquiries actually ended up in a test chair: the online booking made at half nine on a Sunday night, the call that rang through to voicemail, or the walk-in who left a name on a Post-it by the till? Most practice owners can’t answer that in under a minute. That’s the whole problem, and it’s not a dashboard problem. It’s a definitions problem.

Here’s the cost, in terms you’ll recognise. Your optical assistant is quoting frames to someone who was never going to book a private dispensing appointment in the first place, because the enquiry that came in through your website looked identical to one from a patient chasing a free NHS-funded check. Your test diary has gaps on Tuesday afternoons even though your phone rang eleven times that morning. Marketing spend goes up, the enquiry count goes up with it, and the number of chairs filled barely moves. Nobody can tell you, with any confidence, whether the Google Ads campaign for myopia control consultations is paying for itself or whether it’s just generating calls from parents who were never going to pay privately.

The fix isn’t a bigger CRM or a prettier spreadsheet. It’s treating “enquiry” as the vague, unhelpful word it actually is, and building tracking around the five or six distinct things that word is hiding: an NHS-funded sight test, a private sight test, a contact lens trial, a retinal screening add-on, a myopia consultation for a child, a straight dispensing quote. Each one is worth different money, converts at a different rate, and in some cases carries different rules about what you were even allowed to advertise in the first place.

What’s actually moving behind an optometry enquiry

Start with where an enquiry is born. It comes through one of four doors: a phone call, a WhatsApp message, a booking widget on your site, or a walk-in. Each door needs its own wiring if you want to know what happened to the person who walked through it.

Phone calls need dynamic number insertion, a different tracking number swapped in depending on which ad, keyword, or page the visitor came from, so the call that rings your reception desk arrives already tagged with its source. Without it, every call just shows up as “phone”, and phone is usually your biggest, most valuable, and least understood channel in this trade. WhatsApp is the same story but worse, because most practice management systems still treat it as a side channel rather than a real one, even though a growing number of patients would rather send a message about rebooking than sit on hold. If your WhatsApp enquiries aren’t logged against a source and a lead type, you’re flying blind on a channel that’s only going to grow.

Your booking widget is the easiest to get right and the one most practices get wrong anyway. Every step, test type selected, date chosen, confirmation shown, should fire an event into GA4, not just a generic “form submitted” tag. If your widget can’t tell you whether someone booked an NHS test, a private test, or a contact lens assessment, you’ve already lost the one piece of information that would let you value that enquiry properly. Then there’s the practice management system itself, where the real truth lives: did the booked test actually happen, was it NHS or private, did it convert into a dispensing sale. Reconciling what your ad platform claims as a conversion against what the PMS shows as an attended, billed appointment is the single most useful exercise most practices never do.

Why the claim on your ad decides which lead you’re even allowed to track

Here’s where optometry genuinely differs from most trades running paid media, and it’s worth getting right before you build anything. The Committee of Advertising Practice’s health claims rules apply to eye care the same way they apply to any health-adjacent service: a claim like “our OCT scan detects glaucoma before you notice symptoms” has to be backed by evidence, not just marketing enthusiasm. The General Optical Council expects registered optometrists to advertise in a way that’s accurate and not misleading, and that standard sits above whatever your agency thinks will drive clicks. If a landing page makes a specific detection or health claim and generates a surge of enquiries for OCT add-ons, you need a clean record of exactly which page, which ad, and which claim produced those leads, because that’s precisely what you’d need to show if the claim were ever challenged.

There’s a narrower rule worth knowing too: prescription-only medicines can’t be advertised to the public. If your practice includes an independent prescribing optometrist managing glaucoma with prescribed drops, that’s a genuinely good service to offer, but you can’t build an ad campaign around “come and get your glaucoma medication here”. It needs to be framed as the clinical management service it is, which changes your keyword list and your ad copy more than most owners expect.

Then there’s the NHS General Ophthalmic Services voucher system, and it reshapes the economics of every enquiry you get. A test funded under GOS, for children, over-60s, people on qualifying benefits, diabetic patients, reimburses at a fixed NHS rate that barely covers the optometrist’s time. A private test, often followed by a dispensing sale, can be worth many times that. If your tracking treats an NHS-funded booking and a private booking as the same kind of “lead”, you’ll end up congratulating a campaign for volume when it’s actually just attracting low-margin NHS traffic, while a smaller, quieter campaign bringing in private dispensing enquiries gets cut for “underperforming”. VAT adds another wrinkle: sight tests are exempt, but dispensing spectacles and contact lenses is generally standard-rated. That’s a conversation for your accountant on the detail, but for lead tracking the lesson is simple: tag every enquiry by type at the point of capture, because the type determines the value, the regulation, and sometimes the tax treatment all at once.

If your landing pages are where this breaks down in practice, that’s usually a conversion problem as much as a tracking one. A quick way to see it: HeyLead Insights shows you where visitors actually abandon a booking form, whether it’s at the “NHS or private” question or the calendar step, so you’re not just guessing why the lead type split looks wrong.

Not sure where your funnel leaks?
Get a free marketing audit. We review your search, ads, and landing pages and send back what to fix first.
Get a free audit

What a healthy lead board looks like for a multi-test practice

Picture a two-site practice that’s done this properly. Every enquiry lands in one place tagged with source, lead type, and NHS or private status, inside an hour of coming in. Reception doesn’t have to remember to log it; the booking widget, the call tracking number, and the WhatsApp integration all push it there automatically. From that board, the owner can see, at a glance, that private sight test enquiries from Google Ads are converting into booked appointments at a noticeably higher rate than the same campaign’s NHS-leaning traffic, and that contact lens trial enquiries from Meta are cheap but rarely turn into anything beyond the trial.

Directionally, most well-run practices we look at see something like one in three or four tracked enquiries turn into a booked test once the tagging is clean enough to trust. Of those bookings, the practices with a proper confirmation and reminder sequence, text the day before, a call if there’s no response, see most of them actually show up, where practices relying on a single confirmation email lose a meaningful chunk to no-shows. Those are directional ranges, not a promise, and your numbers will move depending on how much of your book is NHS versus private, but they’re a useful gut check: if your booked-to-enquiry rate is a fraction of that, something earlier in the funnel, usually the claim-to-landing-page match, is off.

A healthy setup also means the owner can trace a dispensing sale back to its original enquiry, not just its booking. That’s the step most practices skip, because it requires linking the PMS record to the marketing source, but it’s the only way to answer the question that actually matters: which channel brought in the patient who spent money, not just the one who turned up for a free check and left.

Detailed view of ophthalmology equipment used for eye examinations in a clinic setting. Photo by Pavel Danilyuk on Pexels
Photo by Pavel Danilyuk on Pexels

The numbers that make a quiet month look busy

Raw enquiry count is the worst offender. A campaign that doubles enquiries while tripling the proportion of NHS-only, benefit-qualifying bookings isn’t a win, it’s a shift in who’s finding you, and it can quietly erode margin while the report looks fantastic. Click volume and cost-per-click sit in the same bucket: cheap clicks that never convert to a booked test are not cheaper leads, they’re wasted spend wearing a nice-looking metric.

Watch out for “leads” that are really just existing patients calling to rebook a routine check. If your call tracking isn’t smart enough to exclude returning patient numbers, every rebooking call inflates your “new enquiry” count and makes your acquisition channels look more effective than they are. Form fills without a phone follow-up logged are another trap: a patient who filled in a contact form but never answered the follow-up call isn’t a lost lead, necessarily, but counting it the same as an attended appointment flatters your top-of-funnel numbers while hiding a real problem in how reception handles follow-up.

And be wary of call duration as a stand-in for call quality. A four-minute call where someone asks about NHS eligibility and hangs up when told they don’t qualify will often outlast a thirty-second call that books a £300 dispensing appointment on the spot. If you’re reviewing calls at all, listen to a sample rather than trusting the length of the recording to tell you anything useful. Agencies that report on impressions, reach, and click-through rate without ever touching booked-and-attended numbers are, in effect, reporting on vanity metrics dressed up as marketing performance, and it’s worth asking any partner you work with to show you the PMS-reconciled version instead.

Building lead tracking that holds up to a GOC inspection and an audit

None of this needs to be complicated to be useful. It needs to be consistent, which is the part most practices struggle to sustain once the initial enthusiasm wears off.

Checklist

  1. 1
    Separate numbers for each channel

    Assign a dynamic tracking number to every major source, Google Ads, Meta, organic search, Google Business Profile, so every call arrives already labelled with where it came from.

  2. 2
    Tag NHS vs private at first contact

    Build the NHS-or-private question into your booking widget's first step and your call-handling script, not as an afterthought at check-in. This single tag does more to explain your margin than any other field you'll capture.

  3. 3
    Fire GA4 events per test type

    Set up distinct booking-confirmation events for sight tests, contact lens trials, myopia consultations, and OCT add-ons, so GA4 can tell you which service each lead actually wanted.

  4. 4
    Log WhatsApp as a real channel

    Route WhatsApp enquiries into the same tagging structure as calls and web forms, including source and lead type, rather than letting them sit in a separate, unreported inbox.

  5. 5
    Match claims to landing pages, and keep evidence

    Any page making a detection or health claim, especially around OCT or glaucoma risk, should link to a single, dedicated page you can point to if the claim is ever questioned under the CAP Code.

  6. 6
    Reconcile weekly against the PMS

    Pull booked appointments from your practice management system each week and check them against what your ad platforms claim as conversions. The gap between the two tells you more than either number alone.

  7. 7
    Track show rate, not just booking rate

    A booked test that never happens isn't a result. Log attendance against each lead type so you can see whether a channel is bringing in people who actually turn up.

  8. 8
    Check NAP consistency across listings

    Make sure your practice name, address, and phone number match exactly across your website, Google Business Profile, and any directory listings, so call tracking numbers don't fragment your local search visibility.

Worth saying plainly: this is ongoing work, not a one-off setup. New ad accounts, a second site, a change to your booking software, any of these can quietly break the tagging without anyone noticing until the monthly numbers stop adding up.

DIY tools for this section

  1. 1Audit your booking page's loading speed and layout, since a slow or clunky NHS-or-private question at step one is a common reason enquiries drop before they're even tagged.
  2. 2Build consistent UTM tags for every campaign and social post so source data arrives clean in GA4, rather than lumped into "direct" or "unassigned".
  3. 3Check that your schema markup correctly describes your services, so search engines and AI answer boxes represent your NHS and private offerings accurately rather than guessing.

If your own tracking currently lives in three different spreadsheets and a till receipt drawer, a proper analytics and attribution setup is the thing that actually closes that gap, not another ad campaign on top of broken measurement.

Prefer to just ask? Message Martin directly on WhatsApp: Chat with us on WhatsApp
Detailed view of optometrist's hand choosing lens from optical kit, highlighting precision in eye care. Photo by Ammad Rasool on Pexels
Photo by Ammad Rasool on Pexels

What reception hears before the attribution report catches up

“We used to think our Facebook ads were our worst performer because they generated the most ‘time wasted’ calls. Turned out those were almost all NHS eligibility questions from one specific ad we’d never bothered to split out. Once we tagged it, the picture completely changed.” - Practice manager, independent optometry group

“Patients don’t distinguish between booking a test and getting a quote for glasses when they message us on WhatsApp. If your system treats those as the same thing, you’ll never know why your dispensing numbers don’t match your enquiry numbers.” - Owner, two-site optical practice

FAQ

Do we really need to track NHS and private enquiries separately? Yes, because they’re worth different amounts of money and often need different marketing claims to attract them. Lumping them together hides which channels are actually profitable.

Can WhatsApp enquiries be tracked the same way as phone calls? They need their own setup, but the principle is the same: tag the source, log the lead type, and reconcile against bookings. Most practices under-invest here even though patient preference for WhatsApp keeps growing.

How do we advertise OCT or retinal screening without breaching ASA rules? Keep any detection-related claim specific, evidenced, and linked to a dedicated page you can defend if challenged. Avoid broad statements implying guaranteed early diagnosis.

What counts as a “lead” for a multi-branch practice? Anything that enters through a tracked door, call, form, WhatsApp, or walk-in logged manually, tagged with source, test type, and NHS or private status, then followed through to booked and attended in your PMS.

How long before this tracking setup gives us numbers we can trust? Expect a few weeks of cleaning up tagging gaps before the data settles, then ongoing attention each time you launch a new campaign or change your booking flow.

Next steps

Start this week by pulling every enquiry from the last 30 days, calls, WhatsApp messages, form fills, walk-ins logged at reception, and marking each one by hand with its source and whether it was NHS or private. It’ll take an afternoon. What you’re looking for is the gap between what your ad platforms are reporting as conversions and what your practice management system shows as actually booked and attended: that gap is where your real answer lives.

If untangling which enquiry type pays for itself, and building tracking that holds up when a claim gets questioned, feels like more than reception can carry on top of everything else, that’s the exact problem HeyLead solves day to day: wiring up call tracking, WhatsApp, booking events, and PMS reconciliation into one view your team can actually trust. Chat with us on WhatsApp.

Work with HeyLead
Free marketing audit, or reach Martin directly:
Get a free audit Connect on WhatsApp · [email protected]