How this site works
Methodology
Every number on this site is read mechanically from a specific cell in an official spreadsheet and can be traced back to it. Nothing is estimated, modelled or rewritten by us.
Where the data comes from
Figures are taken from official statistics published by the Office for National Statistics (ONS), the Home Office and the Ministry of Justice. Each metric page names the publication, the release, the workbook file, the sheet, the table, the row label and the column header the figure was read from, and shows the raw cell value alongside the value we display.
The source files themselves are downloaded, hashed with SHA-256, and kept. A release is identified by its file hash, not its web address, because departments sometimes replace a spreadsheet at the same address.
What an official statistic is
Official statistics are produced by government departments and the ONS under the Code of Practice for Statistics. Some are designated Accredited Official Statistics (previously called National Statistics), which means the UK Statistics Authority has confirmed they meet the highest standards of trustworthiness, quality and value. Others, such as police-recorded crime, are official statistics without that designation because of known limits on their quality. The caveat on each metric page says which applies.
Police-recorded crime and the Crime Survey
There are two national measures of crime in England and Wales and they answer different questions. Police-recorded crime counts what was reported to the police and recorded as a crime. It is a complete count of recorded offences but depends on whether people report crime and on police recording practice, both of which change over time. The Crime Survey for England and Wales asks a large sample of households about crimes they experienced, whether or not they were reported. It is an estimate with a margin of error but is unaffected by reporting and recording changes, so it is the better guide to long-term trends for the crimes it covers. It does not cover crimes against businesses, homicide, or crimes with no direct victim.
Why figures are revised, and what a vintage is
Many series are revised after first publication. Migration estimates are provisional until administrative data is complete, and have been revised by hundreds of thousands. Police-recorded figures for recent quarters change as records are updated. Each time a publisher releases a new edition, we store the values it contains as a new vintage. We never overwrite an earlier vintage. The metric page shows the newest published value for each period, and the revision history lists every period whose newest value differs from the value first published.
How comparisons are calculated
The sentence beneath each headline number is generated by code from the stored data, not written by hand or by a language model. Each metric declares in its registry entry which comparison is appropriate: the same period a year earlier for annual and rolling-year series, the previous period for monthly and quarterly series. Percentage change is the absolute change divided by the earlier value. Where the earlier value is zero no percentage is shown.
How government comparisons are calculated
Government pages show what a statistic did while a government was in office. The unit is a parliamentary term with a governing party, dated from the appointment of the incoming prime minister or, where the same party continued, the day after the general election. Dates come from GOV.UK’s list of past prime ministers and the House of Commons Library’s election results.
For each metric the inherited level is the last complete statistical period that ended before the government began, and it must have ended within 15 months of that date. The latest level is the last complete period ending before the government left office, or the most recent published period for the current government. At least two periods must fall inside the term; otherwise the table says why no change is shown. We never take the observation closest to election day, because quarterly and annual statistics do not measure single days.
The wording describes change during a government. It does not say a government caused the change. Arrows show direction only; whether a rise or fall is good depends on the metric and the reader.
How the question box uses a language model
The question box at /ask first tries to match a question deterministically: recognised phrasings, place names, postcodes and the registry’s own synonyms. When that resolver is confident, no model is involved at all.
When it is not confident, a small language model (Anthropic’s Haiku) is shown the question and a list of the statistical series this site publishes — each as an id, a title and a definition — and asked one thing: which series, if any, the question is about. It answers with an id or with “none of these”. That is the model’s entire role.
The model never sees a figure, never produces one, and never writes a word that appears on the page. Its chosen id is checked against the list it was offered and against the registry; anything else — an invented id, prose, an error, a timeout — is discarded and the site answers as if the model did not exist. The figure shown is then read from the stored official table exactly as every other figure on the site is. Answers that involved the model say so on the page.
Each distinct question is routed once and the choice is kept, so the same question always resolves to the same series. With no model key configured the site runs entirely without this feature.
Missing and suppressed values
Publishers mark some cells as unavailable, not applicable or suppressed, for example [x], [c], z or :. We never convert these to zero. A suppressed period is left out of the series. If the most recent period for a metric is suppressed, the metric is not updated from that release, and the page continues to show the last complete figure with its date.
How extraction is checked
Each publication has an extractor that expects a particular workbook structure: named sheets, a header row with a known label, exact row labels, and period columns it can parse. Labels are matched exactly after removing whitespace and footnote markers; there is no fuzzy matching. If a sheet, label or period is missing, if a label matches more than one row, if a unit marker has changed, or if a value falls outside the range the registry allows, the whole release is rejected and nothing is published. Unusually large movements between periods or between vintages are held for a human check before publication. Every extractor is tested against a real past release with the exact values it must produce.
Local crime rates and population denominators
Local crime pages divide recorded offences in the latest 12 months by the ONS mid-year population estimate for the same area and show the population figure and its reference year on the page. Offences come from the street-level crime archive published by the police, are placed at anonymised snap points, and are assigned to local authorities through the ONS lookup from 2021 Lower Layer Super Output Areas. Forces that have not supplied data for a month are listed on their pages, and totals for windows with missing months are marked as partial. Crime per 1,000 residents is a rate of recorded crime and is affected by reporting, recording, and by how many people pass through an area who do not live there. It is not a measure of how safe an area is.
Maps of the latest published value
The rent, pay, council tax, house price and energy maps draw one published figure per local authority: the newest period any area carries, taken from the newest release that contains it. Nothing is modelled, interpolated or carried forward. An area whose newest figure is for an earlier period is shown as no current data and its drawer names both periods. Percentiles rank only the areas with a value for the drawn period. Where the publisher gives a national figure for the same period it is shown beside the area’s value for comparison; where it does not, none is invented. Class breaks are quantiles of the areas with data, computed on the server, so the same link always gives the same legend.
Maps that divide one published figure by another
The affordability, rent pressure and council tax maps put two published figures for the same area over one another: the average house price, the median private rent or the Band D council tax, over the median annual pay of full-time employees living there. Each side is the newest period its publisher gives for that area, and each is named with its own period on the page. Nothing is weighted, smoothed or modelled: the arithmetic is a division, and every area carries the sum that produced its number, so it can be checked by hand. Because the two sides come from different surveys with different reference periods, they are a comparison of published area medians, not the housing costs or income of any household. An area missing either side is no data, and the missing side is named. These ratios are Civometry calculations on official figures, not official statistics.
Crime against the national trend
This view answers a narrower question than the change map: did recorded crime here move differently from the country as a whole? It subtracts one percentage change from another. The national figure is not an average of areas: it is the combined change of every area supplying a full twelve months of data on both sides, offences added up and compared, so a large force does not count the same as a small one. An area is measured against that combined figure and the result is stated in percentage points, with both sides printed for every area. Forces that stopped supplying the archive are excluded from the national figure and shown as no data, never as no change. A difference from the national trend says nothing about why the two moved apart, and recorded crime reflects reporting and recording as well as offences.
Population change
Population change compares two published ONS mid-year estimates for the same area, taken from the same edition, one year, five years or ten years apart. The difference and the percentage are simple arithmetic on those two numbers. No year is interpolated and no missing area is filled: an authority without an estimate for either year is shown as no data with the missing year named. Estimates are revised between editions and local authority boundaries change, so a change that spans a boundary revision reflects the current boundaries as the publisher restated them. The figures describe change; they do not say whether it came from births, deaths or migration.
Commentary is kept separate
Definitions, caveats and the generated sentence describe the official statistic. Where a commentary block appears, it is written by a named author, stored apart from the data, and labelled as interpretation. It is never mixed into the figures, and the figures do not depend on it.
Known limitations
The site covers the metrics listed in its registry and no others. Series start where the publisher’s current tables start, so history published only in older editions is not yet included. Migration and crime statistics use different geographies (the United Kingdom, and England and Wales respectively) and are never combined. Revision history begins from the first release ingested here, so revisions made before that are not shown.