Sessions billed, not inquiries
Rank channels by care actually delivered rather than appointments booked.
Marketing attribution for Mental Health Clinics
Match billed sessions and completed courses of care to the inquiries and campaigns that produced the patient.
$158,400 66% of $240,000 paid
The blind spot
Inquiry volume is easy to generate and no-show rates are high. A first appointment booked is not care delivered, and the difference between channels on that measure is substantial.
What you get
Rank channels by care actually delivered rather than appointments booked.
Run over a longer range and the whole course traces to the acquiring channel.
A contact detail, an amount and a date. Nothing about why someone attended.
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 | % |
|---|---|---|---|---|
| Google Ads | 142 | $67,200 | 28% | |
| Physician referral | 118 | $62,400 | 26% | |
| Meta Ads | 64 | $28,800 | 12% | |
| Direct / Unknown | 161 | $81,600 | 34% |
Mental health services have high no-show and early-dropout rates, and both vary sharply by channel. A campaign producing cheap bookings that do not attend is worse than one producing fewer that do.
Ranking on billed sessions removes the ambiguity, and running the report across a course of care shows which channels produce patients who complete rather than start.
Physician and employer referral produce a large share of patients and are usually treated as unmeasurable, which quietly overstates advertising.
Added to the lead file, with each client tagged by referrer, referral becomes a channel like any other — including which referrers produce clients whose care runs its course.
One client in weekly therapy for eight months is worth more than thirty intake assessments that go nowhere, and the two are indistinguishable on the day the inquiry arrives. Every measurement a practice has access to stops at the intake: the form, the call, sometimes the first booked appointment. The thing that determines whether the practice can pay its clinicians is what happens between session four and session thirty, which nothing in the advertising account will ever observe. The result is a practice buying intakes and hoping for courses, with no way of telling which of its sources supplies the second thing rather than the first.
Sources differ sharply on this and not in the direction people assume. Inquiries from a clinician's recommendation or a professional directory frequently produce longer courses than inquiries from a social advert promising availability this week, and the cost per inquiry usually runs the other way. A practice ranking channels on inquiries received will therefore fund the shorter courses, and will experience the result as a caseload that churns rather than as a marketing error. Owners describe the symptom accurately and diagnose it in the wrong department, usually by asking the clinical team to improve engagement when the problem arrived with the inquiry.
Running the report over six or twelve months rather than one puts the annuity in view. Each session exported as a row against the client's contact detail matches that client and therefore the inquiry that produced them, so the channel ranking becomes revenue by source across the whole course of care rather than clients per dollar. On that comparison a source that looks expensive per new client can turn out to be the cheapest.
Remote sessions changed the geography of this business permanently. A practice licensed across a whole state can see clients three hundred miles away who will never visit the building, while its advertising is still configured around a radius drawn from the parking lot because that is how it was set up. The result is spend concentrated where the office is and demand available where it is not, and no report inside an advertising account can show the difference, because the platform only knows where it delivered an impression.
What it looks like in the data is a source that appears mediocre overall and is in fact excellent in three ZIP codes and poor in the rest. That is actionable and invisible in a blended figure. A location breakdown can show one site carried by marketing and another barely reached by it, and that pattern would not occur to anybody looking at a single national figure. It changes what the next campaign should be told to do, and where.
A location column mapped as Location shows revenue by site, with how much of each traces to a channel. It does not rank channels within each, so the question it answers is whether a site's revenue is being reached by marketing at all, not which channel produces its clients. A delivery-mode or modality column is not one to add: how somebody receives therapy is health information, and CloseRev signs no business associate agreements. Demand from places the practice has not built anything yet shows up too, which is a better footing for a decision about a second site than a hunch about a neighborhood.
Between a full-fee private client, a panel rate negotiated with an insurer, an employer-funded program with its own tariff and a reduced fee agreed on a sliding scale, the same fifty minutes can be worth very different amounts. Practices hold all of these deliberately and for good reasons. What they usually do not hold is any sense of which advertising sources deliver which, and the mix is not even — campaigns that lead on coverage attract people for whom coverage decided the choice.
The practical effect is that two channels with identical cost per inquiry can differ by a third in revenue per session delivered, and the practice experiences this as a vague feeling that one source brings clients who are harder to schedule or slower to pay. Ranking channels on session counts hides it completely. Ranking on collected revenue makes it a number, and once it is a number the decision about where to point the budget stops being a preference. The difference compounds across a course of care, so by session twenty the two channels are not remotely comparable on anything except the headline they were bought on.
Export what was collected rather than what was charged, and nothing describing the fee arrangement: whether somebody pays in full, through an insurer, through an employer program or on a sliding scale is health information, so a fee-type column stays out of the file. A sliding-scale client is not a worse client and the report is not an argument for turning anyone away. Collected revenue per channel already reflects the mix each source delivers, and the assumption of an even spread may turn out to have been wrong for years.
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
The match needs a contact detail, an amount and a date. No diagnosis, no notes, and none of that should be in the export.
Which the report makes visible: booked-but-unbilled appointments simply do not match, so a channel producing them ranks accordingly.
Upload the referral list and they become measurable rather than invisible.
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 outpatient mental health and psychiatry practices — 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.
Billed sessions: a patient contact email or phone, the amount, and the date. Nothing clinical.
Yes, implicitly — unattended appointments never appear as billed revenue, so the channel's revenue per inquiry reflects it.
Yes — add referred clients to the lead file, each tagged with the referrer as the source.
Not with a column: which clinician or modality somebody saw is health information, and it stays out of a file sent to a vendor that signs no business associate agreements. A location column mapped as Location is the breakdown to use.
A contact detail, an amount and a date. No notes, no diagnoses, no session detail — the match does not read them and the export should not carry them.
No.
Yes. Most outpatient mental health and psychiatry practices begin with last year, because it is the cheapest way to find out whether the exercise tells them anything.
Billed rows analyzed in a calendar month. Inquiry rows do not count.
Each session as its own row is simplest. Every session carrying the client's contact detail credits the inquiry that produced them, so the channel ranking shows revenue and the number of sessions for every source. Each row counts as one sale and uses the monthly record allowance.
Not with a column: how somebody receives care is health information, and it stays out of a file sent to a vendor that signs no business associate agreements. A location column mapped as Location is the breakdown to use.
Export the amount actually collected. The report is not an argument about who to see; it shows which campaigns fund the capacity that makes a reduced fee possible, which is a more useful thing to know.
Export them with the tariff actually received and nothing marking them as employer-funded: how somebody's care is paid for is health information. Those clients often arrive through a route of their own, so tagging that route as a source in the lead file keeps it out of Direct / Unknown.
Include them if you collect them, since the money is real. They are small enough not to change a ranking, but excluding them while including everything else makes the totals disagree with the accounts.
They remain unmatched leads, cost nothing against your record limit, and count toward the inquiry-to-client rate for that source. A channel with a poor rate is often a capacity problem rather than a targeting one.
CloseRev does not sign HIPAA Business Associate Agreements and is not built for protected health information, and therapy records are among the most sensitive there are. Upload only payment data — a phone number or email, the amount collected and the date — never diagnoses, session notes, assessments or reasons for referral. If your clients' phone numbers and emails count as PHI under your obligations, talk to your compliance lead before using CloseRev.
Nearby
Match completed admissions and their value to the calls and campaigns that produced them — in a market where the cost per call is among the highest anywhere.
See how it worksMatch billed episodes of care to the inquiries, referrals and ads that produced them — because one visit is not an episode.
See how it worksMatch your billing export to your call and ad data, and see which channels produced procedures that were paid for rather than inquiries that were not.
See how it worksWhere your sales already are
Export collections from DrChrono, upload the leads behind them, and rank channels on what was actually received.
What to exportExport your bookings, match them against closed sales, and find out which appointment types and which channels produced revenue.
What to exportExport collections from eClinicalWorks, upload the sources behind first visits, and rank channels on the patients who stay.
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 articleAttribution demos are unusually easy to pass, because the product is a number and any number looks convincing on a slide. These are the questions that separate a system that measures from one that produces confident output — including the ones we would rather you did not ask us.
Read the articleStart today
Upload two exports and see your real revenue by channel in minutes. 14 days free, no card.