Skip to main content
Patient Acquisition Media

The one-screen CRM setup for hair transplant clinics

Cost per attended consult in one screen. The exact CRM, pixel, CAPI, and offline-conversion setup that makes the number real, not aspirational.

Sarvpriya Shrivastava
Sarvpriya ShrivastavaPublished 29 September 20263 min read

Almost every post on this blog ends with the same demand: pull cost per attended consult in one screen, split by market, tracked weekly. Nobody does. Not because the tooling is missing, but because nobody sat down for one afternoon to wire it end to end.

Here is the afternoon.

The five events that have to fire

A clinic funnel has five events. Most accounts only track the first two, then guess the rest.

  1. Lead — form submitted or WhatsApp thread opened.
  2. Booked — consult slot held on the calendar.
  3. Attended — patient sat in front of the surgeon.
  4. Quoted — a specific price given for a specific plan.
  5. Closed — deposit taken for the surgery date.

If any of those five is not a discrete event in your CRM with a timestamp and a lead ID, you have no funnel. You have vibes.

Capture the click IDs at the door

The single biggest fix in almost every account we take over is capturing gclid and fbclid on the form, storing them against the lead, and passing them back to the ad platforms when the downstream event fires.

  • Hidden fields on every form. gclid, fbclid, utm_source, utm_campaign, utm_content.
  • Read them from the URL on page load, keep them in a first-party cookie for 90 days, write them into the form submit.
  • WhatsApp click-to-chat links carry a ref parameter with the same values, parsed on the CRM side.

Without click IDs you cannot upload offline conversions later, and offline conversions are the whole point of this exercise.

Server-side conversions, deduplicated

Browser pixels miss 20 to 40% of events on iOS Safari and every ad-blocker install. Server-side is not optional in 2026.

  • Meta CAPI and Google Enhanced Conversions, both fired from your CRM or a lightweight webhook worker, not the browser.
  • One event ID per event, sent from both the pixel and the server, so Meta and Google can deduplicate.
  • Test with the platforms' event-match tools before you trust the numbers. A CAPI setup that double-counts is worse than none at all. See the Meta playbook on that specific trap.

Push attended and closed back to the platforms

This is the part that turns your ad platforms from CPL machines into CPA machines.

When a consult is marked attended in the CRM, upload the event to Meta and Google against the stored click ID. Same for closed. Meta calls it Offline Conversions; Google calls it Offline Conversion Import. Both are free, both take a webhook, both change how the algorithm buys.

Once the platforms optimise on attended rather than booked, cost per attended drops 15 to 30% inside a month with no other change. The bid model was always capable of finding the right patient; you were feeding it the wrong signal.

The one dashboard

Whichever CRM you use, one screen, five columns, one row per market:

| Market | Leads | Booked | Attended | Closed |

Weekly cadence. Cost per row divided by spend attributed to that market. That is the whole reporting stack. Anything more elaborate than this at your stage is a distraction.

What we ignore

  • Custom-built CRMs. HubSpot, Pipedrive, Close, GoHighLevel all do this out of the box. Building your own is a six-month detour.
  • Third-party attribution tools bolted on top. Triple Whale, Northbeam, etc. are built for ecom. For a service business with five events, they add noise, not signal.
  • Multi-touch attribution models. Last-click is fine at this volume. Multi-touch models eat weeks and change decisions by rounding error.
  • Weekly reports built in Google Sheets by hand. Automate it or it will stop happening in month two.

The number that matters

Cost per attended consult, by market, in one screen, refreshed weekly.

If the setup above takes you more than one afternoon, the CRM is the problem, not the effort. Pick a different CRM. The ceiling on your ad account is set here, not in Ads Manager.

Ready to fill your consultation calendar?

Thirty minutes on your funnel. We audit your ads, your site, and your follow-up before we speak — no pitch.

Cookies on this site

We use cookies to run this site, measure performance, and improve our services. You can opt out at any time from Cookie settings.

Read our Privacy Policy.