Measured by release, not by month
Inventory sells in phases at different prices. The report compares channels inside the release they belong to.
For Condo & Project Developers
Match firm contracts and deposits to the campaigns running during the release that produced the buyer.
No card required Nothing to install Cancel anytime
$45,140,000 61% of $74,000,000 paid
The blind spot
You sell a building in releases over two years and close it three years later. Every report you get covers thirty days.
What you get
Inventory sells in phases at different prices. The report compares channels inside the release they belong to.
Reservations lapse and rescission periods exist. Only firm sales count, so the number survives the cooling-off window.
Pre-sale thresholds are a financing condition. Matches are auditable and reversible, and the unattributed share is stated.
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 | 15 | $10,360,000 | 14% | |
| Meta and Instagram | 13 | $8,880,000 | 12% | |
| Broker and realtor network | 28 | $19,240,000 | 26% | |
| Portal and syndication | 10 | $6,660,000 | 9% | |
| Direct / Unknown | 42 | $28,860,000 | 39% |
Pre-construction marketing spends most of its budget building a registration list before there is anything to sell. Thousands of people register, a launch event converts a fraction of them, and the rest sit for the next release.
Because the registration and the firm contract can be eighteen months apart, nothing connects the campaign that built the list to the sales it eventually produced. The launch gets the credit and the year of list-building shows as cost.
Matching firm contracts back to the original registration returns the credit to where the work happened, and shows which registration sources produced buyers rather than names.
A reservation with a small deposit is reversible, and in many markets a statutory rescission period follows the firm contract as well. Counting reservations as sales flatters the launch and produces a number that quietly shrinks over the following weeks.
A stage column keeps reservations, firm contracts and closings separate. For a developer reporting pre-sale percentages to a lender, that separation is not a nicety — it is the difference between a defensible figure and one that has to be restated.
A large share of pre-construction sales come through cooperating brokers who are paid a commission per firm deal. That commission is a real, known cost per sale — often the only one in the whole mix that is precisely known.
Putting broker-sourced sales on the same report as paid search lets a developer see what their own demand generation costs per firm sale against what the network charges. It is the same comparison a senior living operator makes against a referral agency, and it lands the same way.
A public launch is theatre. By the time a presentation centre opens to walk-in traffic, the best units have usually gone in an allocation round to a small number of favoured brokers, to investors who have bought in previous projects, and to a friends-and-family list. The queue photographed on the Saturday is competing for what remains. Everyone in the industry knows this and the marketing reporting does not reflect it at all, because the reporting counts registrations and the allocation happened off the registration list entirely.
That creates a strange measurement gap that nobody in the building is incentivised to close. The campaign that ran for eight months to build the registration list is judged on how many names it produced and what each name cost, while the units that carried the release were sold to people who were never a name on that list in the first place. Two quite separate acquisition efforts are being reported as a single number, and the one that generated most of the revenue is the one with no numbers attached to it at all. The agency is measured on the half it can see.
Splitting them is a matter of uploading the allocation lists as their own source files: the preferred broker list, the past purchaser list, the investor club list, the friends-and-family sheet. Firm contracts then credit whichever of those actually produced the buyer, and the registration campaign is left holding only what it genuinely converted on its own account. Developers doing this for the first time are usually surprised in one direction or the other, and either answer changes what the next release costs to sell and who gets paid to sell it.
A one-bedroom bought by an offshore investor who will never see the building and a three-bedroom bought by a family trading up from a house in the suburbs are different transactions in every respect that matters to the developer. They are found through different channels, sold with completely different arguments, converted at different speeds, and they behave very differently at completion, where assignments, financing failures and requests to delay tend to cluster on one side rather than the other. The only thing they share is the paperwork.
Because both walk through the same presentation centre and sign the same agreement, the sales report treats them as one population and reports a single conversion rate. The campaign mix behind a release therefore gets judged on a blend, and the developer cannot see that one channel is quietly supplying the investor tranche while another is supplying the end users who will actually move in and form the community the marketing promised. Those two facts imply different budgets and different creative, and the blended figure conceals both.
A purchaser-type column, or simply a unit-type column standing in for it where the distinction is not recorded directly, separates the two cleanly. The value of that separation goes well beyond marketing. Lenders and planning authorities increasingly want to know what proportion of a building has sold to owner-occupiers rather than to investors, and a developer who can answer that question from its own matched records rather than from a sales manager's estimate is in a materially stronger position in both of those conversations.
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
On a list built over eighteen months. The report tells you which of that eighteen months' spend built the buyers rather than the names.
Then the report will say so, and you will know what your own marketing is worth next to the commission you pay them.
If it exports firm contracts with a purchaser contact detail, an amount and a date, that is enough.
Pricing
The number here is the number on the invoice — no per-call, per-minute or per-form fees. Most residential developers selling pre-construction inventory land on Enterprise — ten seats for the team and the highest monthly record allowance, since a year of closed deals is a lot of rows.
One business closing at volume
$499/mês
billed monthly
Questions
Anything else? Talk to us — a person answers, usually the same day.
Firm contracts: a purchaser email or phone, the purchase price or deposit, and a contract date.
Yes, with a stage column, so a lapsed reservation never counts as revenue.
Yes, with a release or phase column.
Yes — studios and three-bedroom units rarely come from the same channels.
Yes. Upload them as a source file and they rank beside paid channels.
The full registration history for the project. The cycle routinely runs past a year.
Yes, with a project column, on Growth and above.
Encrypted in transit and at rest, isolated to your workspace, and deletable in one click. A DPA is available, and purchaser details never leave that workspace.
Upload each allocation list as its own source file. Firm contracts then credit the broker list, the past purchaser list or the investor list that produced the buyer, rather than the registration campaign.
Whichever you manage to, consistently, with a matching date on each row. Deposits track the payment schedule rather than the sales effort; contracted value books money the project has not yet collected.
Yes, with a purchaser-type or unit-type column. They come through different channels, convert at different speeds and behave differently at completion, and lenders increasingly ask for the split.
To whichever source produced them originally, if that enquiry is in the file you upload. Loading the previous project's registration history is what makes repeat purchasers visible as a return rather than as direct traffic.
Export it with the stage that reflects what you earned. An assignment is a different economic event from a completion, and mixing the two makes an investor-heavy release look like an end-user one.
Yes, once walk-in registrations are exported as a list. Until they are, foot traffic sits in the unattributed bucket and every digital channel looks better than it is by exactly that amount.
Nearby
Match signed home contracts and their value to the campaigns and events that produced the buyer, a year or more earlier.
See how it worksMatch signed contracts and draws billed to the campaigns that produced the client, a year and a half earlier.
See how it worksMatch reserved and completed units to the campaigns and territories that produced an overseas buyer.
See how it worksStart today
Upload two exports and see your real revenue by channel in minutes. Three days free, no card.