Deal Genius

How Deal Score is calculated

Inflation-Proof Equity starts at the purchase: when you buy below estimated value, you lock in equity on day one instead of waiting for the market to grant it.

Deal Genius assigns every listing a Deal Score from 0 to 100. The score combines five equally-weighted signals — value gap, price reduction, days on market, yield vs area, and back on market. When a signal's underlying data is unavailable for a specific property, the remaining signals are re-weighted so the score still ranges 0–100; we surface a confidence value alongside the score (signals_available / 5) so you can see how many of the five signals were actually available.

Deal tiers

Once the 0–100 score is calculated, it maps to one of two named tiers, or to no tier.

Deal Score tier thresholds
TierScore rangeMeaning
Hot Deal75–100Strong alignment across multiple signals.
Worth a Look50–74Noticeably better than a typical listing — warrants a second look.
Untiered0–49A typical listing — no highlight.

Value gap

What it measures — How far the asking price sits below the PropertyData automated valuation model (AVM) sale valuation.

How it scores — Linear 0 → 100 over 0–20% below valuation. Asking at or above valuation scores 0. Asking 20% or more below valuation saturates at 100. Otherwise the sub-score is (gap_percent / 20) × 100.

Discount %=(1Asking PriceAVM)×100\text{Discount \%} = \left(1 - \dfrac{\text{Asking Price}}{\text{AVM}}\right) \times 100
The Discount % above is the gap_percent that feeds the value-gap sub-score.

Data sources — PropertyData /valuation-sale (AVM) and the property listing's asking price.

Worked example — Asking £165,000 on a £200,000 valuation → gap = 17.5% → (17.5 / 20) × 100 = 87 → sub-score 87/100.

Price reduction

What it measures — Whether the seller has dropped the asking price, how many times, and by how much in total.

How it scores — max(count_score, magnitude_score). Count maps 0 → 0, 1 → 33, 2 → 66, 3 or more → 100. Magnitude is min(100, round(reduction_percent / 15 × 100)). If reduction_percent is greater than zero but the price history is empty, count defaults to at least 1 so the magnitude evidence isn't ignored.

Data sources — PropertyData price_history array (count of reductions) and the reduction_percent field (magnitude).

Worked example — Two reductions totalling 18% off the original asking → count_score = 66; magnitude_score = min(100, round(18 / 15 × 100)) = 100 → sub-score = max(66, 100) = 100/100.

Days on market

What it measures — How long the listing has been live, expressed as a ratio against the area's median days-on-market.

How it scores — ratio = days / area_median_days. If the ratio is ≤ 0.5 the sub-score is 0. Between 0.5 and 2.0 the sub-score is (ratio − 0.5) × 50. Between 2.0 and 3.0 the sub-score is 75 + (ratio − 2.0) × 25. At or above 3.0 the sub-score saturates at 100. When the area median is zero or unavailable, a national fallback of 60 days is used.

Data sources — PropertyData property listing days_on_market and area-stats median_days_on_market. National fallback constant: NATIONAL_MEDIAN_DAYS_ON_MARKET = 60.

Worked example — Property on market 120 days in an area where the median is 60 → ratio = 2.0 → (2.0 − 0.5) × 50 = 75 → sub-score 75/100.

Yield vs area

What it measures — How the property's gross rental yield compares to the area average.

How it scores — property_yield = (monthly_rent × 12) / asking_price × 100 and ratio = property_yield / area_avg_yield. Ratio ≤ 0.8 → 0. 0.8 to 1.0 (ratio − 0.8) × 125. 1.0 to 1.5 25 + (ratio − 1.0) × 100. 1.5 to 2.0 75 + (ratio − 1.5) × 50. At or above 2.0 the sub-score saturates at 100. If the asking price or area yield is zero or unavailable, this signal is excluded and other signals are re-weighted.

Data sources — PropertyData /valuation-rent (monthly estimate), the property's asking price, and area-stats average_yield_percent.

Worked example — Monthly rent estimate £1,000 on £165,000 asking → property yield = 7.3%. Area average 5.5% → ratio = 1.32 → 25 + (1.32 − 1.0) × 100 = 57 → sub-score 57/100.

Back on market

What it measures — Whether the listing was previously withdrawn or marked SSTC (Sold Subject to Contract) and has since been relisted — a common indicator of a failed sale.

How it scores — Binary. 100 if the sstc flag is set, OR the price history contains a status/qualifier of delisted, withdrawn, or removed followed by a later listing entry (or an SSTC entry followed by a non-SSTC entry). Otherwise 0.

Data sources — PropertyData property listing sstc flag and price_history status/qualifier text.

Worked example — Property listed → withdrawn → relisted three months later → sub-score 100/100.

Data sources

Every Deal Score is traceable back to these upstream sources.

PropertyData API
Asking price, days on market, price history, SSTC flag, sale valuation, rent valuation, and area stats (average yield, median days on market, average price, 3-year growth, crime rate, flood risk, nearest schools).
HM Land Registry
Historical sold-price records. Referenced for methodology transparency; the MVP's detail-page “Price history” table shows the listing's own asking-price changes rather than Land Registry sold transactions.
Per-metric attribution
Area-level metrics on the property detail page carry a per-metric source and fetched-at line (e.g. “Source: PropertyData API · Updated 20 Apr 2026”) so you can see exactly which upstream produced each number and when it was last refreshed.

HMO potential

We flag houses (terraced, semi-detached, detached, or end-of-terrace) with four or more bedrooms as having potential for House-in-Multiple-Occupation conversion. This is a layout heuristic only; it does not check local-authority licensing, Article 4 directions, or planning constraints. Full HMO licensing data is planned for a future release.

Information, not investment advice

Deal Score is a transparency tool for comparing listings — it is not a recommendation to buy, sell, or invest. All valuations and yields are estimates derived from third-party data and may be inaccurate. Always carry out your own due diligence, including viewing the property, reviewing legal documents, and consulting a qualified financial adviser.