Why your real-estate leads look like junk to the builder, and what to send Meta instead
Every agency running property campaigns has sat through this meeting. The campaign delivered two hundred enquiries at a cost per lead the client agreed to. The client's sales team called some of them. One booked a visit. The client opens with “your leads are junk,” and the agency has a slide about impressions.
Both sides are arguing from memory, because the evidence is somewhere neither of them looked. This note is about where it is, why the number everyone quotes cannot settle the argument, and what a lead-quality report has to contain to end it.
The meeting
The client remembers the leads that wasted a salesperson’s afternoon: the ones with a fifth of the budget, the ones looking in a different city, the ones who never picked up. The agency remembers the cost per lead and the click-through rate. Both are true and neither is the point.
The point is what happened to the other hundred and sixty. Nobody knows, because nobody spoke to them. The typical handoff is a lead-form export or a WhatsApp number receiving messages at 11pm, and the typical follow-up is whatever the sales team got round to the next afternoon. By then the buyer has had the same conversation with two other projects.
Where the evidence actually is
A property buyer tells you almost everything you need to judge the lead in the first three messages, if someone asks. Budget, configuration, locality, and when they need to move. That is the qualification, and it exists for every lead who replies, whether or not a salesperson ever calls.
It is also the only signal that cannot be gamed by either side. A salesperson asked “did they turn up?” will tap whatever clears the notification. A buyer typing “around 1.4 crore, 3 BHK, possession by next year” is telling the truth as they understand it, and the sentence is on the record.
The evidence, in other words, is in the conversation. If nobody had the conversation, there is no evidence, and the meeting will be about feelings.
Why cost per lead cannot settle it
Cost per lead measures the price of a click that turned into a message. It says nothing about whether the person could buy. Worse, optimising for it actively degrades quality: the cheapest conversations to start are with the people least likely to be serious, and a platform told to minimise cost per conversation will find more of them. The agency hits its number and the client gets a worse pipeline. Both were doing what they were asked.
The number that would settle the argument is cost per qualified lead, and neither side has it, because qualification happens (or does not) after the handoff, in a channel the agency cannot see and the client does not log.
What the report has to contain
Five rows, in this order. Anything less leaves room for the old argument.
The fifth row is the one that changes behaviour. A project that delivers in 2027 should not be advertising to people who need to move next year, and no amount of sales follow-up fixes that. Once the client can see it, the conversation moves to the audience, which is where the agency can actually act.
What to send Meta instead
Everything above is a better report. The same data can also make the next campaign better, which is the part most agencies never get to.
Meta’s optimiser learns from what it is told. For a click-to-WhatsApp ad it is told about clicks and conversations started, so that is what it optimises for. It has never been told which conversations contained a real budget, because that sentence is inside WhatsApp. Meta’s Conversions API for Business Messaging exists to change that: a business can report an event that happened inside the conversation back against the click that started it, with a value.
Send the qualified moment, weighted by the stated budget. Not the click. Not “conversation started,” which Meta already has. The moment a buyer says a number that fits the project, that is the event, and the budget is the value. Over a few hundred of those the account has a picture of who a real buyer for this project looks like that no interest-targeting menu could have produced.
This needs the conversation to be captured as structured data, not read by a human afterwards. That is the hard part, and it is the part Vesma is built for.
A report with those five rows ends the argument about lead quality. It does not make a bad project sell, and it does not replace a sales team that never calls back. The “spoken to” row will be embarrassing for some clients, and the honest version of this report shows it anyway.
The Meta half has a limit too. A WhatsApp-destination ad can only be optimised for conversations today; the qualified events inform the ad account’s learning rather than steering that ad set directly. That is Meta’s constraint, not a reason to withhold the data, but a page that promised otherwise would be selling.
See the five rows on a live campaign
Bring one client's running campaign. Vesma answers every enquiry it produces, builds the report from what buyers said, and sends the qualified ones back to the platform, under your brand.