Paid procedures, not enquiries
Channels rank by what was billed, so a channel producing few high-value procedures wins properly.
For Medical Clinics
Match your billing export to your call and ad data, and see which channels produced procedures that were paid for rather than enquiries that were not.
No card required Nothing to install Cancel anytime
$269,100 69% of $390,000 paid
The blind spot
Enquiry volume is easy to produce and easy to mistake for progress. The clinic's problem is that most enquiries never convert, and the ones that do are worth wildly different amounts.
What you get
Channels rank by what was billed, so a channel producing few high-value procedures wins properly.
An enquiry in spring that books in autumn still matches the ad that produced it.
A contact detail, an amount and a date is all the match needs. No clinical information required.
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 | 41 | $148,200 | 38% | |
| Meta Ads | 33 | $81,900 | 21% | |
| Email marketing | 16 | $39,000 | 10% | |
| Direct / Unknown | 44 | $120,900 | 31% |
Someone researching a procedure may enquire in March, think about it for six months, discuss it with a partner, and book in October. Every part of that except the first click is invisible to an ad platform, so the campaign that actually produced the patient looks like it produced nothing.
Matching on the person rather than the session makes the October booking count against the March enquiry. For clinics with high-value elective procedures this routinely reverses which channel appears to be working.
The match needs a phone number or an email address, an amount, and a date. It does not need a diagnosis, a procedure code, or a clinical note, and those should not be in the file you upload.
Data is encrypted in transit and at rest, isolated per workspace and deletable in one click, and we act as a data processor with a DPA available. We are a Canadian company and do not offer a BAA, so we should not be treated as a HIPAA business associate — keeping the export to contact detail, amount and date is what makes that a non-issue rather than a risk.
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 judgement, 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
You do not need to. There is nothing to install anywhere — CloseRev reconciles two exports after the fact, which is precisely why it suits clinics with restrictions on what can run on their site.
That is the normal case and the reason this works as two files rather than an integration. They never have to talk to each other; they only have to be exported.
Then it belongs in Direct / Unknown rather than being credited to paid media. Referral is a real channel and worth knowing the size of — mixing it into Google Ads would make the paid numbers meaningless.
Pricing
The number here is the number on the invoice — no per-call, per-minute or per-form fees. Most private clinics and elective medical practices land on Growth — 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
$199/mês
billed monthly
Questions
Anything else? Talk to us — a person answers, usually the same day.
Completed, paid procedures: a patient phone number or email, the amount, and the date. Nothing clinical.
We do not offer a BAA and should not be treated as a business associate. The match needs only a contact detail, an amount and a date — keep clinical information out of the export.
No. Names make a row easier to recognise when reviewing a match, but the match itself works on phone and email.
As long as your data covers. There is no attribution window to expire, because there is no cookie involved.
Yes, and it is usually the fastest way to evaluate the tool. Nothing had to be installed at the time.
Include a location or clinician column and the report breaks down by it.
Procedure or sales rows analysed in a calendar month. Enquiry and call rows do not count.
Delete the import and its records and original file go with it. Whole-account deletion is in Settings, and imports also purge automatically once your retention window elapses.
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 signed, fee-earning matters to the calls and ads that produced them — including the ones that settled a year later.
See how it worksMatch your clients' closed-sales exports to their ad and call data, and hand them a per-channel revenue report at renewal time.
See how it worksStart today
Upload two exports and see your real revenue by channel in minutes. Three days free, no card.