Arizona Crash Facts 2018

ADOT has released Crash Facts 2018 in the later part of June (of 2019), as usual; this year and I did not order CDs but rather accessed the raw data online sometime in July (it will in relatively rare cases be updated after this).

The graphical crash map has been NOT updated and so continues to have years 2009-2017 ; the tool used to present the map, Google fusion tables, is being discontinued end of 2019, and I need to find a replacement.

The Fatality Grid has been reconciled and contains some specifics on every bicyclist fatality in Arizona from 2009-2018, and ongoing as discovered.

Broad Overview of Traffic

The overall number of MV crashes ratcheted up, and there was an alarming rise in fatalities  (unless otherwise stated, all figures are year-over-year; 2017 vs. 2018; and are as was published in Crash Facts 2018 as published) :

  • number of MV crashes: 127,508 vs. 127,106  down  0.3%
  • Total persons Injured: 55,662 vs. 53,401 down  4.1%
  • All Fatalities: 1,000 vs. 1,011 rise of  0.1%

[By comparison, the published Arizona Crash Facts dated June 18. 2019 has 127,056 / 53,376 / 1,010. See below for a newer dataset downloaded in September. ]

The numbers are mainly flat year-over-year. See some more remarks at 2016 crash facts (I can’t find an article on 2017(?).

While sort of flat overall, and not detailed here, there was a (another) pronounced rise in pedestrian fatalities from 226 to 245; continuing Arizona’s streak.

Bicyclist Specific

The year-over-year sharp drops don’t have any explanation that I know of…

  • the number of bike-MV crashes: 1496 vs. 1281    down 14.3%
  • number of cyclists injured: 1372 vs. 1180 down  14.0%
  • The number of bicyclist fatalities, 24, is 9 fewer than last year. All incidents were single-fatality;
    When FARS (prelim) was released, it has one fewer; an inicident was changed from a bicyclist to pedestrian. Also  a bicyclist incident occurring 3/29/2018 remained missing from ADOT database until mid-Oct 2019. It was a hit/run w/serious injury, the cyclist died but just after 30 days.

For a longer-term look at bicyclist crash numbers — see  this article where I note that “…low-severity bike-MV crashes have decreased dramatically comparing before versus after 2014; suggesting some sort of policy change” in the way crashes are being reported (or not reported, as the case may be) by certain jurisdictions.

Bicyclist Fatal Incidents

While the large drop year-over-year is of course welcome, it would be wrong to conclude anything from it. Fatalities are relatively rare so vary quite widely from year to year.

There are so few, they can be each individually examined.

Fatal incidents tend to be different modality than bike-MV crashes overall, they also tend to be idiosyncratic. E.g. Seven of the 24 were “crossing” fatalities where a bicyclist was crossing a street mid-block like a pedestrian might.

You can find out more info about each incident by looking here at the Fatality Grid

This is including one incident, investigated by Phoenix PD that contains shockingly (confusingly) little information and appear to be terribly shoddy reports. Why would ADOT allow this data in? According to the data it is not a hit-and-run; however the driver’s gender is unspecified and age is 117. Oh, and it occurred on “Unknown St”, and there’s no lat/long.

For crash typing (like overtaking, right-hook, left-cross, etc), wait for FARS data, which now (since 2014) does full crash-typing on all pedestrian and bicyclist fatalities (“PBCAT“), expected out before the end of this year.

Here are the 10 most recent years, 2009-2018 fatal crash count for comparison:
25 / 19 / 23 / 18 / 30 / 28 / 28 / 31 / 33 / 24
Which averages to just under 26/year over the period.

Non-traffic Cyclist Fatalities

This is a catch-all for FATAL incidents I am aware of that involve either non-traffic bicyclist crashes, motorized bicycles, or some were in some other category that is excluded from ADOT data. This year one incident involved a bicyclist who was murdered. See the Fatality Grid  for a listing of each; they are listed below the traffic fatalities.

Non-traffic crashes are those that don’t involve a “motor vehicle in transport” occurring on roads, and on roads open to public travel; and therefore aren’t listed (with the one exception as noted above) in the crash database. Therefore these can only be known through news reports or word-of-mouth. So the list is bound to be incomplete.

Newer Data

No longer restricted to just once/year data dump; data downloaded a few months later on 9/23/2019 for calendar year 2018 showed, mostly, small differences

  • Total crashes went from 127,106 to 127,133
  • Total fatalities went from 1,011 to 1,024 (a startling rise, where did they “find” 13 extra fatalities?)
  • Total injuries went from 53,401 to 53,419
  • The number of bike-MV crashed went from 1,281 to 1,282



The figures above were queried from the database, which is typically close but exactly consistent with the Arizona Crash Facts as published in June. For example, the published number of total incidents is 127,056 compared with 127,106 (and later, 127,133)  in the database — simply implies some incidents were added after Crash Facts was published.


here are new queries…

SELECT IncidentYear, count(1) FROM incident WHERE IncidentYear IN ('2017','2018') GROUP BY 1;
SELECT IncidentYear, SUM(TotalFatalities) FROM incident WHERE IncidentYear IN ('2017','2018') GROUP BY 1;
SELECT IncidentYear, SUM(TotalInjuries) FROM incident WHERE IncidentYear IN ('2017','2018') GROUP BY 1;
# notes: in person table, injuries = InjuryStatus BETWEEN 2 AND 4. 1 is no injury and 5 is fatal.

# by ePersonType, using person table (person table doesn't have a Year)

SELECT ePersonType '2017', count(1) 'Killed' FROM 2017_person WHERE eInjuryStatus LIKE "FATAL%" GROUP BY 1;
SELECT ePersonType '2018', count(1) 'Killed' FROM 2018_person WHERE eInjuryStatus LIKE "FATAL%" GROUP BY 1;
SELECT ePersonType '2017', count(1) 'Injured' FROM 2017_person WHERE InjuryStatus BETWEEN 2 AND 4 GROUP BY 1;
SELECT ePersonType '2018', count(1) 'Injured' FROM 2018_person WHERE InjuryStatus BETWEEN 2 AND 4 GROUP BY 1;

# crash counts using flags in incident table...
SELECT IncidentYear "Year", SUM(sF_Bicycle) "Bike-MV", SUM(sF_Pedestrian) "Ped-MV", SUM(sF_Motorist) "all MV" FROM incident GROUP BY 1;
SELECT IncidentYear "Year (Incap-inj only)", SUM(sF_Bicycle) "Bike-MV", SUM(sF_Pedestrian) "Ped-MV", SUM(sF_Motorist) "all MV" 
FROM incident WHERE InjurySeverity = 4 GROUP BY 1;

Here are some old-style queries are all documented in bsap-data-2015.txt. I didn’t use these this year.

SELECT COUNT(1) FROM 2009_incident;
SELECT count(1) FROM 2009_person WHERE eInjuryStatus LIKE "FATAL%";
SELECT count(1) from 2009_person WHERE InjuryStatus BETWEEN 2 AND 4;
[1] SELECT COUNT(1) FROM 2009_incident i WHERE EXISTS (SELECT 1 FROM 2009_unit u WHERE u.IncidentID=i.IncidentID AND u.eUnitType='PEDALCYCLIST');
SELECT count(*) FROM 2009_person WHERE ePersonType='PEDALCYCLIST' AND eInjuryStatus='FATAL';
SELECT count(*) FROM 2009_person WHERE eInjuryStatus='FATAL';
SELECT count(1) from 2009_person WHERE InjuryStatus BETWEEN 2 AND 4 AND ePersonType = 'PEDALCYCLIST'; 
SELECT count(1) FROM 2009_incident i WHERE eInjurySeverity='FATAL' AND EXISTS (SELECT 1 FROM 2009_unit u WHERE u.IncidentID=i.IncidentID AND eUnitType='PEDALCYCLIST');
SELECT count(1) FROM 2009_incident WHERE eInjurySeverity='FATAL';


Leave a Reply

Your email address will not be published. Required fields are marked *