home / opsnap

reports

Each row is one public submission to Operation Snap. Includes the offence, vehicle details, location, and outcome.

Disposal outcomes: Education (driver awareness course), Warning Letter, Fixed Penalty (fine), Court (prosecution), NFA (no further action).

Data license: ODbL · Data source: West Midlands Police

id
{'label': 'ID'}
source_file
{'label': 'Source PDF'}
source_page
{'label': 'Page'}
source_row
{'label': 'Row'}
month
{'label': 'Month'}
reporter_transport_mode
{'label': 'Reporter'}
vehicle_make
{'label': 'Make'}
vehicle_model
{'label': 'Model'}
vehicle_colour
{'label': 'Colour'}
offence
{'label': 'Offence'}
second_offence
{'label': 'Second offence'}
offence_location_raw
{'label': 'Location (raw)'}
offence_location
{'label': 'Location'}
council_area_raw
{'label': 'Council (raw)'}
council_area
{'label': 'Council area'}
disposal
{'label': 'Outcome'}
nfa_rationale
{'label': 'NFA reason'}
witness_contacted
{'label': 'Witness contacted'}
latitude
{'label': 'Lat'}
longitude
{'label': 'Lng'}

15 rows where offence = "Dangerous Driving", reporter_transport_mode = "Car" and vehicle_make = "BMW" sorted by month descending

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: source_file, vehicle_model, vehicle_colour, second_offence, council_area_raw, nfa_rationale

month 6

  • 2025-01 4
  • 2025-04 4
  • 2025-05 4
  • 2025-02 1
  • 2025-03 1
  • 2025-08 1

council_area 6

  • Birmingham 7
  • Dudley 3
  • Out of Force Area 2
  • Halesowen 1
  • Sandwell 1
  • Walsall 1

disposal 4

  • Court 5
  • NFA 5
  • Warning Letter 4
  • Other Action Taken 1

vehicle_make 1

  • BMW · 15 ✖

reporter_transport_mode 1

  • Car · 15 ✖

offence 1

  • Dangerous Driving · 15 ✖
id source_file source_page source_row month ▲ reporter_transport_mode vehicle_make vehicle_model vehicle_colour offence second_offence offence_location_raw offence_location council_area_raw council_area disposal nfa_rationale witness_contacted latitude longitude
2368 op-snap---monthly-publication-august-2025.pdf   343 2025-08 Car BMW 335 Black Dangerous Driving None Stourbridge Ring Road Stourbridge Ring Road Dudley Dudley Court N/A   52.4590366 -2.1465735
20255 op-snap---monthly-publication-may-2025.pdf   1617 2025-05 Car BMW 520D Grey Dangerous Driving None Lewisham Road Lewisham Road Sandwell Sandwell Warning Letter N/A   52.5007274 -1.9661248
20256 op-snap---monthly-publication-may-2025.pdf   1618 2025-05 Car BMW M140 Blue Dangerous Driving None Fort Parkway Fort Parkway Birmingham Birmingham Warning Letter N/A   52.50787 -1.8195713
20350 op-snap---monthly-publication-may-2025.pdf   1712 2025-05 Car BMW 118 White Dangerous Driving None Parkfield Drive Parkfield Drive Birmingham Birmingham Warning Letter N/A   52.5086984 -1.777555
20422 op-snap---monthly-publication-may-2025.pdf   1784 2025-05 Car BMW 3 series Black Dangerous Driving None Worcester Bypass Worcester Bypass Out of Force Area Out of Force Area Warning Letter N/A      
512 op-snap---monthly-publication-april-2025.pdf   511 2025-04 Car BMW 1 SERIES Grey Dangerous Driving None PRIORY ROAD Priory Road Dudley Dudley NFA Outside of 14 Days NIP   52.4531211 -2.0210432
841 op-snap---monthly-publication-april-2025.pdf   840 2025-04 Car BMW   Grey Dangerous Driving None Broad Road , Birmingham Broad Road , Birmingham Birmingham Birmingham NFA Outside of 14 Days NIP   52.446961 -1.8289431
1313 op-snap---monthly-publication-april-2025.pdf   1312 2025-04 Car BMW 4 series Black Dangerous Driving None Birmingham coventry road Birmingham coventry road Birmingham Birmingham NFA Outside of 14 Days NIP   52.4707545 -1.8616196
1521 op-snap---monthly-publication-april-2025.pdf   1520 2025-04 Car BMW 4 Series White Dangerous Driving None Manor Way , Halesowen Manor Way , Halesowen Halesowen Halesowen NFA Outside of 14 Days NIP   52.4456717 -2.0407862
18416 op-snap---monthly-publication-march-2025.pdf   2173 2025-03 Car BMW 320D Blue Dangerous Driving Use vehicle on a road without valid test certificate CHESTER ROAD Chester Road Walsall Walsall Court N/A Yes - Via Email 52.5692139 -1.8799672
6041 op-snap---monthly-publication-february-2025.pdf   858 2025-02 Car BMW M140i White Dangerous Driving None A46 Grimsby Road, Grimsby Grimsby Road, Grimsby Out of Force Area Out of Force Area NFA Out of Force Yes - Via Email    
8985 op-snap---monthly-publication-january-2025.pdf   93 2025-01 Car BMW 320D SPORT Silver Dangerous Driving No Insurance A461 DUDLEY PORT A461 Dudley Port Dudley Dudley Court N/A Yes - Via Email 52.5137817 -2.0633457
9670 op-snap---monthly-publication-january-2025.pdf   778 2025-01 Car BMW 120D Blue Dangerous Driving No Insurance Stockfield Road Stockfield Road Birmingham Birmingham Other Action Taken eNn/A Yes - Via Email 52.4519414 -1.831688
9888 op-snap---monthly-publication-january-2025.pdf   996 2025-01 Car BMW 320D Black Dangerous Driving None Egghill Lane Egghill Lane Birmingham Birmingham Court N/A Yes - Via Email 52.4093768 -1.9976236
10376 op-snap---monthly-publication-january-2025.pdf   1484 2025-01 Car BMW 1 SERIES Black Dangerous Driving No Insurance COMMON LANE,SHELDON Common Lane, Sheldon Birmingham Birmingham Court N/A Yes - Via Email 52.4581998 -1.7809901

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

CREATE TABLE reports (
            id INTEGER PRIMARY KEY AUTOINCREMENT,
            source_file TEXT NOT NULL,
            source_page INTEGER,
            source_row INTEGER,
            month TEXT NOT NULL,
            reporter_transport_mode TEXT,
            vehicle_make TEXT,
            vehicle_model TEXT,
            vehicle_colour TEXT,
            offence TEXT,
            second_offence TEXT,
            offence_location_raw TEXT,
            offence_location TEXT,
            council_area_raw TEXT,
            council_area TEXT,
            disposal TEXT,
            nfa_rationale TEXT,
            witness_contacted TEXT
        , latitude REAL, longitude REAL);
CREATE INDEX idx_month ON reports(month);
CREATE INDEX idx_council_area ON reports(council_area);
CREATE INDEX idx_offence ON reports(offence);
CREATE INDEX idx_disposal ON reports(disposal);
CREATE INDEX idx_location ON reports(offence_location);