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 council_area = "Out of Force Area", month = "2025-03" and vehicle_make = "Audi" sorted by month descending

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: vehicle_model, vehicle_colour, second_offence

reporter_transport_mode 2

  • Car 5
  • Pedestrian 1

offence 2

  • Driving without Due Care and Attention 5
  • Contravening a Red Traffic Light 1

vehicle_make 1

  • Audi · 6 ✖

month 1

  • 2025-03 · 6 ✖

disposal 1

  • NFA 6

council_area 1

  • Out of Force Area · 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
16330 op-snap---monthly-publication-march-2025.pdf   87 2025-03 Car Audi Q2 Blue Contravening a Red Traffic Light None Slade Road Slade Road Out of Force Area Out of Force Area NFA Out of Force Yes - Via Email 52.5245181 -1.8591675
16418 op-snap---monthly-publication-march-2025.pdf   175 2025-03 Car Audi S8 White Driving without Due Care and Attention No Insurance Kite Hardwick, Warwickshire Kite Hardwick, Warwickshire Out of Force Area Out of Force Area NFA Out of Force Yes - Via Email    
16958 op-snap---monthly-publication-march-2025.pdf   715 2025-03 Car Audi UK   Driving without Due Care and Attention None A5 Shrewsbury Shrewsbury Out of Force Area Out of Force Area NFA Out of Force Yes - Via Email 52.6195535 -2.0193824
17550 op-snap---monthly-publication-march-2025.pdf   1307 2025-03 Pedestrian Audi A4 Red Driving without Due Care and Attention None Wilden Lane Wilden Lane Out of Force Area Out of Force Area NFA Out of Force Yes - Via Email    
17659 op-snap---monthly-publication-march-2025.pdf   1416 2025-03 Car Audi TT White Driving without Due Care and Attention None M40 SB M40 Southbound Out of Force Area Out of Force Area NFA Out of Force Yes - Via Email    
18157 op-snap---monthly-publication-march-2025.pdf   1914 2025-03 Car Audi A4 Black Driving without Due Care and Attention None Off force Off force Out of Force Area Out of Force Area NFA Out of Force Yes - Via Email    

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