“AxisCare already tracks revenue by referral source.”
It does, and this does not replace that. It adds what sits underneath the digital sources — campaign, keyword and call — which is information the system never receives.
For AxisCare
AxisCare already ranks referral sources. This adds the campaign, the keyword and the call behind the ones it can only record as the website.
CloseRev reads an AxisCare export of billed care — client contact detail, the billed amount and the service date — and, where you record it, the referral source alongside. It ranks paid channels and referral relationships on the same axis, which is the comparison an agency owner actually has to make. Nothing is attributed without a match on the contact detail.
Page updated September 24, 2026.
The gap
Half your sources are named people and the other half are one word: website. That word is hiding your entire advertising budget.
What was sold, to whom, and for how much.
The click, the keyword, the call, and what each one cost.
The file
Three things carry the match: who, how much, and when. Anything else is optional and only changes how the report can be sliced.
AxisCare's lead and client records carry personal email and home and mobile phone numbers — exactly the fields a match normalizes on.
Derived from visits and their charge rate, or from your invoicing. Money rather than hours, so rate bands do not distort the comparison.
Used consistently between uploads.
The source AxisCare already holds. In the lead file it is the source column itself — the referral partner or the website — so recorded referrals rank beside the campaigns.
Step by step
Written for somebody with AxisCare open in the next tab. Report names vary by edition, so each step says what to look for.
AxisCare models referral sources as a managed list rather than free text, and lead records carry the contact details the match needs.
The revenue side, with the client, the amount and the date.
This is the layer AxisCare does not have: which campaign, which keyword, which call produced the inquiry that its source field records as the website. Those rows join the AxisCare leads in one file, each with its source named.
Each client is credited to the earliest lead the file holds for them, whatever its source. Laying that beside the source AxisCare recorded is a check worth making; nothing is written back to AxisCare.
Filter waiver and managed-care billing out of the export so it stays out of the return calculation.
What comes back
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 Private-Pay Home Care page — not from a AxisCare account.
| Channel | Share | Sales | Revenue |
|---|---|---|---|
| Google Ads | 23 | $495,500 | |
| Professional referrals | 29 | $637,000 | |
| Referral aggregators | 13 | $283,000 | |
| Meta Ads | 5 | $118,000 | |
| Direct / Unknown | 38 | $826,500 |
Unmatched sales stay in Direct / Unknown. They are never spread across the paid channels to make the total look better.
The argument
AxisCare's referral source handling is genuinely good: a managed taxonomy rather than a free-text box, carried from the lead through to the client record, with reporting on top. If your question is which referral partners send the most business, it answers it.
The limitation is not a defect, it is a boundary. A referral source is a category. It cannot tell you which campaign, which keyword or which advertisement produced the inquiry, because none of that information ever enters the agency management system. Everything digital collapses into one or two values.
So this page is deliberately not positioned against referral source reporting. It is positioned against the one word underneath which your entire paid budget is currently filed.
AxisCare keeps call records with the caller's name, number and time. That is structurally the same thing a call tracking export is, minus the campaign that produced the call.
Adding the call tracking rows to the lead file closes the gap: the number in the call tracking file carries a campaign and a keyword, and the same number in the client record carries the billed revenue. The join is the phone number, normalized on both sides.
Where call tracking already runs, the key is present and clean on both sides from the first upload, which is not true in every segment.
There is not always a single field that says what a client is worth. Visits carry a charge rate; the client's value is the sum of them over time. That is an arithmetic step, not an obstacle, and it produces a better number than any single field would.
It also means a client's value grows in the report as they continue to receive care, all of it credited to the channel that produced the original inquiry. A channel whose clients stay eighteen months is separated from one whose clients stay three, which cost per client cannot do.
Home care agencies advertise for clients and for caregivers, frequently from the same account and sometimes with the same keywords. Recruitment spend is a real cost and a real necessity, and it has no revenue attached at all.
Keeping the two apart matters for the same reason as any other mixed budget: blended together, the client-acquisition return is understated by whatever share went to recruiting. Upload recruitment campaigns as their own source grouping, or exclude them, and the client-side number becomes meaningful.
Two findings are worth looking for. The phone match rate can be high, because the caller ID in a call tracking file and the phone on a client record are both machine-captured rather than typed, which is unusual and helps this segment reconcile.
The second is how unevenly the referral sources recorded as the website or as online can split once the campaign behind them is visible: a few campaigns may account for most of the billed care, and the rest of the paid budget for inquiries that never start.
Neither of those is visible from inside an agency management system, because the campaign never enters it.
Fair questions
It does, and this does not replace that. It adds what sits underneath the digital sources — campaign, keyword and call — which is information the system never receives.
An export needs no API access, no edition upgrade and no permissions. It also lets you inspect the file before sending it, which is worth something on its own.
Which is exactly why billed revenue rather than a signed client is the unit. The report follows the billing.
Leads or clients with contact details and referral source, plus billed visits or invoices with amounts and dates.
No. It adds the campaign, keyword and call layer behind the digital sources, which the agency management system does not hold.
From billed visits summed over time, so a client's value grows as care continues and credits the original channel.
Yes, by grouping or excluding recruitment campaigns as their own source.
Yes — filter them out of the billing export before uploading.
Yes — map an office column as Location.
Not required, but it is the strongest second file here because the phone number is clean on both sides.
The report shows the matched channel; the recorded source stays in AxisCare. Comparing the two is worth doing, because where they disagree is informative.
No. A contact detail, an amount and a date.
Contact detail, billed amount, service date, and a referral source if you record one. Schedules, care notes and caregiver detail are not part of the match and are not uploaded. Files are encrypted in transit and at rest and deleted with their import.
It is the right shape, but it does not carry the campaign. Add call tracking rows to the same lead file to get the campaign and keyword behind each call.
CloseRev does not sign HIPAA Business Associate Agreements and is not built for protected health information. Export only non-clinical fields from AxisCare — a phone or email, the amount and the date — never diagnoses, care plans or notes. If those contact fields count as PHI under your obligations, talk to your compliance lead first.
By trade
What the report looks like once the export is in, written for each one.
Other systems
Running more than one system, or comparing? The method is the same and the columns are not.
AxisCare 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.
From the blog
Every attribution tool is built for businesses where the inquiry and the purchase happen in the same quarter. If yours does not, almost every default is wrong: the date ranges, the reporting cadence, the optimization signal and the patience of everyone involved.
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 articleThe attribution window is the most consequential setting in marketing measurement and the least defended. It is usually inherited from a platform default, occasionally changed until the numbers look better, and almost never written down. Here is how to choose one honestly, why a longer window for one channel can be legitimate, and the single rule that separates a measurement from a rationalization.
Read the articleStart today
Nothing to install in AxisCare, no API key, and no need to have been tracking anything until now. Last year works as well as this month.