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'}

8 rows where month = "2025-11", offence = "Driving without Due Care and Attention" and vehicle_make = "Fiat" sorted by month descending

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: vehicle_model, vehicle_colour, offence_location_raw, offence_location, council_area_raw, nfa_rationale, latitude, longitude

council_area 5

  • Birmingham 2
  • Dudley 2
  • Out of Force Area 2
  • Sandwell 1
  • Wolverhampton 1

disposal 4

  • Education 3
  • NFA 3
  • Fixed Penalty 1
  • Warning Letter 1

reporter_transport_mode 3

  • Car 5
  • Other 2
  • Pedal Bike 1

vehicle_make 1

  • Fiat · 8 ✖

offence 1

  • Driving without Due Care and Attention · 8 ✖

month 1

  • 2025-11 · 8 ✖
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
20510 op-snap---monthly-publication-november-2025.pdf   52 2025-11 Other Fiat Punto White Driving without Due Care and Attention None Norwood Road Norwood Road Dudley Dudley Education N/A   52.4831397 -2.1309273
20631 op-snap---monthly-publication-november-2025.pdf   173 2025-11 Car Fiat 500.. Green Driving without Due Care and Attention None No exact location other than Redditch near Sainsburys No exact location other than Redditch near Sainsburys Out of Force Area Out of Force Area NFA Out of Force      
20813 op-snap---monthly-publication-november-2025.pdf   355 2025-11 Other Fiat 500 White Driving without Due Care and Attention None Oldbury Road Oldbury Road Sandwell Sandwell NFA No Independent Evidence Available   52.5018196 -1.9811249
20856 op-snap---monthly-publication-november-2025.pdf   398 2025-11 Car Fiat Ducato White Driving without Due Care and Attention None Jockey Road Jockey Road Birmingham Birmingham Education N/A   52.5512291 -1.8357776
21241 op-snap---monthly-publication-november-2025.pdf   783 2025-11 Pedal Bike Fiat 500 White Driving without Due Care and Attention None Bristol Road Bristol Road Birmingham Birmingham Warning Letter N/A   52.4543565 -1.9114004
21383 op-snap---monthly-publication-november-2025.pdf   925 2025-11 Car Fiat Panda White Driving without Due Care and Attention None Bentley Road South Bentley Road South Wolverhampton Wolverhampton Fixed Penalty N/A      
21394 op-snap---monthly-publication-november-2025.pdf   936 2025-11 Car Fiat Punto White Driving without Due Care and Attention None Norwood Road Norwood Road Dudley Dudley Education N/A   52.4831397 -2.1309273
21396 op-snap---monthly-publication-november-2025.pdf   938 2025-11 Car Fiat Ducato White Driving without Due Care and Attention None Forest Ego, Bromsgrove Forest Ego, Bromsgrove Out of Force Area Out of Force Area NFA Out of Force      

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);