reports
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 disposal = "Fixed Penalty", month = "2026-02" and vehicle_make = "Hyundai" sorted by month descending
This data as json, CSV (advanced)
Suggested facets: vehicle_colour, council_area_raw
reporter_transport_mode 4
- Other 2
- Pedestrian 2
- Bus 1
- Pedal Bike 1
offence 4
council_area 2
- Birmingham 5
- Sandwell 1
vehicle_make 1
- Hyundai · 6 ✖
month 1
- 2026-02 · 6 ✖
disposal 1
- Fixed Penalty · 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 7522 | op-snap---monthly-publication-february-2026.pdf | 269 | 2026-02 | Pedestrian | Hyundai | I10.. | Blue | Cause unnecessary obstruction by motor vehicle / trailer outside of the Greater London area | None | Dale Close | Dale Close | Birmingham | Birmingham | Fixed Penalty | N/A | 52.4215728 | -1.8433062 | ||
| 7859 | op-snap---monthly-publication-february-2026.pdf | 606 | 2026-02 | Pedestrian | Hyundai | Ioniq | Grey | Using a Mobile Phone Whilst Driving | None | Park Street | Park Street | Birmingham | Birmingham | Fixed Penalty | N/A | 52.4814275 | -1.8888778 | ||
| 7953 | op-snap---monthly-publication-february-2026.pdf | 700 | 2026-02 | Pedal Bike | Hyundai | I10. | Red | Using a Mobile Phone Whilst Driving | None | Brook Lane | Brook Lane | Birmingham | Birmingham | Fixed Penalty | N/A | 52.4297007 | -1.8668846 | ||
| 8109 | op-snap---monthly-publication-february-2026.pdf | 856 | 2026-02 | Bus | Hyundai | I10 | White | Motor vehicle fail to accord precedence at a pelican crossing | None | Sherlock Street | Sherlock Street | Birmingham | Birmingham | Fixed Penalty | N/A | 52.4702385 | -1.895011 | ||
| 8208 | op-snap---monthly-publication-february-2026.pdf | 955 | 2026-02 | Other | Hyundai | Tucson | Grey | Cause unnecessary obstruction by motor vehicle / trailer outside of the Greater London area | None | Brighton Road | Brighton Road | Birmingham | Birmingham | Fixed Penalty | N/A | 52.4543156 | -1.8840717 | ||
| 8755 | op-snap---monthly-publication-february-2026.pdf | 1502 | 2026-02 | Other | Hyundai | I30 | Silver | Motor vehicle fail to comply with a non endorsable traffic sign - detected by means other than ACD | None | Trinity Road South | Trinity Road South | Sandwell | Sandwell | Fixed Penalty | N/A | 52.510081 | -1.9892908 |
Advanced export
JSON shape: default, array, newline-delimited, object
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);