Source: Police.uk monthly crime and ASB CSV exports. Check known source gaps. The import requests Metropolitan Police, City of London Police and British Transport Police for the same published month. Missing core Met or City files prevent publication; a missing BTP file is explicitly disclosed.
Records are assigned using their published LSOA name, which identifies the borough of their anonymised map point. This may differ from official force-wide crime totals. Non-empty duplicate crime IDs are counted once. ASB rows without IDs are preserved as separate incidents, even when their visible fields match.
Import audit: 102,295 records assigned to London; 49 records from the requested force exports lacked usable LSOA geography; 35 had non-London LSOA names; 1 duplicate crime IDs excluded. Unlocated records cannot be allocated to a borough and are not part of the mapped total.
Counts include anti-social behaviour unless a narrower category is selected. They are not adjusted for population, area size, visitors or reporting differences and must not be used as a safety ranking. Missing data is never shown as zero. Police.uk notes long-running gaps in BTP anti-social behaviour data.
Borough map context: GLA / Ordnance Survey Open Data, published 2017 boundary layer. Contains OS data © Crown copyright and database right 2017, Open Government Licence v3.0. Boundaries are simplified for display; counts use published LSOA geography, not these display polygons.
Refreshed monthly on the 5th at 07:00 Europe/London using the latest available source month. DeepSeek V4.1 Flash starts the import and selects evidence-backed insights after completion; deterministic code calculates all numbers. Summary data and selected findings are retained in D1, not individual incidents. This snapshot completed 13/09/2026, 00:06:33 UK time.