JS Labs Series • curated operational research; visit labs.jamessawyer.co.uk to explore the integrated insights network.

UK HPI Housing Market Stress Report

Created: 2026-03-12 22:21:59 UTC | Latest month: 2025-12

Scope note: UK HPI is augmented with repossession counts (England regions, England, Wales) where available (coverage: 2016-05 to 2025-10; 11 areas).
Disclaimer: This report responds to comments on the Reddit thread; no commercial use allowed and the work remained a fun exercise. See GitHub and JS Labs for the wider series.
Contents

Overview

area_scope areas months start_month end_month analysis_lookback_months report_lookback_months repossession_start_month repossession_end_month repossession_areas
regions_and_countries 14 36 2023-01 2025-12 36 12 2016-05 2025-10 11

Plain-English guide

Stress signal rules (simple checklist)

signal rule interpretation
affordability pressure affordability_pressure >= 2.0 FTB price growth is materially above the wage growth proxy.
low volume liquidity_stress >= 0.80 Sales volume is in the bottom part of the area's history (thin market).
cash dominance cash_dominance >= 0.60 or cash_dominance_hist_pct >= 0.80 Cash share is high; can indicate mortgage constraints or cash-led pricing.
mortgage volume drop mortgage_volume_drop >= 10.0 Mortgage transaction activity is falling sharply year-over-year.
volatility high volatility_hist_pct >= 0.80 Monthly price changes are unusually unstable for that area.
fragmentation high fragmentation_hist_pct >= 0.80 Property types diverge unusually (segmented market).
bubble risk bubble_risk_z >= 2.0 YoY growth is unusually high vs long-run baseline for that area.
price below inflation pct_12m < 3.0 Price growth is below the inflation proxy (real-terms decline risk).

National snapshot (latest month)

period metric latest_month latest_value stress_percentile meaning
2023-01 to 2025-12 HSI (national) 2025-12 54.185 91.667 Composite stress score (0-100). Higher means more stress.
2023-01 to 2025-12 Price YoY (median) 2025-12 2.400 40.278 Low (below inflation) can indicate real-terms declines.
2023-01 to 2025-12 Sales volume YoY (median) 2025-10 -32.381 90.909 Falling volumes indicate a thinner market and harder financing.
2023-01 to 2025-12 Cash dominance (median) 2025-10 0.275 17.647 High cash share can mean mortgage market stress or cash-driven pricing.
2023-01 to 2025-12 Volatility (median) 2025-12 1.406 100.000 Higher volatility means more unstable monthly pricing.
2023-01 to 2025-12 Repossession rate (England, 12m per 1k) 2025-10 5.638 3.448 Higher means more repossessions per 1k sales (12m rolling sums).
2023-01 to 2025-12 Repossessions YoY% (England) 2025-10 -80.127 2.941 Higher means repossessions are rising faster year-over-year.
2023-01 to 2025-12 Affordability pressure (median) 2025-12 -1.500 66.667 FTB price growth above wage proxy; higher means harder for new buyers.
2023-01 to 2025-12 Mortgage volume drop (median) 2025-10 76.142 100.000 Higher means mortgage transaction activity falling faster (YoY).
2023-01 to 2025-12 Fragmentation (median) 2025-12 1.660 80.556 Higher means property types diverge (segmented market).

How widespread are the stress signals?

Date signal share_pct
2025-12 volatility high 64.286
2025-12 fragmentation high 64.286
2025-12 price below inflation 57.143
2025-12 affordability pressure 0.000
2025-12 low volume 0.000
2025-12 cash dominance 0.000
2025-12 mortgage volume drop 0.000
2025-12 bubble risk 0.000

Market conditions quadrants (2025-01 to 2025-12)

