What's Wrong With Most Property-Valuation Widgets (And What We Built Instead)
Most valuation widgets collect an email and call it a lead. We asked one question first, refused to show an exact price, and cost per meeting fell from ~550 zł to ~145 zł. One thing still isn't fixed.
I have tested more property-valuation widgets than I'd like to admit. Some as a customer, typing in addresses of flats I don't own. Some by reading what estate agents say about them in group chats after three months of use. They all do the same trick: you enter an address, a number appears, the agency gets your email. And then almost nothing happens, because the agency now owns a list of people who were curious on a Tuesday evening.
When we built the valuation module inside ImmoCRM, we started from that failure rather than from the feature list. Internally we call it Wyceniarka, Polish for roughly "the valuer" or "the appraiser." It's a plain, unglamorous word, the kind an agency's own office manager would use, and it stuck because that's exactly what the thing does: it appraises a property, on the agency's own site, in the agency's own name. I'll keep using the Polish name through this post since that's the actual product name in the CRM, but from here on you know what it means.
Here is what we changed, what it did to the numbers, and the one thing we still haven't fixed.
Ask why before you answer what
Most widgets never ask the visitor why they want a valuation. That is the whole problem in one sentence. An agency doesn't want "a person who typed an address." It wants a person who is going to sell in the next few months, and the only way to know that is to ask.
So the form has a field called "Cel wyceny," the purpose of the valuation, with three options: checking out of curiosity, planning to sell, planning to buy. One dropdown, two seconds. But it changes everything downstream. Only the "planning to sell" leads get pushed into the agency's main lead pipeline, assigned to an agent and sent to their Telegram. The curious ones are still stored, still counted in the statistics, still available for a newsletter later. They just don't waste an agent's afternoon.
In the Statystyki view the agency sees both numbers side by side: all valuations, and qualified valuations from people who said they want to sell. That gap is usually big. Which is fine. Knowing the gap is the point.
The cheapest lead is the one your agent never has to call.
A precise number kills the phone call
This took me longer to see than it should have. On paper an exact valuation looks like the better product. In practice it ends the conversation. Someone who gets "your flat is worth 612,000 zł" feels done. Someone who gets "between 590,000 and 650,000 zł" feels like they need to talk to a human.
An agent's value lives in exactly that gap: what actually sells on this street, with this kitchen, in this quarter. If the widget hands over a single figure, it has just done the agent's job for free and removed the reason to pick up the phone.
Wyceniarka never shows a single number. It shows a range, and the width of the range depends on how hard the asset is to price: ±5% for apartments, ±7% for houses, ±15% for land. The estimate is the median price per square metre of at least eight comparable listings in the same city and property type. If there aren't eight, the widget says it doesn't have enough data instead of inventing something. Honest about the uncertainty, and it leaves the agent a job to do.
The last screen is the agency's, not ours
Two smaller decisions that matter more than they look.
First, when an agency embeds the widget on its own site there is no Coldabry logo, no ImmoCRM watermark, no "powered by." It's the agency's tool, in the agency's brand colour, on the agency's domain. I've used vendor widgets that stamp their own name across the result and every time it makes the site feel like it's renting a corner from someone else.
Second, the result screen is not a dead end. Under the range the visitor sees the agency's phone number with a "call" button and a link to the agency's Instagram, and on the agency's own valuation page, real client testimonials the agency has added in its settings. The valuation gets them in; the social proof and the direct contact get them to actually reach out. That screen is where a curious visitor becomes a lead who calls you, not the other way round.
Where this sits next to rentier.io, SonarHome, Otodom and RealAdvisor
None of this happens in a vacuum, so it's worth saying where Wyceniarka actually sits.
rentier.io is probably the name most Polish homeowners have heard, and for good reason: instant, no email, no phone, no account, just a number. It's genuinely useful and I have no complaint about the product. It's also built for a different visitor: an investor comparing cash flow across ten addresses wants zero friction, not a question about intent. Otodom's own valuation tool does roughly the same thing inside the country's biggest listing portal, which is exactly why it can't be what an individual agency needs: it's Otodom's lead, not the agency's. RealAdvisor recalculates monthly against actual transaction prices rather than asking prices, which is a real accuracy edge over comparable-based models like ours. SonarHome is the closest thing to a direct competitor: also an AVM, also offered to real estate professionals as an embeddable widget through a partner program.
What none of the four do is ask why the visitor wants the number before showing it, or drop a qualified lead straight into a specific agency's CRM, behind the same login as that agency's ads, agents and pipeline. They're valuation tools, full stop, and good ones. Wyceniarka is a lead-qualification step that happens to also value the property. Different job, not a better version of the same one.
What it did to the numbers
We run Wyceniarka for a Poznań agency alongside their regular Meta lead-form campaigns, so I can compare both in the same CRM, same four months (May to August 2026), same agents.
| Same agency, same period | Regular lead-form campaigns | Wyceniarka |
|---|---|---|
| Ad spend | ~9,900 zł | ~4,200 zł |
| Leads into the CRM | 82 | 266 |
| Cost per lead | ~121 zł | ~16 zł |
| Leads that reached a meeting or further | 18 | 29 |
| Cost per meeting | ~550 zł | ~145 zł |
I'm rounding, and "reached a meeting" here means the lead's status in the CRM got to a booked meeting or beyond, so it's the agents' own bookkeeping, not a Meta-reported conversion. Still: less than half the budget, more meetings, and a cost per meeting around a quarter of what the ordinary campaigns produce. I expected Wyceniarka to be cheaper per lead. I did not expect it to be cheaper per meeting by that margin.
One reason it works is that the widget doesn't just collect leads, it reports back. Each embed carries the agency's Meta pixel and a Conversions API token, so Meta hears about the lead when it comes in and again when an agent books the meeting, and optimises toward people who look like sellers rather than people who like clicking on price calculators.
What we haven't fixed yet
I'd rather say this than quietly leave it out. Today, if someone doesn't want to give a real phone number, they still see their valuation. The phone field exists so the agency can text the result as a bonus (an optional per-organisation setting), but it isn't required and nothing checks the number is real. A made-up number goes through exactly as easily as a real one, and you can see it in the table above: 24 of those 266 leads were marked as fake by the agents.
That's next. We're going to make the phone number load-bearing the same way the intent question already is, either by gating the full result behind it or by verifying it before the range is shown. When it ships I'll update this post with the before and after.
Under the hood, briefly
Wyceniarka lives as its own schema inside the ImmoCRM database (wyceniarka.*), tied to the agency's organisation, so there's one login, one CRM, one place leads land. No separate tool to reconcile by hand. The embed is a token-scoped page, the valuation is a median-of-comparables model rather than a black-box score, and the comparables come from listing data scraped per city (Poznań, Gdańsk, Kraków and Wrocław today, more as agencies come on board).
Leads that say "sell" get the same treatment as any other ImmoCRM lead: auto-assignment to an agent, Telegram notification, follow-up sequence, and they show up in the agency's cost-per-contract statistics next to every other campaign.
None of this is difficult technology. What it took was watching agencies use a bad version of the idea first, and then being willing to make the widget less impressive on the surface (no exact number, an extra question) so that what comes out the other end is worth an agent's time.
If you run an agency and want to see the curious-versus-seller split on your own market, that's what the valuation module in ImmoCRM does. Here's how it fits the rest of the CRM.