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

14 rows where month = "2025-04", offence = "Using a Mobile Phone Whilst Driving" and vehicle_make = "BMW" 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 6

  • Birmingham 5
  • Coventry 5
  • Dudley 1
  • Halesowen 1
  • Out of Force Area 1
  • Walsall 1

reporter_transport_mode 4

  • Pedal Bike 6
  • Car 5
  • Other 2
  • Motorbike 1

disposal 2

  • Fixed Penalty 9
  • NFA 5

vehicle_make 1

  • BMW · 14 ✖

offence 1

  • Using a Mobile Phone Whilst Driving · 14 ✖

month 1

  • 2025-04 · 14 ✖
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
221 op-snap---monthly-publication-april-2025.pdf   220 2025-04 Pedal Bike BMW COUPE Silver Using a Mobile Phone Whilst Driving None Queensbridge Road Queensbridge Road Birmingham Birmingham Fixed Penalty N/A   52.4415108 -1.8971434
526 op-snap---monthly-publication-april-2025.pdf   525 2025-04 Other BMW M135I Orange Using a Mobile Phone Whilst Driving None South Roundhay South Roundhay Birmingham Birmingham NFA No Independent Evidence Available   52.4841536 -1.7938562
615 op-snap---monthly-publication-april-2025.pdf   614 2025-04 Pedal Bike BMW 520d Black Using a Mobile Phone Whilst Driving None Clifford Bridge Road Clifford Bridge Road Coventry Coventry Fixed Penalty N/A   52.4134557 -1.4442138
729 op-snap---monthly-publication-april-2025.pdf   728 2025-04 Car BMW 530D Black Using a Mobile Phone Whilst Driving None GRANGE ISLAND Grange Island Halesowen Halesowen Fixed Penalty N/A      
789 op-snap---monthly-publication-april-2025.pdf   788 2025-04 Motorbike BMW 840D Black Using a Mobile Phone Whilst Driving None Mount Pleasant Mount Pleasant Dudley Dudley Fixed Penalty N/A   52.4734063 -2.1135639
1010 op-snap---monthly-publication-april-2025.pdf   1009 2025-04 Pedal Bike BMW IX Black Using a Mobile Phone Whilst Driving None Alcester Road , Birmingham Alcester Road , Birmingham Birmingham Birmingham Fixed Penalty N/A   52.452635 -1.8874738
1067 op-snap---monthly-publication-april-2025.pdf   1066 2025-04 Pedal Bike BMW 216... Grey Using a Mobile Phone Whilst Driving None Woodway Lane , Coventry Woodway Lane , Coventry Coventry Coventry Fixed Penalty N/A   52.4292329 -1.447102
1072 op-snap---monthly-publication-april-2025.pdf   1071 2025-04 Pedal Bike BMW X1 Blue Using a Mobile Phone Whilst Driving None Woodway Lane Woodway Lane Coventry Coventry Fixed Penalty N/A   52.4275505 -1.4448681
1073 op-snap---monthly-publication-april-2025.pdf   1072 2025-04 Pedal Bike BMW Estate Black Using a Mobile Phone Whilst Driving None Woodway Lane , Coventry Woodway Lane , Coventry Coventry Coventry Fixed Penalty N/A   52.4292329 -1.447102
1220 op-snap---monthly-publication-april-2025.pdf   1219 2025-04 Car BMW   Black Using a Mobile Phone Whilst Driving None Smallbrook Queensway , Birmingham Smallbrook Queensway , Birmingham Birmingham Birmingham Fixed Penalty N/A   52.4767784 -1.8967505
1308 op-snap---monthly-publication-april-2025.pdf   1307 2025-04 Car BMW NP Beige Using a Mobile Phone Whilst Driving None Erdington road , streetly Erdington road , streetly Walsall Walsall NFA No Offence   52.5821369 -1.9060837
1439 op-snap---monthly-publication-april-2025.pdf   1438 2025-04 Car BMW NP Silver Using a Mobile Phone Whilst Driving None M42. Lane 1 M42. Lane 1 Out of Force Area Out of Force Area NFA Out of Force   52.4028859 -1.75593
1454 op-snap---monthly-publication-april-2025.pdf   1453 2025-04 Other BMW NP Black Using a Mobile Phone Whilst Driving None Coventry area Coventry area Coventry Coventry NFA No Independent Evidence Available      
1459 op-snap---monthly-publication-april-2025.pdf   1458 2025-04 Car BMW 520D Blue Using a Mobile Phone Whilst Driving None Harbourne Park Road , Birmingham Harbourne Park Road , Birmingham Birmingham Birmingham NFA No Independent Evidence Available      

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