AreaCode RegionName start_quadrant end_quadrant quadrant_switches valid_months dominant_quadrant dominant_share_pct healthy_share_pct thin_divergent_share_pct contracting_share_pct recovery_distress_share_pct
E12000007 London Healthy Contracting 2 10 Thin/Divergent 40.0 30.0 40.0 30.0 0.0
E12000009 South West Healthy Contracting 3 10 Thin/Divergent 50.0 30.0 50.0 20.0 0.0
E12000006 East of England Healthy Thin/Divergent 2 10 Thin/Divergent 60.0 30.0 60.0 10.0 0.0
E12000004 East Midlands Healthy Thin/Divergent 1 10 Thin/Divergent 70.0 30.0 70.0 0.0 0.0
E92000001 England Healthy Thin/Divergent 1 10 Thin/Divergent 70.0 30.0 70.0 0.0 0.0
E12000001 North East Healthy Thin/Divergent 1 10 Thin/Divergent 70.0 30.0 70.0 0.0 0.0
E12000002 North West Healthy Thin/Divergent 1 10 Thin/Divergent 70.0 30.0 70.0 0.0 0.0
N92000002 Northern Ireland Healthy Thin/Divergent 1 10 Thin/Divergent 70.0 30.0 70.0 0.0 0.0
E12000008 South East Healthy Thin/Divergent 1 10 Thin/Divergent 70.0 30.0 70.0 0.0 0.0
K02000001 United Kingdom Healthy Thin/Divergent 1 10 Thin/Divergent 70.0 30.0 70.0 0.0 0.0
E12000005 West Midlands Region Healthy Thin/Divergent 1 10 Thin/Divergent 70.0 30.0 70.0 0.0 0.0
E12000003 Yorkshire and The Humber Healthy Thin/Divergent 1 10 Thin/Divergent 70.0 30.0 70.0 0.0 0.0
S92000003 Scotland Healthy Healthy 2 10 Healthy 70.0 70.0 30.0 0.0 0.0
W92000004 Wales Healthy Thin/Divergent 1 10 Thin/Divergent 60.0 40.0 60.0 0.0 0.0

Changepoints (HSI trend)

changepoint_date

Top stressed areas (latest month)

Date AreaCode RegionName hsi_0_100 hsi_change_1m hsi_change_3m hsi_change_6m hsi_change_12m stress_flags_total pct_12m sales_volume_yoy_pct top_drivers
2025-12 E12000002 North West 66.532 -1.842 6.369 1.737 6.464 1 4.5 NaN Volatility (17.5), Affordability pressure (16.5), Bubble risk (z-score) (8.9)
2025-12 E12000001 North East 66.420 -19.429 -8.298 -12.046 -11.798 1 4.6 NaN Volatility (18.9), Affordability pressure (14.2), FTB vs average price (9.4)
2025-12 S92000003 Scotland 65.701 8.805 20.638 16.164 -8.309 1 4.9 NaN Affordability pressure (16.5), Property-type fragmentation (12.9), Mortgage vs FTB price gap (12.1)
2025-12 E12000003 Yorkshire and The Humber 60.377 -4.672 -4.856 3.136 11.045 1 3.3 NaN Volatility (16.2), Affordability pressure (12.6), Property-type fragmentation (9.7)
2025-12 E92000001 England 58.491 -1.662 -0.195 2.186 12.806 3 1.7 NaN Property-type fragmentation (14.0), Volatility (10.8), Mortgage vs FTB price gap (9.9)
2025-12 W92000004 Wales 57.210 28.369 2.630 17.836 -5.184 0 5.0 NaN Affordability pressure (18.9), Bubble risk (z-score) (11.3), Monthly shock (abs z) (7.5)
2025-12 E12000005 West Midlands Region 55.144 12.062 -5.727 -5.350 4.577 2 2.0 NaN Volatility (13.5), Affordability pressure (9.4), Property-type fragmentation (8.6)
2025-12 K02000001 United Kingdom 53.226 6.682 13.468 10.773 -0.615 3 2.4 NaN Property-type fragmentation (20.3), Bubble risk (z-score) (11.1), Volatility (9.2)
2025-12 E12000004 East Midlands 51.011 -6.087 -5.006 -1.717 -1.456 3 2.4 NaN Volatility (14.8), Affordability pressure (11.0), Property-type fragmentation (7.5)
2025-12 E12000009 South West 50.090 -5.795 3.512 -2.464 9.535 3 0.3 NaN Property-type fragmentation (10.8), Mortgage vs FTB price gap (8.8), Volatility (8.1)
2025-12 E12000006 East of England 45.530 -4.155 -5.941 -8.122 10.183 3 1.5 NaN Mortgage vs FTB price gap (11.0), Volatility (9.4), Bubble risk (z-score) (7.3)
2025-12 N92000002 Northern Ireland 41.820 -1.498 6.443 6.510 -12.560 0 7.5 NaN Volatility (20.7), Bubble risk (z-score) (16.6), Property-type fragmentation (1.8)
2025-12 E12000007 London 39.712 -5.121 -5.110 -9.377 -3.884 3 -1.0 NaN Property-type fragmentation (15.1), Volatility (6.7), Drawdown from 36m peak (5.7)
2025-12 E12000008 South East 36.680 -3.504 -7.875 -10.728 -18.193 2 0.0 NaN Mortgage vs FTB price gap (13.2), Property-type fragmentation (6.5), Drawdown from 36m peak (5.3)

