RealTeasy

The guard rails

No invented numbers.

Ask a language model what a house is worth and it will tell you, confidently, whether or not it has the faintest idea. Producing plausible text is the whole job. So Guru does not ask it.

Scan a property

The problem, stated plainly

A large language model does not know things. It predicts text. Given a property and asked for a valuation, it will produce a number shaped like a valuation, with reasoning shaped like reasoning, and it will do this just as fluently when it has real comparable sales in front of it as when it has nothing at all. The output looks identical either way. That is the danger, and it is not solved by a better model or a firmer instruction, because a fluent guess and a grounded answer are the same kind of object to the thing producing them.

Most "AI value estimate" tools are a prompt and a model. Guru is built the other way round.

The division of labour

The server owns the figures. The AI writes the explanation. That single rule is the answer to most of this page.

Every number you could act on is computed in ordinary, testable code from recorded inputs: the price per m², the independent baseline, the confidence range, bond repayments at the live prime rate, transfer duty from the current SARS table, total cost of acquisition, rental yield, the growth projection, the negotiation score. None of it is generated as text. All of it is reproducible, and all of it is covered by tests that fail the build if the arithmetic drifts.

What the AI does is the part it is actually good at: read the listing page, look at the photographs for condition and finish, research the live market, weigh conflicting evidence, and explain the result in language a person can use. Judgement and prose, not arithmetic.

Six things that would have to fail at once

  1. The correction pass. After the AI has written its report, every derived figure is recomputed from the underlying inputs. Where the model's version disagrees, the code overwrites it. This is not a spot check: it runs on every report, every time.
  2. Evidence must have a provenance. A comparable has to come from somewhere Guru can point at: our own market pool, a page the research agent actually opened, or a recorded suburb average. Each one carries its source, its size basis, and whether it was a confirmed sale or a price someone is asking. A property the model merely remembers is not evidence and cannot enter the maths. One honest qualification, because it is the kind of thing we would rather tell you than have you find: the asking price does one job at this stage. It sets the market segment we search, so a R2m cottage is never offered as evidence about a R6m house. It never sets the value, and the independence check below is what stops it becoming the answer.
  3. An independent baseline the AI never sees the making of. The server derives its own value from comparable rates and area statistics, in code. It is the yardstick the AI's answer is measured against, and the thing the answer is pulled back toward when it strays.
  4. The independence check. If the estimate lands within 2% of the asking price it is treated as anchored rather than independent: blended back toward that baseline, confidence capped, and the reason printed on the report.
  5. A verifier and a consistency judge. Two further passes, each with a different job: one re-checks the arithmetic and the evidence, the other compares this run against the previous one so the number cannot swing between re-runs without a reason.
  6. Scored against reality. Every published estimate is written to a ledger with the shape of the evidence behind it, and when the property later sells that outcome is scored against the prediction. Those scores are what set future confidence ranges. Being precise about today: a category of evidence needs 30 scored outcomes before it is allowed to set a band, so right now the ledger is recording rather than ruling, and your report says which of the two produced its range.

Any one of these can catch a bad number, and five of them are catching them today while the sixth fills its ledger.

Refusing to answer is a feature

The most common way an automated valuation misleads people is not a wild number. It is a reasonable-looking number produced from almost no evidence, wearing the same confident styling as a well-evidenced one.

Guru handles thin evidence by stepping down to the strongest route it actually has and telling you which route that was, so a thin-data suburb still gets an answer carrying only the confidence it earned. Where even that is impossible, the report says not enough data yet. It specifically does not fall back to the asking price, because a valuation that agrees with the seller by construction is not a valuation, it is a restatement of the thing you were trying to check.

What we throw away on purpose

Guardrails cost you evidence. These are the ones worth paying for:

  • A flat is never evidence about a house. Sectional title and freehold are different markets that happen to wear similar prices, so they are never pooled, even when it leaves fewer comparables.
  • A land rate is never averaged with a floor rate. They measure different things. Mixing them produced a baseline millions out on a real listing, which is how we know.
  • A "floor size" that merely copies the erf is discarded. Portals do this, and a fake floor size drives a fake floor-basis valuation.
  • An asking price is never counted as a sale. Labelled separately end to end, and discounted toward what properties actually fetch before it can move your number.
  • A "street address" that only repeats the suburb is dropped. Printing it would imply a precision the portal never published.

Fewer comparables, honestly labelled, beat more comparables quietly averaged.

What this does not fix

None of this makes Guru a formal valuation, and none of it means the number is right. The evidence can be thin, the market can move, and nobody has been inside the property: no model sees a structural defect, an unapproved extension or a body corporate in difficulty. Guardrails stop invention. They do not manufacture certainty, and a report that told you otherwise would be doing the exact thing this page is about.

Read the accuracy page for how we measure ourselves, and the AI disclaimer for the formal position.

Frequently asked questions

Can an AI hallucinate a property value?
A language model on its own certainly can: asked for a price it will produce a plausible-looking one whether or not it has any evidence, because producing plausible text is what it does. That is why Guru does not ask a model for the number. The figures are computed in ordinary code from recorded evidence, and the model researches, weighs and explains. Where the two disagree, the code wins.
What stops the AI inventing a comparable sale?
Comparables have to exist somewhere Guru can point at: our own market pool, live portal pages the research agent actually opened, or recorded suburb sale averages. Each carries its source, its price basis and whether it was a sale or an asking price. A property the model merely remembers is not evidence, and cannot enter the maths.
Why does my report say a figure was corrected?
Because it was, and hiding that would be the dishonest option. The correction pass recomputes every derived figure after the AI has written its report, and when the model's version disagreed with the arithmetic the code overwrote it and left a note. You are seeing a guard rail fire.
Does Guru ever refuse to answer?
Yes, and it is deliberate. Where there is genuinely not enough comparable evidence to value a property independently, the report says "not enough data yet" rather than echoing the asking price back at you as though it were a valuation. A confident wrong number is worse than an honest gap.

More answers on the full FAQ page.

Check a number for yourself

Scan a property