The maps, graphs and tables available below are generated from crime data published by the Houston Police Department (HPD). Prior to June 2009, the following "Type I" crimes were included on the maps and in statistics: murder, rape, robbery, aggravated assault, burglary, burglary to a motor vehicle, auto theft, narcotic drug law violations and driving while intoxicated. From June 2009 forward, the following crimes are included on the maps and in statistics: aggravated assault, auto theft, burglary, murder, rape, robbery and theft. If you do not know the police beat in which you are interested, check the HPD Beat Map (PDF) first. The raw crime data for a given month is usually released by HPD during the last week of the following month.
Programmatically detectable geocode failures occur for approximately 2% of all incidents and these incidents are not displayed on the maps or are marked on the maps as occurring on Smith Street between Prairie and Preston (downtown). Additionally, some incidents are not shown on the maps because HPD did not list a beat for the incident or because the street address was not valid. A few addresses may not have geocoded properly due to the way my custom software parses and reassembles the addresses before sending them to a geocoding service. Some incidents are not marked properly because the geocoding service is unable to parse the addresses correctly (in particular, freeway addresses in Houston tend to confuse the geocoding service). The data from which the statistics and maps on this site is generated is the data released monthly by HPD on the city web site and is also known as the "Positive Interaction Program (PIP)" data. Unfortunately, this data is known to be incomplete in some instances; this is HPD's fault for releasing incomplete data.
How are these maps generated? I wrote several custom software applications to (1) cleanse and enhance the raw monthly data from HPD, (2) geocode the addresses so they could be mapped via Google Maps and (3) generate static HTML/JavaScript maps using the Google Maps API.