San Antonio Aggressive Driving Report
San Antonio police were called to 116,262 crashes and wrong-way drivers in the last twelve months. That is the official record, and it stops well short of what actually happens on the road: almost nobody calls 911 about being tailgated, brake-checked or run to the shoulder. So this page publishes both, separately. The official calls, and what residents report themselves on any of 404 San Antonio arterials.
What the official record shows
SAPD calls for service, filtered to events rather than enforcement.
This is the official record, and it is not the same thing this page collects. A 911 call means somebody phoned the police. Almost no one phones the police about being tailgated, brake-checked or run to the shoulder, so none of that appears below. The two counts are shown separately and are never added together, because they measure different populations: this one counts people who called, and the form counts people who did not.
What police were called to
- Accident Minor296,494
- Accident Major121,789
- Wrong Way Driver4,817
Where police were called
115,964 of 116,262 calls (99.7%) are on this map. The other 298 have no shape to draw: 117 were logged without a ZIP at all, and the rest sit in four ZIP codes that are administrative rather than geographic (a corporate campus, a base annex and two PO box ranges), which have no polygon in the county layer. Verified against that layer rather than assumed.
Driving-event calls in the last twelve months, shaded darkest where police were called most. This is not a map of where driving is worst, and it is not a rate: a ZIP full of highway collects enormous numbers with almost nobody living in it, so dividing by residents would say something confident and false. No traffic count is published for these roads, so there is no denominator to use and none is invented.
14 ZIP codes in the county layer recorded no driving-event calls at all. They are hatched rather than left as holes, because a hole reads as missing data when the truth is a real zero: they are mostly outside the city, where SAPD is not the responding agency. Blank areas carry no polygon at all in the county ZIP layer: some are beyond it, because the frame reaches far enough to include Schertz and Converse, and a few are gaps inside it. They are not ZIPs whose calls were dropped, which is the only thing that would matter here.
The same figures, ranked
The last twelve months. As everywhere else on this site, a busier ZIP collects more of everything, and there is no traffic count here to divide by, so this is where police were called and not where driving is worst.
| ZIP | Part of town | Calls, 12 months | Share |
|---|---|---|---|
| 78216 | North Central / Airport | 5,207 | |
| 78249 | Northwest Side | 4,810 | |
| 78251 | West Side | 4,755 | |
| 78218 | Northeast Side | 4,179 | |
| 78223 | Southeast Side | 4,166 | |
| 78207 | West Side | 3,901 | |
| 78230 | Medical Center area | 3,898 | |
| 78227 | West Side | 3,809 | |
| 78229 | Medical Center | 3,719 | |
| 78233 | Northeast Side | 3,458 | |
| 78212 | North Side | 3,210 | |
| 78201 | Deco District | 3,055 | |
| 78247 | North Side | 3,001 | |
| 78245 | Far West Side | 2,901 | |
| 78232 | North Side | 2,853 | |
| 78219 | East Side | 2,723 | |
| 78238 | West Side | 2,622 | |
| 78258 | Stone Oak | 2,565 | |
| 78237 | West Side | 2,532 | |
| 78240 | Northwest Side | 2,515 |
When it happens
Crashes follow the traffic. Wrong-way drivers follow closing time. Crash calls peak at 17:00, in the evening rush, and only 13% of them land between 10pm and 5am. Wrong-way calls peak at 02:00, and 58% of them land in those same seven hours. Both reach police the same way, out of the same table, over the same years. If this were just a matter of how many cars are out, the two would fall together overnight. One falls and the other rises.
Every call in the archive, not just the last twelve months, placed at the hour it reached police. Unlike a crime report date this is essentially the hour the event happened, because somebody dials while it is in front of them. That is why the crime map will not show you this for offences and this page can show it for crashes.
Each row is drawn against its own busiest hour, because crash calls outnumber wrong-way calls by about sixty to one and a shared scale would flatten the second row into a straight line. Compare the shape of a row to itself, not the bar heights between the two.
Every hour of every day of the week
Both call types together, 423,100 of them since 2023, across the 168 hours of a week. The darkest block is the weekday evening drive home. Saturday and Sunday have no such block, and instead carry the early hours that the weekdays do not.
Source. SAPD Calls for Service, 2023-01-01 to 2026-07-31. Only Accident Major,Accident Minor,Wrong Way Driver are counted. Traffic Stop, Traffic Violation and DWI are excluded because they count enforcement activity rather than events, and Traffic Related is excluded as too vague to mean anything about driving.
Why the clock above is on this page and not on the crime map
The same question, asked of two datasets, is honest on one of them and not the other.
The crime map on this site covers forty-two months of San Antonio police offences, and it will not tell you what hour of the day anything happened. It cannot. That data carries the date an offence was reported, not the date it occurred, which is why its property-crime spike lands on Monday morning. That is a weekend of burglaries being written up when the office opens. Reading it as a Monday crime wave would be reading the filing schedule.
A dispatch record is a different kind of timestamp. Somebody picks up a phone while a car is upside down in front of them, or while a driver is coming at them on the wrong side of a divided road. The gap between the event and the record is minutes. That is what makes an hour-of-day reading defensible here and indefensible there, and it is the only analysis on this site that works on one dataset and is refused on the other.
What it shows is two populations that happen to share a phone number. Crash calls track the working day: a morning bump, a long plateau, a peak at 17:00 as the city drives home, and only 13% of the year’s calls between 10pm and 5am. Wrong-way calls invert it. They peak at 02:00, and 58% of them fall in those same seven overnight hours.
The pairing is the point. If the overnight difference were only a matter of how many cars are out, both counts would thin out together after midnight, because both are being dialled by the same drivers on the same roads through the same call centre. Instead one falls to a seventh of its day and the other more than doubles. Whatever is putting cars onto the wrong side of the road at two in the morning is not traffic.
This page does not name that cause, because a dispatch record cannot. There is no field here for impairment, no field for the driver, and nothing that would survive the step from correlation to explanation. The chart is a shape and a timestamp, and the shape is not going to be much of a surprise to anyone who drives home late. What can be said is narrower, and is enough: the shape is in the City’s own published record, it took one query to find, and the record it came out of is linked above so you can go and get it yourself.
Share it with somebody who drives 1604.
Report what the official record misses
Four questions, all dropdowns. It takes about twenty seconds.
What people have reported here
Separate from the figures above, and never added to them.
Still collecting. Nothing is broken. A map built from a handful of reports would say more about who happened to find this page than about how anybody drives, so no per-road number is shown until there are at least 250 of them. The count above is live.
What this is, and is not.
- This is not crime data and not a crash record. It is what people chose to report, and nothing in it has been verified against any official source, because no such source is published.
- Self-selection is the dominant effect. People who report are not a random sample of drivers, so a road with more reports may simply carry more people who know this page exists.
- There is no denominator. Without traffic volume a busy road will always accumulate more reports than a quiet one, which says nothing about which is worse. Roads here are ranked by most REPORTED, never by most dangerous.
- Only classified arterials can be reported. Local and residential streets are deliberately excluded so that a report cannot point at a household.
- Nothing published here is finer than a calendar month, and no report is ever shown individually.
- Roads below the reporting floor are withheld and counted in the withheld total, so nothing disappears silently.
Why there is nowhere on this form to describe the driver
There is no box for a licence plate, a vehicle, or a person, and there never will be. Not because it would be less useful. Because a plate number next to an accusation is a public allegation about a specific identifiable person, made by an anonymous stranger, that nobody has checked.
That is a defamation claim, a stalking tool, and a way to settle a grudge, all in one field. Sites that collect it end up hosting the worst day of somebody’s life, permanently, on the word of the other driver.
The same reasoning is why only major roads are listed. San Antonio has around 404 classified arterials and roughly twenty-one thousand local streets. A report on Culebra Road is anonymous. A report on a residential cul-de-sac with twenty houses is very close to pointing at one of them, and that is exactly how a neighbour dispute would end up laundered through a public map. So residential streets are not offered.
Nothing published here is finer than a calendar month, and no individual report is ever shown. A specific day, plus one road, plus a serious category, can be narrow enough to identify one real event and one real person. Reports below the display floor are withheld and counted in the totals, so nothing quietly disappears.
Read this before you quote a number from it
This page is built differently from everything else on this site, and it is weaker evidence. That is worth being blunt about.
The two halves are different evidence
The call figures are an official record: SAPD were dispatched, and it happened. The resident reports are not checked against anything, because there is nothing to check them against. No crash dataset is published by the City, the State’s crash database sits behind a login, and no feed anywhere flags a road rage incident. Treat the first as a record and the second as a survey.
Self-selection is the biggest effect in it
People who report are not a random sample of drivers. They are people who had a bad experience and who happened to find this page. A road can rise up the list because more people who use it know this exists, and that has nothing to do with how anyone drives on it.
There is no denominator
A road carrying two hundred thousand vehicles a day will collect more reports than a quiet one no matter what. Without a traffic count to divide by, “most reported” is the only honest ranking, and it is not the same as “worst”. The State publishes traffic counts, but its layer has no county field, so scoping it to Bexar needs work this page has not done.
What is kept, and for how long
A road, a category, a day, a rough time, an optional severity, and a one-way hash of your IP address so that one person cannot flood it. No name, no email, no description, no raw address. Raw submissions are deleted after 90 days; only the totals persist.
Why an IT contractor built this
Because the interesting problem here is not the map, it is the schema. Almost every question people ask about their city runs into the same wall: the record either does not exist, or it exists and quietly cannot answer the question. The other tools on this site are about the second case. This one is about the first.
Building it safely is the same discipline. Decide what the data cannot support, and then make it structurally impossible to claim it anyway. A form with no free-text field cannot publish an accusation, in the same way that a permit record with no valuation cannot tell you what a house cost. See our capabilities or get in touch.
Related free tools
San Antonio Crime Map
Forty-two months of SAPD offences by ZIP with trends and per-capita rates. Official data, with the denominator problems stated.
San Antonio Building Permits
Every building permit by type, district and month, published with the coverage rate of every field.
Trail Accessibility Map
Every city trail by surface firmness, plus the sidewalk gaps. Certifies nothing, and says why.