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

7 rows where council_area = "Birmingham", offence = "Contravening a Red Traffic Light" and vehicle_make = "Yamaha" sorted by month descending

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: source_file, vehicle_colour, second_offence, nfa_rationale

month 5

  • 2025-08 2
  • 2025-10 2
  • 2025-03 1
  • 2025-04 1
  • 2025-05 1

disposal 4

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

reporter_transport_mode 3

  • Car 5
  • Pedal Bike 1
  • Pedestrian 1

vehicle_make 1

  • Yamaha · 7 ✖

offence 1

  • Contravening a Red Traffic Light · 7 ✖

council_area 1

  • Birmingham · 7 ✖
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
22108 op-snap---monthly-publication-october-2025.pdf   58 2025-10 Pedal Bike Yamaha R6 Blue Contravening a Red Traffic Light None Alcester Road Alcester Road Birmingham Birmingham Education N/A   52.4470686 -1.8880749
22757 op-snap---monthly-publication-october-2025.pdf   707 2025-10 Car Yamaha GPD125 Grey Contravening a Red Traffic Light None Stratford Road Stratford Road Birmingham Birmingham Education N/A   52.4203897 -1.8338574
2503 op-snap---monthly-publication-august-2025.pdf   478 2025-08 Car Yamaha SC125 Black Contravening a Red Traffic Light None Tessall Lane / Bristol Road, Northfild Tessall Lane / Bristol Road, Northfild Birmingham Birmingham NFA No VRM   52.4045186 -1.9891793
2776 op-snap---monthly-publication-august-2025.pdf   751 2025-08 Pedestrian Yamaha 125cc Black Contravening a Red Traffic Light No Insurance Hagley Road, Quinton Hagley Road, Quinton Birmingham Birmingham Fixed Penalty N/A   52.4633457 -2.0003455
19210 op-snap---monthly-publication-may-2025.pdf   572 2025-05 Car Yamaha GPD 125 Grey Contravening a Red Traffic Light None Holloway Circus Holloway Circus Birmingham Birmingham Warning Letter N/A   52.474604 -1.89977
710 op-snap---monthly-publication-april-2025.pdf   709 2025-04 Car Yamaha MT-09 Grey Contravening a Red Traffic Light None Lyon Queensway Lyon Queensway Birmingham Birmingham Fixed Penalty N/A   52.4785129 -1.9047486
16539 op-snap---monthly-publication-march-2025.pdf   296 2025-03 Car Yamaha 125 Blue Contravening a Red Traffic Light None Coventry Road Coventry Road Birmingham Birmingham Fixed Penalty N/A Yes - Via Email 52.4726661 -1.8769032

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