“kvCORE already reports lead source performance.”
On leads and pipeline activity, which it sees. It does not see a closing statement, so it cannot report commission by source.
For kvCORE
Match your closed transactions against the lead sources in kvCORE and rank Zillow, portals, paid search and referrals on commission earned.
No API key Nothing to install in kvCORENothing to install No card requiredNo card
CloseRev reads a kvCORE export of leads with their sources alongside an export of closed transactions — the client's phone or email, the commission or sale price and the closing date — and matches the two. It answers which lead sources produced closings rather than which produced leads, across a cycle where the gap between the two is measured in months. Closings with no traceable lead are reported as Direct / Unknown.
Last checked against kvCORE's own documentation on September 24, 2026.
The gap
You pay four lead sources every month and judge them on lead volume and gut feel, because nothing you own connects a lead in January to a closing in August.
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.
On the lead record and on the transaction. Portal leads arrive with an email, phone leads with a number, so both columns matter for coverage.
Commission is the better number because it is what the brokerage earned; sale price works if commission is not in the export, as long as it is used consistently.
When the transaction closed. The gap from lead to close is the whole reason this report exists.
kvCORE already records a source on the lead. Include it and the report can compare what was recorded against what the match found, which is an education in itself.
Step by step
Written for somebody with kvCORE open in the next tab. Report names vary by edition, so each step says what to look for.
One row per lead with a contact detail, the source and the date it arrived. This is the lead file and kvCORE is unusually good at producing it.
One row per closing with a client contact detail, the commission or price and the closing date. This often comes from the transaction management or accounting side rather than from kvCORE.
A lead captured in January closes in August at the earliest for most markets and price points. A short file attributes the quick transactions and misses the rest.
Sphere, referrals, open houses and past clients belong in the lead file. Left out, they inflate Direct / Unknown and make the paid portals look far better than they are.
The match runs on the phone and the email, normalised on both sides, with weak links flagged rather than counted.
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 Real Estate page — not from a kvCORE account.
| Channel | Share | Sales | Revenue |
|---|---|---|---|
| Google Ads | 12 | $145,800 | |
| Portals | 10 | $118,800 | |
| Meta Ads | 8 | $86,400 | |
| Direct / Unknown | 15 | $189,000 |
Unmatched sales stay in Direct / Unknown. They are never spread across the paid channels to make the total look better.
The argument
Every portal and lead vendor sells on cost per lead, and every brokerage compares them that way because it is the number everybody publishes.
Conversion from lead to closing varies by an order of magnitude across sources. A portal lead who enquired on six houses in one evening and a referral from a past client are not the same asset at any price, and a cost per lead treats them as identical.
Cost per closing, and commission per pound spent, are the numbers that decide whether a source pays. Neither exists in any single system, because the leads are in kvCORE and the closings are in transaction management.
Six to twelve months from first enquiry to closing is normal, and longer at the top of the market. Nothing in an advertising account, and nothing in a monthly brokerage report, covers that.
So sources get judged on the leading indicators that arrive in time — leads, appointments, showings — and those indicators favour volume. A source producing many quick, low-intent enquiries outranks one producing a few serious buyers every month, right up until the closings are counted.
Matching a year of closings back to the leads that produced them is the correction, and in real estate it is routinely the difference between renewing a contract and cancelling it.
Leads are distributed to agents, and agents convert at very different rates. A source routed to your strongest agent will look excellent; the same source routed to a new agent will look poor.
Read without the agent dimension, the report is measuring people and calling it marketing. Read with it, you can see which sources work for which agents — which is a routing decision as much as a budget one.
Where the export carries the agent, the report splits on it. For most brokerages this reveals that the problem was never the source.
kvCORE records a source on every lead, which is more discipline than most industries manage. It is still wrong often enough to matter: leads get re-entered by hand, a buyer who found you on a portal rings the office instead, and a referral gets logged as a website lead because that is where the form was filled in.
Putting the recorded source beside the matched source shows the size and the direction of the error. It is usually one-directional — the channels people remember get credited, the ones they do not remember get lost — and knowing the direction is what makes the recorded field useful again.
Fair questions
On leads and pipeline activity, which it sees. It does not see a closing statement, so it cannot report commission by source.
That is the normal case and the reason this exists. Two exports, one join on the client's contact detail.
Keep doing it, and expect it to disagree. The size and direction of that disagreement is one of the more useful things this produces.
No. It reads files you exported; nothing holds a credential to your account.
Leads with their sources from kvCORE, and closed transactions with a client contact detail, the commission or price and the closing date.
Commission where you have it — it is what the brokerage earned. Sale price works consistently applied.
A year at least, and longer in higher price bands. A short file measures only the fastest transactions.
Yes, and that is usually the comparison worth the whole exercise. Both are sources and both rank on closings.
Yes, where the export carries one. Without it the report measures agent performance and calls it source performance.
They are the denominator. A source's conversion to closing is the number that separates it from the others.
If you record them as sources, yes. Left out they inflate Direct / Unknown and flatter the paid portals.
Direct / Unknown, reported as unmatched rather than distributed across the paid sources.
Yes. The files are smaller and the question is identical.
A contact detail, an amount and a date, plus an agent or source if you include them. No property addresses, no offers, no contracts, no financial documents. Encrypted in transit and at rest and deleted with the import.
Closings and commission by lead source, split by agent where the file allows, and everything unmatched kept visible.
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.
kvCORE 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
Nothing to install in kvCORE, no API key, and no need to have been tracking anything until now. Last year works as well as this month.