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

5 rows where month = "2025-09", reporter_transport_mode = "Pedal Bike" and vehicle_make = "Skoda" sorted by month descending

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: vehicle_colour, council_area_raw, nfa_rationale

disposal 4

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

offence 3

  • Driving without Due Care and Attention 3
  • Driving without Reasonable Consideration 1
  • Using a Mobile Phone Whilst Driving 1

council_area 3

  • Birmingham 3
  • Coventry 1
  • Out of Force Area 1

vehicle_make 1

  • Skoda · 5 ✖

reporter_transport_mode 1

  • Pedal Bike · 5 ✖

month 1

  • 2025-09 · 5 ✖
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
23820 op-snap---monthly-publication-september-2025.pdf   39 2025-09 Pedal Bike Skoda SUV Grey Driving without Due Care and Attention None Weston Road Evesham Weston Road Evesham Out of Force Area Out of Force Area NFA Out of Force      
23909 op-snap---monthly-publication-september-2025.pdf   128 2025-09 Pedal Bike Skoda Rapid Grey Driving without Reasonable Consideration None New Street New Street Birmingham Birmingham NFA Outside of 14 DAYS Late Submission   52.4791344 -1.8986915
24472 op-snap---monthly-publication-september-2025.pdf   691 2025-09 Pedal Bike Skoda Fabia Silver Driving without Due Care and Attention None Allesley Old Road Allesley Old Road Coventry Coventry Education N/A   52.4103629 -1.5441218
24473 op-snap---monthly-publication-september-2025.pdf   692 2025-09 Pedal Bike Skoda Kamiq Grey Using a Mobile Phone Whilst Driving None High St High Street Birmingham Birmingham Fixed Penalty N/A   52.5254588 -1.8373064
24952 op-snap---monthly-publication-september-2025.pdf   1171 2025-09 Pedal Bike Skoda Scala Black Driving without Due Care and Attention None Chester Road Chester Road Birmingham Birmingham Warning Letter N/A   52.5359496 -1.8324115

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