Method
How the evidence is assembled, classified and tested. The method is published so that the figures can be checked, reproduced and challenged.
Dataset scope
The London Small Sites Planning Dataset covers residential planning applications for one to nine homes across all 33 London planning authorities. Decisions are included from January 2023 onwards on a rolling window, and the dataset is refreshed quarterly.
Every application is classified along nine axes: decision outcome, site type (conversion, demolish and rebuild, end-terrace, mid-terrace, backland, infill, extension, mixed), area within the borough, conservation area status, transport accessibility, density, determination time, decision route (committee or delegated), and case officer. Officer names are held as per-borough pseudonyms and are never published; see the privacy notice.
Transport accessibility is currently recorded as PTAL. The draft London Plan published in July 2026 proposes replacing PTAL with the Sustainable Access Measure. If that survives examination the axis will be rebuilt against it rather than renamed, and the change will be recorded here.
Which cohort a number is on
Every outcome figure on this site is computed on the development cohort: applications that are proposals for one to nine homes. The dataset holds 15,534 rows in total, of which 932 are condition discharges, non-material amendments, lawful-development certificates and details submitted pursuant to condition. Those are approved 83.5% of the time, because discharges nearly always are, and counting them raises every approval rate. Removing them leaves 14,600 applications, 11,694 of them decided, and an overall refusal rate of 45.4%.
Two other cuts exist and are labelled where they appear. The borough outcome differential additionally requires complete covariates for mix adjustment, which leaves 11,689 decided applications across 32 boroughs. The 33 borough dashboards are generated from the development cohort and sum to exactly the 11,694 decided applications above.
Until 20 August 2026 the headline figures on this site were the unfiltered counts: 15,534 applications, 12,493 decided, refusal 43.5%. They were arithmetically correct and measured something slightly different from the sentence around them.
Sources
The main source is the Mayor of London’s Planning London Datahub, queried through its Elasticsearch guest endpoint. Council back-office systems push validations, decisions and metadata to it daily under the London Planning Data Standard. Each borough is pulled by canonical local planning authority name, paginating through the full validation history inside the analysis window.
That feed is supplemented by direct harvest of each council’s public planning register for decision notices, officer reports and committee minutes. This takes ten scrapers, because London boroughs run ten different portal systems: Idox, Northgate, Council Direct, Arcus/Salesforce, Agile/IEG4, Tascomi/PlaceHub, RBKC Atlas, NECSWS SPA, Aurora, and one bespoke build. Each is portal-aware, rate-limited and resumable.
Because boroughs publish different documents in different ways, coverage varies between authorities. Some publish decision notices but not officer reports; one or two block automated access entirely.
Classification
Applications are classified to the same definitions across all 33 authorities.
Refusal reasons are read from decision notices and officer reports and classified using a published thirteen-category taxonomy: Design and Character (DES), Neighbour Amenity (AMN), Daylight and Sunlight (DLT), Space Standards (SPC), Heritage and Conservation (HER), Transport and Parking (TRN), Policy Non-compliance (POL), Infrastructure and Sustainability (INF), Flood Risk (FLD), Insufficient Information (INS), Permitted Development Non-compliance (PDD), Loss of Use or Community (LUC), and Other (OTH). A reason may fall into more than one category; design and amenity together is the most common pairing.
Each reason carries a primary and a secondary code, the source document and the original text, so any classification can be checked against the council’s own words.
Three counts, three denominators
Three counts get quoted about this corpus and they measure different things. The harvester pulls 13,823 numbered paragraphs out of decision notices across 4,707 refused schemes. Of those paragraphs, 12,571 are refusal reasons, across 4,532 schemes; the other 1,252 are appeal decision letters, section headings and fragments picked up alongside them, and they are excluded from every statistic. Where a finding uses one reason per scheme, the denominator is the 4,532 first-listed reasons. A figure quoted against paragraphs will not match one quoted against reasons or against schemes, so each is named wherever it appears.
Not every refusal has a decision notice that can be read. The 4,532 coded schemes are 83% of the 5,436 refusals in the development cohort, so the breakdown covers a subset of refusals rather than all of them, and that subset is stated wherever it is used.
The current coding measures 91.8% accurate against a stratified sample of 143 decision-notice reasons adjudicated one at a time. It replaces a keyword coding that measured 46.3% on the same sample and defaulted ambiguous reasons to design. Design as a first-listed reason now reads 24.2%, against 35.5% under the coding it replaces; space standards roughly double, to 22.1%, because substandard-accommodation reasons were being routed to design on the strength of the words design and layout in their text.
Comparing boroughs
Raw approval rates are not directly comparable, because boroughs receive different kinds of application.
Where boroughs are compared, Perfect Scale adjusts for differences in application mix: the question is what London-average decision behaviour would have produced on each borough’s own caseload, holding scheme type, unit count, conservation status and transport accessibility constant. The difference between that expectation and the borough’s observed rate is its outcome differential. On the current release the spread between the extremes is 43.6 percentage points, across 11,689 decided applications in the 32 authorities with complete covariates.
The differential is a description of outcomes, not an account of cause. It measures that comparable applications receive different outcomes, not why.
Decision routes and officer recommendations
Every decision is tagged with its route, committee or delegated. Where an officer report exists, the officer’s recommendation is captured separately from the authority’s outcome, which allows overturn rates to be measured by borough, site type and area. No transactional feed records what the officer recommended, only what the authority decided, so this axis requires document reading rather than records alone.
Models and back-testing
Two measures sit on the dataset. The first estimates the approvable unit count for a given site type, area and conservation context. Back-tested against 300 decided schemes, it lands within one unit of the approved scheme 58.3% of the time and within two units 73.7% of the time, with a mean absolute error of 2.0 units; 69% of schemes fall inside its stated envelope. Earlier versions of this page quoted 73% and 90%, which came from placeholder defaults in the report generator rather than a completed run.
The second is a cohort benchmark that reads a scheme against the approval record for its area, site type, density, conservation status and PTAL band. It is shown as a descriptive comparison, for example that schemes in a given cohort have approved at 41% against a borough average of 56%. It is never given as a probability or a point estimate for an individual application.
Back-test sample sizes and confidence intervals are documented in the underlying borough analyses. The back-test is not currently reproduced on individual dashboards; the figures above are the pan-London run, and a per-borough breakdown with cell sizes is outstanding.
Evidence strength
Not every number deserves the same weight. Findings are graded by the size of the cohort behind them, and sample sizes are published alongside them.
| Tier | Cohort | What it will bear |
|---|---|---|
| Robust | n ≥ 30 | Enough evidence to support the finding. |
| Moderate | 20 ≤ n < 30 | Useful evidence, not conclusive on its own. |
| Indicative | 10 ≤ n < 20 | A pattern worth noting, not establishing. |
| Anecdotal | n < 10 | Too little evidence to support a conclusion. |
The tier also reflects whether the statistical test used is appropriate to the data and whether the cohort clears its minimum sample gate. Some outputs report the 10 to 29 band as a single indicative tier; the thresholds are otherwise identical. A tier grades the evidence behind a description of what has already been decided. It is not a forecast.
Limits
The dataset describes decisions. It does not predict individual planning outcomes, and no approval probability is offered for any site or scheme.
It covers London, and schemes of one to nine homes.
Document coverage varies between boroughs, so some fields have better coverage than others. Refusal reasons are coded for 83% of refusals; four boroughs are thin enough that their refusal breakdown is withheld rather than published, and Haringey’s extraction sits outside the repaired corpus and is not directly comparable with the other 32. Building height is recorded on a minority of records and skews towards refusals.
Decisions reach the Datahub with a lag, so monthly counts fall away after March 2026 on the current release. Recent quarters fill in rather than stay as published.
Associations are not treated as causes unless the research design supports that conclusion. The pre-application advice flag is a case in point: it is recorded unevenly and correlates with the way the data was collected, so it is reported with that named and never used causally.
Known gaps are reported with the relevant finding rather than generalised over.
Corrections
The dataset changes as new decisions are added and errors are found. Each release records material changes to the data, the method and the published figures, including the corrections that moved a published number.
If something on this site is not supported by the record, say so. Corrections appear in the next release note with the finding attributed.
