Started cases, not consults
Rank channels by treatment actually started and its contract value.
Marketing attribution for Orthodontists
Match started treatment plans and their contract value to the consultations and ads that produced them.
$285,600 68% of $420,000 paid
The blind spot
Free consultations are cheap to fill and most do not start. A started case is worth five thousand dollars over two years, and consultation counts cannot tell you which channel produces them.
What you get
Rank channels by treatment actually started and its contract value.
A consultation in spring that starts in autumn still traces to the ad behind it.
Rank on the full plan value rather than the deposit, which is the figure that matters.
A worked example
Not impressions, not leads, not cost per click. Closed revenue, by the channel that produced it, for a period you choose — with the portion we could not trace shown rather than quietly shared out across your paid channels.
| Channel | Sales | Revenue | Share | % |
|---|---|---|---|---|
| Meta Ads | 41 | $142,800 | 34% | |
| Google Ads | 29 | $109,200 | 26% | |
| Email marketing | 11 | $33,600 | 8% | |
| Direct / Unknown | 38 | $134,400 | 32% |
Orthodontics runs on free consultations, which means marketing is optimized for something the practice gives away. Conversion from consultation to started case varies enormously between channels, and nothing in a cost-per-lead report reveals it.
Ranking by started case value shows which channel produces families who proceed. It routinely turns out that the cheapest consultation source converts worst, and that a more expensive channel is the profitable one.
Direct-to-consumer aligner brands trained patients to shop and compare before booking, which lengthened the decision and increased the number of consultations that go nowhere.
That makes attributing on started cases more important, not less. The consultation count went up; the thing worth measuring did not change.
A case starts with a signed contract worth $5,600 and is paid over twenty-four months. The practice therefore holds two entirely honest numbers for that patient: the contract value on the start date, and a stream of installments stretching into the year after next. Both are in the practice-management system, both are used internally for different purposes, and choosing between them changes which channel appears to be winning by a margin large enough to move a budget. Neither number is more honest than the other; they are answers to different questions, and the practice has usually never been asked which question it is trying to settle.
For marketing, the contract value on the start date is the better instrument. It lands close to the decision the advert influenced, it is complete rather than partial, and it lets a campaign be judged within a quarter instead of two years later. Installment-based reporting has the opposite property: every month's ranking is dominated by cases started long ago, so a campaign switched on in March barely registers until the following year, which is far too late for the decision it was supposed to inform.
There is a caveat worth stating plainly, because it is where this goes wrong. Contract value is what was agreed, not what was collected, and practices with meaningful write-offs or defaults will overstate every channel by roughly the same proportion. If that proportion differs by source — and with heavily financed cases it sometimes does — the honest approach is a second import built from collections, compared against the first. Running both once a year costs an afternoon and settles the question for that practice rather than in general.
Interceptive treatment and recall create a lag no advertising system was designed for. A seven-year-old is seen, nothing is started, and the family is placed on observation. Three years later the same family returns and a full case begins. The inquiry that produced them happened before the child had adult teeth, and any measurement built on sessions, cookies or platform-reported conversions lost that thread within ninety days. The advert gets credited with a free consultation and nothing else, forever. Meanwhile the family has been in the practice's system the whole time, under the same phone number, which is the detail that makes the case recoverable.
Matching on the patient rather than the session means the eventual case credits the original inquiry whenever it lands, provided both rows are in the files you upload. That is what makes a historical review worth running here: a practice can upload three years of starts against three years of inquiries and finally see what the observation pipeline was actually worth, without having had anything installed at the time. The records exist because they were kept for billing and scheduling, not for marketing.
Phase I and Phase II cases are the clearest example, and they are best handled by the date range rather than by a column. A source producing a great many early-phase patients is building a pipeline that will convert slowly and predictably, and a source producing adult comprehensive cases is producing revenue this quarter; run over a range long enough to include the second phase, the early-phase source is credited with both. A treatment-phase column would make the split explicit, but what somebody was treated for is health information and stays out of the export. Funding the two from a short-range ranking treats a deposit on the future as though it were cash today, which is how practices end up disappointed by the channel that was quietly doing the long work.
In most practices the general dentists down the road send more cases than any advertising account does, and the relationship is managed on instinct: lunches, a newsletter, a rough sense of who has gone quiet. The referrals are recorded — the front desk asks and writes it down — but that record has never been joined to what those referrals were worth, so a practice knows who sends volume and has no idea who sends cases that start. The two facts sit in the same building and in different files, and joining them has never been anybody's job.
The join is the same one. List each referring practice as a source in the inquiry file and it is ranked alongside Google and Meta on started case value, with the count beside it so a total carried by one large case is obvious. The ranking by value may look nothing like the ranking by volume a practice had in its head, and that at least one relationship everybody assumed was strong is sending observation patients and second opinions.
It changes what the marketing budget is for. If three referrers produce a third of the started value, the argument for another few thousand on search is weaker than the argument for someone spending a day a week on those relationships and the twenty practices near them. Nothing about that conclusion is available from an advertising dashboard, because the advertising dashboard can only rank the things it sells, and the referral network is the part of the practice it cannot see.
Why it matters
"We generated 400 leads" invites an argument. "This channel closed $186,400 last quarter, here is the reconciliation" ends one. The teams that can show closed revenue by channel are the teams that get the next increase approved, because they are asking with evidence rather than with conviction.
Killing spend is politically harder than adding it, because someone always owns the channel being cut. A number that reconciles to the sales export takes the argument out of the room — you are not overruling a colleague's judgment, you are reading the same ledger they are.
Platform-reported conversions do not reconcile to revenue, and eventually someone in finance notices. Reporting built from your own closed-sales export starts from the number finance already trusts, which is why it holds up when it is checked.
Because this reconciles exports rather than tracking visitors, it works on months that have already closed. You are not instrumenting now to learn something in ninety days — you can answer for last quarter today, which is usually when the question is being asked.
Honest answers
Which is why the report ranks on started cases. Unconverted consultations appear as unmatched leads and cost nothing against your record allowance.
The contract value, and consistently. A deposit tells you almost nothing about which channel produces valuable cases.
Any layout works. A contact detail, an amount and a date is all the match needs.
Pricing
The price here is the price on the invoice, plus any sales tax that applies — no per-call, per-minute or per-form fees. Growth usually fits orthodontic practices and clear-aligner providers — thirteen months of history to compare a month to the same month last year, and a PDF you can put in front of whoever holds the budget.
A business scaling ad spend
$49/mo
billed monthly
Questions
Anything else? Talk to us — a person answers, usually the same day.
Started cases: a patient or parent phone number or email, the contract value, and the start date.
Not with a column, because the case type is treatment information. The channel ranking shows each channel's sale count beside its revenue, so a source producing larger adult cases shows a higher value per sale.
Not with a column: the appliance somebody wears is treatment information and stays out of the export. Value per sale in the channel ranking is the signal available.
As long as your data covers. There is no attribution window.
Yes, with a location column mapped as Location: one workspace, one report, a per-site breakdown. Fully isolated data per site needs a workspace each, which is the Agency plan, and those workspaces are reported separately.
No. If you use them, that export is one of the two files.
Yes. Upload a finished period and the report is built from it — the method never depended on instrumentation being in place at the time.
Started case rows analyzed in a calendar month. Consultation rows do not count.
Contract value on the start date, for marketing purposes. It sits near the decision and lets a campaign be judged within a quarter. Installment reporting is dominated by cases that started years ago.
Through the date range rather than a column. Run the report over a range long enough to include the second phase, and the source that produced the early-phase patient is credited with both. A phase column is treatment information and does not belong in the file.
Yes. List each referring practice as a source in the inquiry file and it is ranked beside paid channels on started case value. The volume ranking and the value ranking are rarely the same list.
Export the full amount the practice expects to collect from all parties, or export collections if you prefer certainty over timeliness. The match reads whatever figure you send, so the definition is yours to set once.
They match whenever the case starts, because the join is on the patient rather than a browser session that expired. Upload the earlier inquiry file alongside and the eventual start credits the advert that produced the first visit.
Export what your practice collected from them and the date it started. The treatment they paid somebody else for is not your revenue, and crediting a channel with it would overstate that channel against the others.
CloseRev does not sign HIPAA Business Associate Agreements and is not built for protected health information. Upload only non-clinical billing data — a phone number or email for the responsible party, the amount and the date — never records, x-rays, treatment plans or notes. If your patients' phone numbers and emails count as PHI under your obligations, talk to your compliance lead before using CloseRev.
Nearby
Match your practice-management export to your call and ad data, and see which channels produced treatment that was actually paid for.
See how it worksMatch completed, paid treatments to the inquiries and ads that produced them — including the packages bought months after the first consultation.
See how it worksMatch completed, paid procedures to the inquiries and ads that produced them — including the ones booked six months after the first consultation.
See how it worksWhere your sales already are
Match accepted, completed and collected treatment to the campaigns and calls that produced the patient.
What to exportExport collected production from Curve, upload the inquiries beside them, and rank marketing on what patients actually paid for.
What to exportUse the patients Solutionreach messages as one side of the match and collected production as the other.
What to exportUse NexHealth bookings as your lead file, match them against collected production, and separate the patients you acquired from the ones who rebooked.
What to exportExport call records from Weave, match them against collected production, and find out what the phone was actually worth.
What to exportExport collections from Open Dental, bring the referral source and your other lead files with them, and rank every source on what it collected.
What to exportExport collections from Denticon, upload the leads behind them, and rank sources on the patients the group actually won — office by office.
What to exportFrom the blog
Multi-site healthcare groups usually conclude that attribution is off limits because the data is clinical. It is not, because attribution does not need clinical data. What it needs is a phone number, an amount and a date, and there is a way to handle even those properly.
Read the articleCall tracking answers one question well: which campaign produced the ring. It has no view of what happened after the call ended, which is where the money is decided. This is what the gap costs, and how to close it without replacing the call tracker you already have.
Read the articleEvery attribution vendor quotes a match rate and none of them define it the same way. Here is what the number actually measures, what range is honest for a mid-market business, and the three ways the figure gets inflated before it reaches your slide.
Read the articleStart today
Upload two exports and see your real revenue by channel in minutes. 14 days free, no card.