Top stressed areas (recent months comparison)

month AreaCode RegionName 2025-07 2025-08 2025-09 2025-10 2025-11 2025-12 change_1m change_3m
E12000001 North East 76.980 84.335 74.717 82.190 85.849 66.420 -19.429 -8.298
E12000002 North West 70.429 69.745 60.162 52.583 68.374 66.532 -1.842 6.369
E12000003 Yorkshire and The Humber 62.357 60.070 65.233 69.146 65.049 60.377 -4.672 -4.856
E12000004 East Midlands 64.810 71.634 56.017 50.241 57.098 51.011 -6.087 -5.006
E12000005 West Midlands Region 56.910 54.622 60.871 60.010 43.082 55.144 12.062 -5.727
E12000006 East of England 48.041 56.304 51.471 51.283 49.686 45.530 -4.155 -5.941
E12000007 London 44.693 46.402 44.822 53.262 44.834 39.712 -5.121 -5.110
E12000008 South East 47.703 34.327 44.556 48.445 40.184 36.680 -3.504 -7.875
E12000009 South West 45.458 43.018 46.578 44.998 55.885 50.090 -5.795 3.512
E92000001 England 60.171 59.417 58.686 59.028 60.153 58.491 -1.662 -0.195
K02000001 United Kingdom 44.879 43.127 39.757 40.701 46.544 53.226 6.682 13.468
N92000002 Northern Ireland 25.741 32.210 35.377 30.795 43.318 41.820 -1.498 6.443
S92000003 Scotland 41.416 42.343 45.063 48.747 56.896 65.701 8.805 20.638
W92000004 Wales 45.940 40.270 54.580 44.950 28.841 57.210 28.369 2.630

Model-based deterioration risk (latest month)

Important: The model learns a label built from thresholds in this report, not external ground truth. Use it as a consistent scoring view.
train_rows test_rows cutoff_date test_months accuracy precision recall roc_auc
378 126 2025-03-01 9 0.754 0.646 0.944 0.761
Date AreaCode RegionName hsi_0_100 deterioration_risk
2025-12 E12000002 North West 66.532 0.004
2025-12 E12000003 Yorkshire and The Humber 60.377 0.004
2025-12 E12000001 North East 66.420 0.004
2025-12 E12000006 East of England 45.530 0.003
2025-12 E92000001 England 58.491 0.003
2025-12 E12000005 West Midlands Region 55.144 0.001
2025-12 W92000004 Wales 57.210 0.000
2025-12 E12000004 East Midlands 51.011 0.000
2025-12 E12000007 London 39.712 0.000
2025-12 E12000008 South East 36.680 0.000
2025-12 E12000009 South West 50.090 0.000
2025-12 N92000002 Northern Ireland 41.820 0.000
2025-12 K02000001 United Kingdom 53.226 0.000
2025-12 S92000003 Scotland 65.701 0.000

Clusters

