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

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

✎ View and edit SQL

This data as json, CSV (advanced)

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

council_area 5

  • Birmingham 2
  • Coventry 1
  • Dudley 1
  • Out of Force Area 1
  • Walsall 1

disposal 4

  • Court 2
  • Fixed Penalty 2
  • Education 1
  • NFA 1

reporter_transport_mode 3

  • Car 4
  • Other 1
  • Pedal Bike 1

vehicle_make 1

  • Jaguar · 6 ✖

offence 1

  • Driving without Due Care and Attention · 6 ✖

month 1

  • 2025-11 · 6 ✖
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
20520 op-snap---monthly-publication-november-2025.pdf   62 2025-11 Pedal Bike Jaguar XF Black Driving without Due Care and Attention No Insurance Stretton Sugwas (Hereford) Stretton Sugwas (Hereford) Out of Force Area Out of Force Area NFA Out of Force      
20715 op-snap---monthly-publication-november-2025.pdf   257 2025-11 Other Jaguar   Blue Driving without Due Care and Attention None Waterfront car park Waterfront car park Dudley Dudley Court N/A      
20745 op-snap---monthly-publication-november-2025.pdf   287 2025-11 Car Jaguar XF Silver Driving without Due Care and Attention No vehicle excise licence Bromford Lane Bromford Lane Birmingham Birmingham Court N/A   52.5083238 -1.8332287
20768 op-snap---monthly-publication-november-2025.pdf   310 2025-11 Car Jaguar e Pace Grey Driving without Due Care and Attention None Hamstead Hill Hamstead Hill Birmingham Birmingham Fixed Penalty N/A   52.5274116 -1.9287273
21677 op-snap---monthly-publication-november-2025.pdf   1219 2025-11 Car Jaguar XE Grey Driving without Due Care and Attention None Birmingham Road, Walsall Birmingham Road, Walsall Walsall Walsall Education N/A   52.5643557 -1.9468417
21698 op-snap---monthly-publication-november-2025.pdf   1240 2025-11 Car Jaguar i-Pace Black Driving without Due Care and Attention None Longbank Avenue Longbank Avenue Coventry Coventry Fixed Penalty N/A      

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