Report the Clinic Funnel by Original Lead Cohort, Not Today’s Totals
A clinic funnel should group every downstream stage by the original lead cohort, then show how complete that cohort is on the report date. Today’s totals mix new forms with older bookings, later appointments, and treatment decisions. That mixture can make a campaign look better or worse simply because outcomes arrive on different days.
The original lead cohort is the set of eligible form submissions created in the same declared period. Booking, attendance, and acceptance remain attached to those leads even when they occur later. The report needs both the cohort start and a snapshot date, so readers can distinguish a weak result from one that is still developing.
Why do today’s funnel totals mislead?
Spend is available quickly, but clinic outcomes mature at different speeds. A form may become a booking later. The appointment may sit weeks ahead, and acceptance may be recorded after attendance. A dashboard that divides today’s accepted cases by today’s forms compares unrelated groups of people.
Google’s guide to conversion delay makes the same timing problem visible inside Ads. It says recent performance can appear weaker because cost is fully reported while some conversions have not arrived. Depending on the configured conversion window, conversions can be reported up to 90 days after the click. That is a Google reporting fact, not a universal clinic maturity period.
Before building a cohort report, use a stable clinic booking outcome taxonomy. A status such as booked, attended, or accepted must mean the same thing across the selected period. Otherwise, the cohort method preserves inconsistent definitions more neatly without fixing them.
What should define the original lead cohort?
Choose the earliest eligible clinic-owned lead event that the report can reproduce, usually an accepted form submission. Assign it a cohort period from its original creation timestamp. Do not move the lead into a new cohort when someone books, attends, reschedules, or accepts treatment.
| Field | Purpose | Rule |
|---|---|---|
| Opaque lead ID | Joins later events without using names in the report | Stable for the lead lifecycle |
| Original lead time | Assigns the cohort | Never overwritten by a later stage |
| Cohort period | Groups comparable leads | Declared timezone and calendar rule |
| Snapshot time | Shows when counts were observed | Stored for every report run |
| Stage timestamps | Measures operational delays | Keep booking, attendance, and acceptance separate |
State eligibility rules beside the cohort. Tests, duplicates, spam, unsupported locations, and other excluded records need explicit treatment. If the clinic changes a rule, version it. Do not rewrite an old cohort silently, because readers will not know whether performance changed or the denominator moved.
How do Google’s ad-query and conversion-time views differ?
Google Ads can show results against different event times. Its attribution-report documentation says attribution reports use conversion time, while standard Campaigns reporting commonly assigns a conversion to the ad query before the click that led to it. The Campaigns page also offers columns reported by conversion time.
This distinction can shift the date where a conversion appears without changing the underlying conversion. Exported clinic reports should label the Google time basis used for spend and conversion columns. Do not call a Campaigns table dated by the ad query preceding the click a clinic lead cohort unless internal rows use the original lead timestamp.
The clinic report has its own anchor: the original eligible lead. The Campaigns page’s ad-query time locates the interaction before the click; conversion time locates the tracked action. Neither automatically groups booking, attendance, and acceptance under the clinic’s original lead cohort. That join is an internal reporting method.
How should each funnel stage be joined?
Keep one stable lead key through the internal flow. A booking record points back to the lead. Attendance points to the eligible booking, and acceptance points to the attended case under the clinic’s definition. Preserve the first valid stage time and record later corrections instead of replacing the history without a trace.
original lead cohort
-> eligible form submitted
-> eligible booking created
-> consultation attended
-> case accepted
Rescheduling needs a declared rule. The lead remains in its original cohort, while the current appointment time can change. Cancellation and rebooking should not create a second lead unless the clinic’s documented business rule treats the later request as new demand. The appointment-source and marketing-source distinction also stays attached without changing the cohort anchor.
Which rates belong in the report?
Show counts before rates, then name every denominator. The following formulas are editorial reporting guidance, not Google Ads calculations. Apply them only to eligible records joined to the same original lead cohort and observed at the same snapshot.
booking rate
= eligible booked leads / eligible original leads
show rate
= eligible attended consultations / eligible bookings
acceptance rate after attendance
= accepted cases / eligible attended consultations
end-to-end acceptance rate
= accepted cases / eligible original leads
Do not multiply or compare rates that use different filters. For example, a show rate based on all clinic bookings cannot explain campaign performance if the cohort includes only form leads. The campaign show-rate method explains how to retain aggregate attribution without putting appointment details into an advertising payload.
Calculate a rate only when its declared denominator is greater than zero. Show N/A when a cohort has no eligible leads, bookings, or attended consultations for that rate. Keep the zero count visible, but do not present an undefined ratio as 0%.
How should the clinic define cohort maturity?
Maturity comes from the clinic’s observed time to each stage. Measure lead-to-booking, booking-to-appointment, and attendance-to-acceptance delays across older complete cohorts. Select and document a review window that matches the business question. A cohort can be mature for booking but still immature for attendance or acceptance.
cohort age
= snapshot time - end of original lead cohort period
stage maturity
= cohort age compared with the clinic's documented observed-delay window
Google recommends ending one conversion-delay report at least 30 days ago, or longer when the account uses a longer conversion window. That instruction concerns Google Ads data completeness. It must not become a blanket 30-day clinic rule. Appointment lead time and follow-up practice can require a different window, established from clinic records.
What should the finished cohort table show?
Give each cohort one row per snapshot or preserve a snapshot history. Include original leads, bookings, attended consultations, accepted cases, stage rates, cohort age, and maturity labels. Add spend and marketing dimensions only when their time basis and attribution rule are clear.
| Cohort | Snapshot | Leads | Booked | Attended | Accepted | Maturity |
|---|---|---|---|---|---|---|
| Original lead period | Report cutoff | Eligible count | Joined count | Joined count | Joined count | Booking, attendance, and acceptance labels |
Keep immature rows visible, but do not rank them as if they were complete. A simple label such as developing, mature for booking, or mature through acceptance is more honest than filling missing outcomes with assumptions. If forecasts appear, place them in separate columns and identify the method.
How should teams review the report?
Compare cohorts only after checking definition version, source coverage, snapshot date, and maturity. Investigate changes through counts first. A falling rate might come from fewer downstream events, a larger denominator, a late data import, or a status-rule change.
Save every report with its retrieval time and source status. Reopen prior cohorts when delayed outcomes arrive, but retain the earlier snapshot for audit. The most useful meeting question is specific: did the mature cohort produce fewer bookings, weaker attendance, or lower acceptance under the same definitions?
Frequently asked questions
Is an original lead cohort the same as a Google Ads click cohort?
No. The clinic cohort starts with its declared eligible lead event. The Campaigns page can use the ad-query time preceding the click or columns by conversion time. Record that choice separately and do not substitute it for the original lead timestamp.
Should today’s accepted cases be divided by today’s form leads?
No. The groups usually contain different people at different funnel ages. Join each accepted case back to its original eligible lead cohort, then calculate the rate for that cohort at a stated snapshot.
Does Google require a 30-day clinic maturity window?
No. Google describes a 30-day or longer date-range check for its conversion-delay reporting. Clinic maturity must come from observed booking, appointment, and acceptance delays. Document a separate window for each stage when needed.
Can an immature cohort remain in the report?
Yes. Show its current counts and label it clearly. Do not compare or rank its incomplete rates beside mature cohorts without explaining the difference. Keeping snapshots lets readers see how the cohort developed.
References
- Google Ads, About attribution reports, retrieved August 16, 2026, https://support.google.com/google-ads/answer/1722023?hl=en
- Google Ads, Find out how long it takes for your customers to convert, retrieved August 16, 2026, https://support.google.com/google-ads/answer/6239119?hl=en
Related articles
Does a BAA Let a SaaS Vendor Benchmark One Clinic Against Another?
No, not by itself. A business associate agreement can authorize a SaaS vendor to perform defined services with protected health…
No-Show Rate by Original Booking Source: An Internal Reporting Formula
Calculate no-show rate within each original booking-source cohort. Use finalized no-shows as the numerator and finalized attended…
How to Preserve Original Marketing and Booking Source After a Reschedule
A reschedule should change the appointment time and workflow status without rewriting how the booking was first acquired or where it first…