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

11 rows where disposal = "Fixed Penalty", reporter_transport_mode = "Pedestrian" and vehicle_make = "Tesla" sorted by month descending

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: source_file, vehicle_model, vehicle_colour, council_area_raw

month 8

  • 2025-03 3
  • 2025-04 2
  • 2025-01 1
  • 2025-02 1
  • 2025-10 1
  • 2025-11 1
  • 2025-12 1
  • 2026-02 1

offence 6

  • Using a Mobile Phone Whilst Driving 3
  • Cause unnecessary obstruction by motor vehicle / trailer outside of the Greater London area 2
  • Motor vehicle fail to comply with a non endorsable traffic sign - detected by means other than ACD 2
  • Stop a vehicle within pelican pedestrian crossing limits 2
  • Driver not in position to have Proper Control 1
  • Stop a vehicle on pedestrian crossing 1

council_area 3

  • Birmingham 6
  • Sutton Coldfield 4
  • Solihull 1

vehicle_make 1

  • Tesla · 11 ✖

reporter_transport_mode 1

  • Pedestrian · 11 ✖

disposal 1

  • Fixed Penalty · 11 ✖
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
7892 op-snap---monthly-publication-february-2026.pdf   639 2026-02 Pedestrian Tesla model 3 White Motor vehicle fail to comply with a non endorsable traffic sign - detected by means other than ACD None Berwood Road Berwood Road Sutton Coldfield Sutton Coldfield Fixed Penalty N/A   52.5342947 -1.8155375
3890 op-snap---monthly-publication-december-2025.pdf   18 2025-12 Pedestrian Tesla Model Y White Using a Mobile Phone Whilst Driving None Hagley Road Hagley Road Birmingham Birmingham Fixed Penalty N/A   52.471632 -1.9456776
22011 op-snap---monthly-publication-november-2025.pdf   1553 2025-11 Pedestrian Tesla Model 3 Grey Using a Mobile Phone Whilst Driving None Bristol Road Bristol Road Birmingham Birmingham Fixed Penalty N/A   52.4543565 -1.9114004
22524 op-snap---monthly-publication-october-2025.pdf   474 2025-10 Pedestrian Tesla Model 3 Grey Driver not in position to have Proper Control None Russell Road Russell Road Birmingham Birmingham Fixed Penalty N/A   52.4398245 -1.8469786
6 op-snap---monthly-publication-april-2025.pdf   5 2025-04 Pedestrian Tesla model Y White Cause unnecessary obstruction by motor vehicle / trailer outside of the Greater London area None Roebuck Road Roebuck Road Birmingham Birmingham Fixed Penalty N/A   52.4812741 -1.952855
16 op-snap---monthly-publication-april-2025.pdf   15 2025-04 Pedestrian Tesla Model 3 White Cause unnecessary obstruction by motor vehicle / trailer outside of the Greater London area None Hamlet Road Hamlet Road Birmingham Birmingham Fixed Penalty N/A   52.4315327 -1.8421334
17863 op-snap---monthly-publication-march-2025.pdf   1620 2025-03 Pedestrian Tesla model 3 White Motor vehicle fail to comply with a non endorsable traffic sign - detected by means other than ACD None Upper Holland Road Upper Holland Road Sutton Coldfield Sutton Coldfield Fixed Penalty N/A Yes - Via Email 52.561 -1.8187105
18224 op-snap---monthly-publication-march-2025.pdf   1981 2025-03 Pedestrian Tesla Model Y White Stop a vehicle within pelican pedestrian crossing limits None Station Approach Station Approach Solihull Solihull Fixed Penalty N/A Yes - Via Email 52.4146834 -1.7879896
18380 op-snap---monthly-publication-march-2025.pdf   2137 2025-03 Pedestrian Tesla Model Y White Stop a vehicle on pedestrian crossing None Hill Village Road Hill Village Road Sutton Coldfield Sutton Coldfield Fixed Penalty N/A Yes - Via Email 52.5959906 -1.8345802
7230 op-snap---monthly-publication-february-2025.pdf   2047 2025-02 Pedestrian Tesla Model Y White Stop a vehicle within pelican pedestrian crossing limits None Alcester Road South Alcester Road South Birmingham Birmingham Fixed Penalty N/A Yes - Via Email 52.4170522 -1.8906187
9419 op-snap---monthly-publication-january-2025.pdf   527 2025-01 Pedestrian Tesla MODEL Y Black Using a Mobile Phone Whilst Driving None LICHFIELD ROAD Lichfield Road Sutton Coldfield Sutton Coldfield Fixed Penalty N/A Yes - Via Email 52.5872149 -1.8300386

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