Methodology
How the figures on RealScout are computed, what they can and cannot support, and where we know they are biased. Every threshold and most of the measured figures on this page are read from the dataset itself, so what you read here describes the code that produced the numbers.
In short
- What the figure is. For every qualifying sale we divide the price HM Land Registry recorded by the floor area on that property’s Energy Performance Certificate, and publish the median of those figures for the area over a stated window. It describes an area, never a specific home.
- We can only price the sales we can match. About 80.0% of sales find an EPC floor area, against 93.2% for the published academic linkage, and the matched ones are about 5.0% cheaper than the ones we cannot match. So the price per square metre statistics describe a subset that leans slightly cheap. The coverage and the gap, measured.
- Historic prices are divided by present-day floor areas. Certificates only exist from 2008, so a 1995 sale is matched to a later one. Where a home was extended in between, its historic price per square metre is too low and measured growth too high. What that does to a trend.
- Our floor area is not the ONS’s floor area. The 2017 ONS price per square metre work used a measure that excludes bathrooms, hallways and landings from a flat; ours does not. Our flat figures are structurally lower and the two sets are not comparable. Why, and what to do about it.
- Below a sample floor we publish nothing. A median needs 30 matched sales and a spread needs 50. Under the floor the page shows the individual sold prices instead. The ladder.
- Every median has a range. Each published median carries a 95% confidence interval and its sample size, which no official UK house-price producer publishes. How it is computed.
Where the data comes from
RealScout is built on HM Land Registry Price Paid Data, which records every property sale registered in England & Wales. Because sold prices alone do not tell you how big a property is, we combine each sale with the floor area recorded in the property’s Energy Performance Certificate (EPC) from the Energy Performance of Buildings Register.
The neighbourhood names shown on each district page come from OS Open Names. Contains OS data © Crown Copyright and database rights 2026. Contains Royal Mail data © Royal Mail copyright and database right 2026. Contains National Statistics data © Crown copyright and database right 2026.
How we compute price per square metre
For each matched sale we divide the sold price by the EPC floor area to get a price per square metre. We then aggregate those figures by area and publish the median: half of matched sales sit above it, half below. It appears alongside the underlying sales, so you can judge the evidence behind each number yourself. Square-foot figures are converted from the same underlying data (1 square metre = 10.7639 square feet). Every transaction we use is also downloadable as a free CSV from each area page, up to 60 months of sales per district. The dataset page explains what the export contains, how to cite it and what the Open Government Licence asks of you in return.
What “floor area” means here
Our floor area is the total floor area recorded on the property’s Energy Performance Certificate (EPC register TOTAL_FLOOR_AREA). It is a gross internal area, measured by the energy assessor, covering every heated internal space in the dwelling: rooms, bathrooms, hallways, landings and internal circulation.
That is not the measure behind the ONS price per square metre figures, and the two must not be compared. The ONS’s 2017 work on price paid per square metre used Valuation Office Agency floor areas, where the definition for a flat or maisonette explicitly excludes bathrooms, corridors, hallways and landings. A flat with the same walls therefore has a smaller VOA area than an EPC area, and the same sale produces a higher £/m² in the ONS series and a lower one here. Our flat figures are structurally below theirs, by an amount that varies with the layout of the flat, and neither number is wrong. Houses are measured more similarly under the two conventions, but they are still not identical definitions.
The practical rule: compare our figures with our figures. Any district, year or flat on this site can be set against any other, because every number here comes through the same measurement. A RealScout figure against one from a source that measured differently cannot.
Two smaller consequences of using EPC areas. Areas below 10 m² or above 2,000 m² are dropped as implausible. They are recorded to the whole square metre, so a 48 m² flat and a 48.4 m² flat are the same number here; and they are assessments, which occasionally contain errors. The fence described under Outliers catches the worst of them.
Coverage
- Countries
- England & Wales.
- Not covered
- Scotland and Northern Ireland (no HM Land Registry Price Paid Data / EPC register coverage).
- History
- Every area page carries quarterly and yearly figures from 1995 (the first year of Price Paid Data) to the latest release.
Which sales we can price, and which we cannot
A price per square metre needs two things: a sold price and a floor area. Every sale brings its own price; the floor area has to be found by matching the address to the EPC register, and that match does not always succeed. About 80.0% of qualifying sales find one. The published academic linkage of the same two datasets (Chi & Dennett et al., published PPD-EPC linkage) reaches 93.2%, and 88.6% on flats. We are some way below the best published attempt.
Coverage is not even across property types. Detached homes are the worst served, at about 68.3%. The two most likely reasons are both about addresses: named properties without a number are harder to match than numbered ones, and address conventions vary between local authorities, so match rates carry a geographic pattern with no property cause behind it.
| Property type | Found a floor area | Produced a £/m² |
|---|---|---|
| Detached | 68.3% | 68.2% |
| Semi-detached | 79.4% | 79.2% |
| Terraced | 84.6% | 83.7% |
| Flat or maisonette | 89.0% | 88.9% |
“Found a floor area” is the address match; “produced a £/m²” also requires the result to fall inside the sanity band below.
Are the sales we can price like the ones we cannot?
A coverage figure cannot answer that on its own, so we publish the answer directly: the median price of the sales carrying a floor area, against the median price of the sales that do not. Nationally, matched sales are about 5.0% cheaper than unmatched ones. That is 3,224,582 matched against 640,746 unmatched sales, over the trailing 60 months.
So the price per square metre statistics describe a subset that leans slightly cheap. It is a real bias and we would rather you knew its size than trusted that it is small; it is also an order of magnitude smaller than the differences between areas that the figures are used to compare. The sale-price statistics on every area page are computed over every qualifying sale, matched or not, so they do not inherit it. That is part of why both counts are always shown (see Two counts on one card).
Sales with a published £/m² ('priced': EPC-matched, inside the sanity band and inside the district fence) compared with every other sale.
Our match has no date condition, so early-year coverage here is NOT comparable with a date-bounded linkage: a 1995 sale is matched to that address's latest certificate. The overall and by-type figures are the like-for-like ones.
index.json publishes match_coverage (EPC match rate by year and by property type, against a published academic benchmark) and match_bias (the median price of sales we can price against the median price of those we cannot, nationally, by region and per district). If the priced subset were unrepresentative, the £/m² statistics would inherit that bias.
Historic prices, present-day floor areas
Price Paid Data starts in 1995. Energy Performance Certificates start in 2007–08, and became compulsory on sale in England & Wales in October 2008. There is therefore no certificate contemporary with a 1995 sale, or a 2001 one, and there never will be.
The EPC join has no date condition: a sale is matched to that address's latest certificate, so a historic sale can be divided by a present-day floor area. On this build the median gap between a sale and the certificate that prices it is 10.9 years, and in 71% of matched sales the certificate is lodged AFTER the sale.
The direction of the error is knowable even where its size is not. Where a home was extended after the sale, the denominator is too large, so the historic price per square metre is too low and the growth measured from it is too high. It is not spread evenly either: it concentrates in the stock most likely to have been extended, houses more than flats and suburbs more than city centres, so it can move one district’s ten-year figure more than another’s. Every long-run figure on this site, the CAGRs and the risers and fallers tables included, carries it.
What it does not affect: any comparison between areas over the same recent window, which is what the headline figures are, and any figure computed from sales after about 2010, where certificates and sales are broadly contemporary.
A date-bounded variant is the fix, and it is being built: a price per square metre published only where the certificate falls within a stated number of years of the sale, as a second series beside this one. When it lands, this section will carry the measured size of the bias. Until then, treat pre-2010 points on the history charts as indicative of the shape of a market and not as measurements of its level.
Which sales count
- Full-market sales only
- Standard full-market-value sales only; repossessions, buy-to-lets sold at non-market value, portfolio and power-of-sale transfers (category B) and deleted/amended records are out. In the pipeline that is
ppdcat = 'A' AND recordstatus = 'A'. - Property types
- Detached, semi-detached, terraced and flat or maisonette. Other registered categories (commercial and “other” records) are excluded.
- Price range
- Sales below £10,000 or above £20,000,000 are dropped as data errors or non-market transfers.
- Floor-area range
- EPC floor areas below 10 m² or above 2,000 m² are dropped.
- Matching a sale to a floor area
- Floor area comes from EPC register TOTAL_FLOOR_AREA. A sale is only matched to an EPC when the addresses agree closely, and every sale that cannot be matched is counted and published rather than dropped (exact normalised-address hit scores 2.0, otherwise Jaro-Winkler within the postcode).
How wide a window each figure covers
Widen to the first window with at least `target_priced` EPC-matched sales; fall back to the widest window otherwise.
- Districts
- 12, 24, 36 then 60 months, stopping at the first window with at least 30 matched sales.
- Sectors
- 24, 36 then 60 months, stopping at the first window with at least 10 matched sales.
- Areas with no matched floor areas
- Without EPC data the ladder counts all transactions instead of matched ones.
The window in force is stated next to every figure, so a count is never shown without the period it covers.
Outliers
Some sales imply a price per square metre that cannot be right: a floor area typed with a digit missing, a garage recorded against a flat, or a part-share registered at the price of the share. Two rules catch them, and one principle governs both.
An outlier verdict withholds that sale’s price per square metre. It never removes the sale. The sale stays in the sales count, in the median and mean sale price, and in the list of individual sales on the area page, where anyone checking us against HM Land Registry’s own price-paid search expects to find it. Only the ratio, which is the one figure the quality rule is about, is withheld. Until the July 2026 rebuild the fence dropped the whole row instead, so a district could publish counts and a sales list quietly missing up to one sale in eleven.
- Sanity band
- A sale implying under £200/m² or over £50,000/m² gets no price per square metre. This applies across the full 1995+ history.
- Statistical fence, computed per property type
- Log-scale (multiplicative) IQR on ln(£/m²) over the trailing 60 months: keep exp(q1 - 1.5 × iqr) .. exp(q3 + 1.5 × iqr). Computed WITHIN each district × property type where that cell has at least 30 matched sales, and from the district pool below that. The multiplier is 1.5 times the interquartile range (the gap between the 25th and 75th percentiles), the standard convention. A district and type needs at least 30 matched sales before it gets bounds of its own. Per type, because within a district the spread of price per square metre is dominated by property type. A pooled rule trims whichever type is locally in the minority (the flats in a detached district, the houses in a flat one) and then files those sales as errors.
- Per-sector floor
- The per-row bounds widen to the row's own sector × property type [q1, q3] of ln(£/m²), so no sector's flats (or houses) can lose their middle 50% to a district-wide fence. It applies only where that sector × type has at least 20 matched sales. The floor widens the bounds, so a bad one re-admits the errors the fence exists to catch, for every row in the sector. Computed from as few as two sales, its 'q1' and 'q3' are an interpolation between the only two observations there are. 20 is deliberately below the 30 needed to publish a median: a rule that only protects data from being discarded needs less evidence than one that puts a number on a page.
- What we tell you
- Every area’s data file publishes the number of sales whose price per square metre was withheld, split by which rule withheld it (ppsqm_excluded, with ppsqm_excluded_fence and ppsqm_excluded_band giving the reason split, per district and per sector): see
ppsqm_excluded,ppsqm_excluded_fenceandppsqm_excluded_bandin/data/districts/{district}.json. Counts sales that HAD an EPC floor area but whose £/m² was excluded. Sales with no EPC match are not excluded, only unmatched, and are visible as transaction_count minus priced_count. `excluded_outliers` is a deprecated alias of ppsqm_excluded.
What the fence actually removes
A fence that is a quality filter should remove a similar share of every property type. If it removes far more of one, it is removing a type and not an error. So the rate is published per type.
| Property type | Withheld now | Withheld by the old pooled rule |
|---|---|---|
| Detached | 4.61% | 2.54% |
| Semi-detached | 3.15% | 1.90% |
| Terraced | 2.73% | 2.92% |
| Flat or maisonette | 4.69% | 6.91% |
The spread between the most- and least-trimmed type is 1.96 percentage points, against 5.01 under the pooled rule this replaced. Of the sales that produced a £/m² inside the sanity band in the trailing 60 months, the share whose £/m² the fence excluded, per property type.
Across England & Wales in the trailing 60 months, the fence withheld a price per square metre for 3.06% of sales, and the sanity band a further 464. Every one of those sales is still published, with its price, its date and its address.
Where we publish no statistic
A £/m² statistic is published only when the sample it is computed from clears its floor. Below the floor nothing is published and the individual sold transactions are shown instead.
- Median and mean price per square metre
- Published only from 30 or more matched sales.
- The p20–p80 range
- Published only from 50 or more matched sales. A range sits in the tails, where a handful of sales moves it a long way, so it needs a bigger sample than a middle does.
- Counted against
- priced_count of that segment: the statistic's own denominator, never the segment's transaction count.
- Where it applies
- Every grain we publish (district, sector, district top-sectors, national and region) and every segment within them: all, freehold, leasehold, by_type and new_build. A tenure split of a district is a sample in its own right and carries its own floor.
- The history charts have their own, lower floor
- The quarterly and yearly series have their own, lower mask (trends.mask_below_priced). A trend point is one observation in a series shown with its own n and with masked gaps. It does not stand as a headline estimate of the area's value. Applying 30 at quarterly grain would mask most of the country's history.
- Why higher than the official floors
- HPSSA withholds below 5 for a median of PRICE; PropertyData blanks below 20 for £/ft². Ours is a ratio estimator, a price divided by an EPC floor area, so it compounds price dispersion with floor-area measurement error and needs a higher floor than either.
Below a floor the page does not go blank. It shows the individual sold prices for the area, which are records, and the statistics of the area above it for context.
Sold prices are deliberately not laddered
The ladder applies to price per square metre and to nothing else. A median sale price is published however few sales an area has, and so is the count.
median_price and avg_price carry no floor. They are not ratio estimators: a median price is the middle of a list of observed transactions, and that list is published in full underneath it. Suppressing it would hide a fact in the name of statistical caution. A price per square metre is different in kind. It is a ratio, price divided by a measured floor area, so it compounds the spread of prices with measurement error in the area, and from three sales it is a number with no useful precision at all. Withholding a recorded fact in the name of statistical caution would hide something true; that is a different failure from publishing something unreliable, and the two deserve different answers.
What the ladder costs
A floor is only honest if its price is visible. Of the segments that have at least one matched sale, and where a median could therefore have been printed, this is the share the ladder holds back.
| Grain | Medians published | Withheld by the ladder |
|---|---|---|
| district | 2,235 | 4 (20.0%) |
| sector | 7,070 | 1,125 (13.7%) |
| top_sector | 6,872 | 881 (11.4%) |
Computable = segments with at least one priced sale; suppressed_ladder = of those, the ones below the floor (nothing published, sold transactions shown instead); suppressed_estimate = the separate §5.4 retirement of the legacy £/m² seed, not the ladder's doing.
The range around a median
Every published median price per square metre carries a 95% confidence interval and the number of sales behind it, shown under the figure and as a shaded band on the history chart. No official UK producer publishes a confidence interval on any house-price statistic. HPSSA, UK HPI and PropertyData all publish point estimates only.
What it means in ordinary terms: the median we print is computed from the sales that happened to occur, and a different few hundred sales in the same area would have produced a slightly different figure. The interval is the range within which the area’s true middle is likely to sit. A narrow interval is a well-sampled area; a wide one is a warning that two districts a few hundred pounds apart are not distinguishable.
- Method
- Distribution-free order-statistic (binomial) interval on the median: with n matched sales sorted ascending, the interval is [x_(k), x_(n-k+1)] where k = floor(n/2 - 1.96*sqrt(n)/2 + 0.5). In short: a order-statistic (binomial) interval.
- Why this method
- The number of observations below the population median is Binomial(n, 1/2) whatever the shape of the distribution, so this interval's coverage is exact at any n, with no asymptotic approximation. Checked against the exact binomial for every n from 30 (the suppression floor) to 3,000: coverage runs 0.950-0.980 and never falls below 0.95, so the interval is conservative everywhere it is published.
- Why not a bootstrap
- A percentile bootstrap is the obvious alternative and was the plan's default. It is asymptotic, under-covers in exactly the small samples where a published interval matters most, costs ~2,000 resamples of every one of ~69,000 segments and ~300,000 trend points, and does not reproduce between runs without a pinned seed. That is the class of build-to-build drift R15 exists to remove.
- It is not symmetric
- The bounds are two observed sales, not median ± x. £/m² distributions are right-skewed and a symmetric interval would assert a symmetry the data does not have.
- No median, no interval
- No median, no interval. The interval is gated on exactly the same condition as the median it describes, at every grain.
- Rounding
- The bounds are rounded onto the same grid as the median, against the same sample size. Rounding to nearest on a shared grid is monotone, so lo <= median <= hi survives publication.
- How it relates to the confidence level
- The confidence level is derived from a relative standard error (normal-theory, sigma from the IQR); this interval is computed by a different route from the same sample. index.json publishes ci_vs_rse, the distribution of the ratio between the two half-widths, so the two uncertainty statements can be checked against each other.
What it does not cover. It is a statement about sampling, and only about sampling. It cannot account for the sales we could not price (see coverage), for floor areas measured at a different date from the sale (see historic floor areas), or for a certificate that is simply wrong. Those are biases, not noise, and a wider interval would not describe them.
Confidence
The High / Medium / Low label on an area is a different statement from the interval above, and the two answer different questions. The interval says how precisely this figure is known from the sales behind it. The confidence level describes the data for the area: how much of it there is, how recent it is, and what share of it we could price. That is what a reader is asking about when they wonder whether to rely on a page at all.
The score combines three things: precision (60%), coverage (25%) and freshness (15%).
- Formula
0.60 × precision + 0.25 × coverage + 0.15 × freshnessWithout matched sales the match-rate term drops out:in a build with no EPC data at all there is no £/m², so precision is computed on the median PRICE instead (basis is published per area), coverage is 0 and the level is capped at Medium.- Levels
- basis the 95% interval on the published median, from the same relative standard error (z = 1.96), High interval within ±5% of the median, and coverage ≥ 50%, Medium interval within ±10%, Low wider than ±10%, or no published median and why_not_score_thresholds the level says something checkable about the number on the page. A cut at 0.75 of a weighted composite says nothing at all..
- Caps
- However the score lands, areas with no matched floor areas are capped at Medium and areas whose floor areas are estimated are capped at Low.
The history charts
Each trend line is that district’s own quarterly median price per square metre, scaled to its own range: compare directions, not heights. Gaps are quarters with too few matched sales to publish a median.
- Grain
- quarterly and yearly series, from 1995 onwards.
- Thin quarters are withheld
- A period's median £/m² is withheld below 8 matched resale sales. That count is the median's own denominator and is published as priced_count.
- Resale only
- The price per square metre lines use resale sales only, so a burst of new-build completions cannot masquerade as a market move. transaction_count and avg_price stay all-sales (volume is volume); only the £/m² medians are resale-only.
- The most recent quarter
- Incomplete periods carry partial: true and a partial_reason, on BOTH grains, and are excluded from growth calculations. It is drawn dashed and hatched, and left out of every growth figure.
Adjusting for the mix of homes sold
The raw median also moves when the mix of homes sold changes: a quarter heavy in flats reads as a fall. Holding the mix constant leaves movement that is much closer to price change.
- Method
- Chain-linked geometric Young index of property-type medians, on a fixed base.
- Weights
- Each area's share of matched resale sales by type (D/S/T/F) in the FIXED weight window below, held constant across every period and published as mix_weights.
- Thresholds
- at least 8 matched sales of a type within the period, at least 2 types clearing that bar and those types covering at least 75% of the area's long-run mix.
- Areas with no mix-adjusted line
- Where one type dominates an area's sales, no second type clears the threshold, the basket never reaches 75% coverage and no mix index is published. That is correct: the raw median already is that type's median and there is no mix to hold constant. The fixed weight window has the same effect on areas that barely existed in 2013-2017: no base-period mix, no index.
- What we do not do
- No full hedonic regression. The available attributes (type, floor area, tenure, new-build) do not support one honestly. The repeat-sales index is the second series that does control for composition, by construction.
Inflation adjustment
The History tab’s money basis switches between cash terms and today’s money. Cash terms are the prices actually paid at the time; in today’s money every past figure is restated in current money, so a 1995 figure and a 2026 one buy the same amount.
- Index used
- CPIH (all items, 2015=100) (series L522), monthly from 1988-01.
- Method
- Nominal × (CPI_latest / CPI_period), i.e. restated in the money of the reference month in cpi_base. A period's index value is the mean monthly index over the calendar months the period covers.
- Reference month
- Real-terms figures are expressed in 2026-07 money. That month is the 100 base of the adjustment.
- Source
- Office for National Statistics, released 2026-08-18, Open Government Licence v3.0 (view the series).
New-build sales
- Excluded from the headline
- New-build sales are excluded from the headline median price per square metre, because their premium would otherwise inflate development-heavy areas. They are identified by Land Registry oldnew = 'Y'.
- Reported separately
- The new-build premium is published as its own figure: new_build.premium_pct = new-build median £/m² against the resale headline median, in per cent. It is only shown where an area has at least 30 matched new-build sales in the window.
Breakdown by property type
Each area page splits the median price per square metre by property type (detached, semi-detached, terraced and flat or maisonette), publishing a type only where it has at least 30 matched sales in the window. Types below that bar are left out.
Two counts on one card
- Sale-price statistics
- At district and sector grain: every category-A RESALE in the window (transaction_count); new-builds are excluded from the headline segments per §5.3 and published separately under new_build. At national and region grain: every category-A sale, resale or new-build. The published transaction list always carries every sale.
- Price per square metre statistics
- Only the EPC-matched subset of the same pool (priced_count).
One card can carry two populations. Both counts are always published; £ statistics are deliberately NOT restricted to the matched set, because the unrestricted median price is the more robust number and the honest label is cheaper than the re-computation.
Rounding and precision
An undisclosed rounding rule is the kind of thing a reader discovers by subtracting two of our numbers, so here it is. Rounding happens once, at the point of display, from full-precision values. Rounding twice is how a published figure drifts.
- Price per square metre
- Published to 3 significant figures: £9,310, not £9,312, and never to a step finer than £10. A median price per square metre is a median of price ÷ floor area over a few dozen to a few hundred matched sales, so it carries sampling noise from the price and measurement noise from the area, and EPC floor areas are themselves recorded to the whole square metre. The last two digits of a four- or five-figure number are not information, and printing them invites a reader to treat a £13 gap between two districts as a difference. £7,962/m² asserts four significant figures that a few hundred sales cannot support.
- Growth rates
- One decimal place, never two. A compound annual rate built from smoothed quarterly medians cannot support one part in ten thousand.
- Sold prices and counts
- Exact. A sold price is a recorded fact, so it is published to the pound exactly as HM Land Registry holds it, and every count is the count.
- Confidence intervals
- Both bounds are rounded onto the same grid as the median they bracket, against the same sample size, so an interval can never assert more precision than the figure inside it. The bounds cannot cross it in the rounding either.
Postcode-level figures
- Minimum sales
- A full postcode needs at least 3 matched sales before any price per square metre is shown, and the figures are client-side from the district transaction list.
- Ranges
- The middle 60% of sales (p20–p80) is withheld below 10 sales.
- How it is labelled
- 3-9 sales must render an explicit 'indicative' badge pointing at the sector for reliable statistics; below 10 sales no p20-p80 range is shown and no confidence level is implied.
Areas where we publish no price per m²
Districts with fewer than 30 matched sales over 60 months publish NULL £/m² (price statistics intact) and are capped at Low confidence; the legacy 2024 BigQuery £/m² seed is retired as a published source. Those areas are marked in the dataset as ppsqm_source = 'estimate'. Sold prices, counts and the individual sales are still published. We would rather show fewer statistics than doubtful ones.
How often the data is updated
We refresh our dataset periodically from the official releases. Land Registry publishes new and corrected sales on a rolling basis, andregistrations lag sales by 2–8 weeks. A correction to an existing record can arrive months after that.
Revisions, and what a figure is a figure from
A number on this site is a number from a particular vintage of the source data. It can change when that vintage does, with no change at all to the method.
- What the source does
- HM Land Registry restates Price Paid Data every month. Sales are registered weeks to months after completion, and existing records are corrected or deleted. The most recent quarters are therefore always incomplete on first publication and grow with each refresh.
- What we do
- Every refresh recomputes the whole 1995-present history from the current vintage of the source files. Figures are not frozen and are not reconciled against what we published last month, so a number here can change between vintages with no change to the method.
- The most recent periods
- The quarter containing data_anchor and the quarter before it are both flagged partial and excluded from growth calculations; the latest year is flagged partial for the same reason.
- How the official index handles it
- The ONS / HM Land Registry UK House Price Index revises its most recent 12 months for the same reason, and says so; the same caveat applies to every figure here.
- How to tell which vintage you are reading
- data_anchor is the latest sale date in the dataset; match_vintage records when the EPC match feeding this build was produced and whether any source file has changed since; dataset_version is derived from data_anchor, never from the build date. The month is shown on every area page.
- A known gap
- The monthly refresh re-downloads only the years named in FORCE_YEARS, so corrections and deletions applied to older years are picked up only when a wider span is re-pulled.
Affordability assumptions
The affordability figures on each area page are illustrations, not offers. They rest on a small set of published assumptions, all held in one place in the code so they can be reviewed together:
- Borrowing is capped at 4.5× gross household income, a typical mainstream lender cap and no guarantee of what you would be offered.
- Monthly payments assume a repayment mortgage at 4.0%, 4.5%, 5.5%, over a term you set between 5 and 40 years (default 25). These illustrative rates are as of July 2026, based on Bank of England average quoted mortgage rates. Your actual rate will differ.
- The deposit is adjustable from 5% to 100% of the price (default 10%), on a price or floor-area basis you choose.
- Cash needed on completion is the chosen deposit plus stamp duty at the standard or first-time-buyer rates as selected. Legal fees, survey and removals are not modelled.
- Earnings used in the price-to-earnings ratio are approximate median full-time gross annual earnings by region from ONS ASHE, shown with their vintage on the page itself.
Stamp duty is computed at the Stamp Duty Land Tax rates for England and Northern Ireland effective from April 2025:
- standard rates: 0% to £125,000, 2% on the slice from £125,001 to £250,000, 5% to £925,000, 10% to £1,500,000 and 12% above;
- first-time buyer relief: 0% to £300,000, then 5% to £500,000, with relief withdrawn entirely above £500,000.
Bands last checked against gov.uk, Stamp Duty Land Tax: residential property rates in August 2026. Wales charges Land Transaction Tax and Scotland charges Land and Buildings Transaction Tax; neither is modelled, so figures for Welsh areas are shown as the England and Northern Ireland equivalent and labelled as such. Surcharges for additional properties and non-resident buyers are not included.
How growth figures are computed
Change over a range and annual growth (the compound annual growth rate, or CAGR) are computed from the quarterly series, averaging up to the first three and last three quarters that have data. One unusual quarter at either end would otherwise rewrite the headline. The most recent quarter is normally incomplete:registrations lag sales by 2–8 weeks. It is marked on the charts and excluded from the growth arithmetic.
- The headline growth figure
- Each area page also carries a precomputed 10-year figure, in cash terms and after inflation, with the period it covers stated beside it.
- Endpoints
- Mean of the first and last 3 non-partial quarterly points of the window.
- Series used
- The mix-adjusted series where both endpoints exist, otherwise the raw median (reported as growth.basis).
Frequently asked questions
Where does the data come from?
From official open data: HM Land Registry Price Paid Data for sold prices, the Energy Performance of Buildings Register for floor areas, and the ONS CPIH index for the inflation adjustment. All are published by UK government bodies and updated regularly.
Why price per square metre?
Headline sold prices mix up the value of an area with the size of the properties that happen to sell there. Dividing by floor area gives a like-for-like measure, so you can compare a street of small flats with a street of large houses on equal terms. It is the same way most of Europe already compares property.
How accurate is it?
The figures are computed from real registered sales, never asking prices, and every median now carries a 95% interval saying how precisely it is known. They still describe areas: any individual home can sell well above or below its local median depending on condition, exact location and timing. Floor areas come from EPC assessments, which occasionally contain errors. Treat a figure as a well-founded reference point for an area. It says nothing about one address.
What would you flag about your own numbers?
Three things, all of them above in full. We can only price the sales we can match to a certificate, and those sales are about 5.0% cheaper than the ones we cannot (coverage and bias). Historic sales are divided by present-day floor areas, which overstates long-run growth in stock that has been extended (historic floor areas). And our floor area is a different measurement from the one behind the ONS 2017 price per square metre figures, so our flat figures are structurally lower and the two sets cannot be compared (what floor area means).
Why is your figure different from the ONS one?
Most often because the floor areas are measured differently. The ONS work used a measure that excludes bathrooms, hallways and landings from a flat, and ours does not, so the same sale produces a lower £/m² here. The definitions, side by side. It can also be the geography (we publish at postcode district, below any official £/m² series), the window, or the exclusion of new-builds from our headline figures.
Why is my postcode missing?
Smaller areas can have too few matched sales to publish a median. We would rather show nothing than a misleading number from a handful of sales. Areas in Scotland and Northern Ireland are outside the dataset entirely, and very recent sales may not yet have reached the official releases.
Attribution
Contains HM Land Registry data © Crown copyright and database right 2026. This data is licensed under the Open Government Licence v3.0. Floor areas derived from the Energy Performance of Buildings Register (address data © Royal Mail). Contains ONS and OS data © Crown copyright and database right, licensed under the Open Government Licence v3.0, including the Office for National Statistics CPIH inflation series. Map data © OpenStreetMap contributors, © CARTO.
Now search an area
Every rule on this page, applied to any postcode district in England & Wales.