Cookie preferences

Choose what we may use. Strictly necessary cookies keep you signed in and can't be turned off; everything else is your call and changes nothing about how the site works. You can change your mind any time from the footer.

For Weave

The phone system sees the calls nobody answered. Nothing else does.

Export call records from Weave, match them against collected production, and find out what the phone was actually worth.

No API key Nothing to install in WeaveNothing to install No card requiredNo card

Weave sits on the lead side in CloseRev: because it is the practice's phone system rather than a tracking layer bolted onto it, its call records cover every call including the ones nobody answered. Exported with the caller's number and the date, they become a lead file that can be matched against collected production. Revenue with no traceable call or lead is reported as Direct / Unknown.

Last checked against Weave's own documentation on September 24, 2026.

The gap

You know how many calls came in. You do not know which of them became patients, or what the missed ones cost.

Weave sees

What was sold, to whom, and for how much.

no shared row
Your ad account sees

The click, the keyword, the call, and what each one cost.

The file

What the export needs in it.

Three things carry the match: who, how much, and when. Anything else is optional and only changes how the report can be sliced.

  1. Needed

    Caller's phone number

    On the call record — the number the person actually dialled from, which is the strongest key available.

  2. Needed

    Call direction and outcome

    Inbound, outbound, answered, missed, voicemail. The missed ones are the finding most practices have never quantified.

  3. Needed

    Call date and time

    When it happened. The time of day is what turns missed calls into a staffing decision.

  4. Optional

    Tracked number dialled

    Where distinct numbers are in use, this is what turns a call file into a source file.

Step by step

Getting the file out of Weave.

Written for somebody with Weave open in the next tab. Report names vary by edition, so each step says what to look for.

  1. Export inbound call records

    One row per call with the caller's number, the outcome and the date.

  2. Keep the missed and voicemail calls

    They are the point. A file of answered calls only cannot show what the phone cost you.

  3. Use distinct numbers where you can

    Without them the file says a call happened, not where it came from. One number per listing or campaign fixes that.

  4. Export collected production

    From the practice management system: patient contact detail, amount collected, date.

  5. Upload both

    The join runs on the phone number, normalised, with answered and missed calls reported apart.

What comes back

The page Weave cannot show you.

Revenue by channel, the count of sales behind each figure, and an honest bucket for the ones nobody could trace. Sample figures, from the worked example on the Dentists page — not from a Weave account.

Traced to a channel$207,00068% of $304,400
Sales matched83 of 129high confidence only
Average sale$2,340per paid sale
ChannelShareSalesRevenue
Google Ads38$124,800
Meta Ads31$54,800
Email marketing14$27,400
Direct / Unknown46$97,400

Unmatched sales stay in Direct / Unknown. They are never spread across the paid channels to make the total look better.

The argument

What changes when the call and the ad share a row.

Being the phone system rather than a tracking layer changes what is visible

A call tracking product sees the calls routed through its numbers. A practice phone system sees every call to the practice, however the caller found the number.

That includes the ones that rang out at lunchtime, the ones that went to voicemail after hours and the ones abandoned in a queue.

Those calls are invisible to almost every marketing report in existence, and they are the clearest cost in the file.

Matching the answered ones to collections and reporting the missed ones beside them gives both numbers: what the phone produced, and what it lost.

The second is frequently larger than the amount being argued about in the marketing budget.

A missed call is a revenue number, not an operations statistic

Practices treat missed calls as a staffing metric because that is how the phone system reports them, which understates the case considerably.

Where a caller who rang once and never rang again would have been worth an examination and a course of treatment, the loss is measurable.

The report estimates it the only honest way available: by showing the collected value of callers who did get through, beside the count of those who did not.

It does not claim a specific missed caller would have produced a specific amount, because nothing can know that.

What it does is convert a count into a range a practice owner can act on, which is usually enough to change how the phones are covered at lunchtime.

Without distinct numbers the file proves a call happened and nothing more

A single practice number tells you somebody rang; it cannot tell you whether they came from a map listing, a directory, a mailer or a neighbour.

Distinct numbers on each listing and campaign turn the same file into a source file, and the cost of that is trivial against what is being measured.

Until they exist, the report is honest about the limitation: it will rank answered against missed and it will not invent a channel breakdown.

That is a better outcome than a report that quietly attributes every call to whatever the website said, which is the common alternative.

Recall and reactivation calls are outbound and must not be counted as leads

A practice using its phone system for recall makes a great many outbound calls to patients it already has.

Counted as a source, those would take credit for most of the practice's revenue and make every acquisition channel look ineffective.

Filtering to inbound calls, and reporting outbound recall separately as retention, keeps the two questions apart.

The recall number is worth having on its own terms — it is a real programme with a real return — but it is not marketing acquisition and should never be ranked as though it were. Mixing the two is how a practice concludes its advertising works when what actually happened is that somebody called four hundred existing patients.

Fair questions

“Weave already does that.” Not quite.

They say

“Weave already reports our call volume.”

We say

It does, and it has no view of what was collected, because it never sees the ledger.

They say

“Missed calls are a staffing issue.”

We say

They are, and putting a revenue figure beside them is what gets the staffing changed.

They say

“We only have one phone number.”

We say

Then the file can rank answered against missed honestly and cannot break down sources. The report says so rather than guessing.

Questions

Weave, specifically.

Something else? Ask us and a person answers.

No. It reads an exported file, so your phone system, messages and recordings stay where they are.

Weave and the other product names and logos on this page belong to their owners and are shown to identify the software a file comes from. CloseRev is not affiliated with or endorsed by them, and connects to none of them: it reads a file you export.

Start today

Two exports, and you will know.

Nothing to install in Weave, no API key, and no need to have been tracking anything until now. Last year works as well as this month.