Date AreaCode RegionName cluster affordability_pressure volatility_12m cash_dominance mortgage_ftb_gap
2025-12-01 E12000007 London 0 -5.6 1.301 NaN 0.158
2025-12-01 E12000004 East Midlands 1 -1.3 1.566 NaN 0.172
2025-12-01 N92000002 Northern Ireland 1 NaN 1.463 NaN NaN
2025-12-01 K02000001 United Kingdom 1 NaN 1.134 NaN NaN
2025-12-01 W92000004 Wales 1 1.4 0.857 NaN 0.165
2025-12-01 E12000005 West Midlands Region 1 -1.7 1.504 NaN 0.184
2025-12-01 E12000006 East of England 2 -2.3 1.402 NaN 0.227
2025-12-01 E92000001 England 2 -2.2 1.411 NaN 0.216
2025-12-01 S92000003 Scotland 2 0.9 1.124 NaN 0.265
2025-12-01 E12000008 South East 2 -3.9 0.822 NaN 0.278
2025-12-01 E12000009 South West 2 -3.5 1.402 NaN 0.207
2025-12-01 E12000001 North East 3 0.8 3.429 NaN 0.178
2025-12-01 E12000002 North West 3 0.9 2.672 NaN 0.179
2025-12-01 E12000003 Yorkshire and The Humber 3 -0.3 2.514 NaN 0.164

HSI composition

feature label weight meaning
affordability_pressure Affordability pressure 1.0 FTB 12m% change minus wage growth proxy; higher means affordability worsening.
liquidity_stress Low sales volume 1.0 Low historical sales volume percentile (1.0 = worst); higher means thinner market liquidity.
volatility_12m Volatility 1.0 Rolling 12-month standard deviation of monthly price changes; higher means more unstable pricing.
fragmentation_12m_std Property-type fragmentation 0.8 Dispersion of 12m% changes across property types; higher means a segmented market.
mortgage_volume_drop Mortgage volume drop (YoY) 0.8 -(mortgage sales volume YoY%); higher means mortgage activity falling faster.
price_volume_divergence Price-volume divergence 0.8 Price YoY% minus volume YoY%; high values can mean prices up on falling liquidity.
mortgage_ftb_gap Mortgage vs FTB price gap 0.7 MortgagePrice / FTBPrice - 1; higher means financed buyers are paying a larger premium over FTB segment.
bubble_risk_z Bubble risk (z-score) 0.6 Z-score of YoY price change vs long-run baseline; high values indicate unusually hot growth for that area.
cash_dominance Cash dominance 0.6 CashSalesVolume / (CashSalesVolume + MortgageSalesVolume); higher suggests mortgage constraints or cash-driven pricing.
cash_dominance_change_12m Cash dominance change (12m) 0.6 Change in cash dominance vs 12 months ago; rising implies worsening mortgage conditions.
repossession_rate_12m_per_1000_sales Repossession rate (12m per 1k sales) 0.6 Repossession 12m sum / sales volume 12m sum * 1000; higher suggests rising financial distress.
ftb_to_avg_price FTB vs average price 0.5 FTBPrice / AveragePrice; higher means first-time buyers are paying closer to the overall average.
new_old_premium New vs old premium 0.4 NewPrice / OldPrice - 1; higher means new builds are priced at a larger premium.
shock_1m_abs_z Monthly shock (abs z) 0.4 Absolute z-score of the 1m% change vs recent history; higher means a more unusual monthly move.
drawdown_36m Drawdown from 36m peak 0.3 (rolling peak - level) / rolling peak over 36m; higher means larger retreat from recent peak.

Charts

National overview

National overview

Repossessions (England breakdown)

Repossessions (England breakdown)

National feature medians

National feature medians

HSI STL decomposition

HSI STL decomposition

HSI changepoints

HSI changepoints

Stress breadth (flags)

Stress breadth (flags)

HSI change vs 12m ago

HSI change vs 12m ago

HSI driver breakdown (latest)

HSI driver breakdown (latest)

HSI heatmap (top areas)

HSI heatmap (top areas)

Anomaly detection

Anomaly detection

Latest stress ranking

Latest stress ranking

Market Conditions Quadrant Analysis (12m summary)

Market Conditions Quadrant Analysis (12m summary)

Downtrend & liquidity fracture signal

Downtrend & liquidity fracture signal

Classifier permutation importances

Classifier permutation importances

Market Structure Clusters (PCA)

Market Structure Clusters (PCA)