San Antonio Crime Map
Every reported Group A offense SAPD has published since January 2023, mapped by ZIP code, with 44 months of trend behind each one. Look up your own ZIP for its full profile, or press play to watch the map move across every month. It tells you which ZIP codes genuinely changed last month and which ones only look like they did. Built from the City’s own open data, and honest about what that data cannot tell you.
Reported offenses by ZIP code
SAPD NIBRS Group A offenses, 2025-09 to 2026-08 (trailing 12 months). 131,827 offenses across 62 ZIP codes.
This map covers the 62 ZIP codes the San Antonio Police Department reports offenses in. The county boundary file carries 81, and the other 19 are not drawn because SAPD does not police them. Each is a separate city, a military installation or an unincorporated place: Adkins, Atascosa, Boerne, Bulverde, Castroville, Cibolo, Converse, Elmendorf, Helotes, JBSA Randolph, La Coste, Lytle, Marion, Saint Hedwig, Schertz, Somerset, Universal City, Von Ormy. Those places have their own police departments and their own records. An absence here is a jurisdiction boundary, not a safe neighborhood.
ZIP codes ranked by the selected measure. A per-1,000 rate is withheld where fewer than 5,000 people live in the ZIP code, and a percentage change is withheld where the prior period held fewer than 50 offenses: in both cases the denominator is too small for the number to mean anything.
| ZIP | Offenses | Per 1,000 | Per sq mi | vs prior yr | 44-month trend |
|---|---|---|---|---|---|
| 78207 | 7,133 | 131.8 | 945 | +6.4% | |
| 78216 | 6,017 | 143.1 | 427 | -12.6% | |
| 78223 | 5,590 | 97.6 | 130 | +4.3% | |
| 78228 | 4,645 | 83.7 | 411 | -4.0% | |
| 78227 | 4,534 | 102.8 | 327 | -4.4% | |
| 78249 | 3,957 | 64.1 | 268 | -7.4% | |
| 78201 | 3,934 | 90.6 | 550 | -4.3% | |
| 78237 | 3,883 | 105.1 | 553 | -8.9% | |
| 78251 | 3,875 | 62.8 | 266 | -7.3% | |
| 78229 | 3,867 | 109.9 | 681 | -10.4% | |
| 78230 | 3,637 | 86.5 | 350 | -12.2% | |
| 78245 | 3,624 | 39.7 | 109 | -11.2% | |
| 78240 | 3,581 | 62.8 | 319 | -5.0% | |
| 78210 | 3,526 | 101.5 | 463 | +1.5% | |
| 78221 | 3,478 | 83.6 | 106 | -1.9% | |
| 78218 | 3,467 | 90.5 | 317 | -11.0% | |
| 78212 | 3,375 | 126.5 | 479 | +2.9% | |
| 78205 | 3,300 | n/a | 3,367 | -3.8% | |
| 78224 | 3,275 | 158.4 | 214 | -7.0% | |
| 78217 | 3,170 | 93.3 | 319 | -2.7% | |
| 78238 | 2,998 | 114.2 | 322 | -9.2% | |
| 78209 | 2,751 | 63.4 | 274 | -0.9% | |
| 78232 | 2,629 | 72.5 | 221 | -8.5% | |
| 78213 | 2,619 | 63.0 | 336 | -8.8% | |
| 78211 | 2,607 | 85.2 | 260 | -4.1% | |
| 78214 | 2,607 | 119.1 | 194 | -6.8% | |
| 78220 | 2,555 | 138.1 | 227 | +1.8% | |
| 78247 | 2,343 | 45.1 | 179 | -6.4% | |
| 78233 | 2,234 | 46.9 | 161 | -8.7% | |
| 78242 | 2,230 | 62.0 | 285 | -1.7% | |
| 78258 | 2,135 | 41.3 | 125 | -8.1% | |
| 78250 | 2,008 | 34.7 | 208 | -10.1% | |
| 78202 | 1,860 | 186.9 | 753 | -0.3% | |
| 78222 | 1,782 | 71.3 | 107 | +6.8% | |
| 78257 | 1,729 | 166.4 | 30.1 | -11.2% | |
| 78204 | 1,565 | 131.0 | 563 | -11.2% | |
| 78219 | 1,522 | 89.8 | 109 | -4.4% | |
| 78215 | 1,379 | n/a | 1,313 | -11.0% | |
| 78256 | 1,231 | 102.5 | 147 | -16.6% | |
| 78254 | 1,123 | 14.2 | 42.3 | -14.3% | |
| 78259 | 1,106 | 41.1 | 63.9 | -7.1% | |
| 78225 | 902 | 68.4 | 472 | +5.9% | |
| 78226 | 811 | 117.4 | 210 | +17.4% | |
| 78203 | 734 | n/a | 556 | +11.6% | |
| 78244 | 721 | 19.0 | 92.4 | +4.9% | |
| 78208 | 644 | n/a | 638 | +19.5% | |
| 78253 | 560 | 8.3 | 10.5 | -6.7% | |
| 78231 | 462 | 46.4 | 102 | -11.2% | |
| 78235 | 460 | n/a | 217 | -3.8% | |
| 78248 | 420 | 29.7 | 105 | +5.3% | |
| 78252 | 399 | 21.9 | 13.1 | -22.7% | |
| 78239 | 295 | 9.9 | 43.9 | +7.7% | |
| 78255 | 162 | 8.9 | 9.0 | -20.6% | |
| 78260 | 144 | 3.9 | 6.0 | -19.6% | |
| 78264 | 95 | 8.1 | 1.3 | +35.7% | |
| 78266 | 59 | 8.1 | 1.5 | -35.2% | |
| 78234 | 35 | 5.6 | 6.7 | n/a | |
| 78236 | 27 | 3.5 | 2.0 | n/a | |
| 78261 | 8 | 0.3 | 0.3 | n/a | |
| 78243 | 4 | n/a | 11.4 | n/a | |
| 78206 | 2 | n/a | 200 | n/a | |
| 78263 | 2 | n/a | 0.0 | n/a |
The safest and most dangerous ZIP codes in San Antonio
The most-searched question about this data, and the one most sites get wrong. Rank by raw count and you just find the biggest ZIP code; rank by a naive per-capita rate and downtown crowns itself on the strength of the Riverwalk. Here it is done the fair way, by reported offenses per 1,000 residents over the trailing year, with the catches that ranking pointed out.
Lowest crime per resident
- 78261 Far North Side0/1k
- 78260 Far North Side4/1k
- 78266 Far Northeast Side8/1k
- 78264 Far South Side8/1k
- 78253 Far West Side8/1k
Highest crime per resident
- 78202 Central San Antonio187/1k
- 78257 La Cantera & The Rim retail166/1k
- 78224 South Side158/1k
- 78216 North Central / Airport retail143/1k
- 78220 East Side138/1k
Two catches, and they are the whole point. The "safest" list excludes the military bases (JBSA Lackland, Fort Sam Houston): their reported crime is low only because SAPD is not their police force, a jurisdiction quirk, not safety. And some "most dangerous" ZIP codes are retail corridors: the rate divides real offenses by the few thousand who live there, while the crime is driven by the tens of thousands who shop there. A ZIP code is a mail boundary, not a neighborhood, and this is reported crime, not risk. Read it as a starting point, then look up the specific ZIP above.
San Antonio crime: the questions people ask
- Is San Antonio safe?
- It depends what you measure, and this map is built to let you. By the FBI's numbers San Antonio's violent-crime rate runs above the national average, and its property-crime rate is the highest of the five biggest Texas cities. But reported crime is heavily concentrated (half of it falls in about 16 of 62 ZIP codes) and heavily late-night, so a citywide label hides more than it tells. Look up your own ZIP rather than trust one number.
- What is the safest ZIP code in San Antonio?
- By reported offenses per resident over the trailing year, 78261 is the lowest, at about 0 per 1,000 residents. Military-base ZIP codes read even lower, but that is because SAPD does not police them, not because they are safer. A ZIP is a coarse mail boundary, so treat this as a starting point.
- What is the most dangerous ZIP code or neighborhood in San Antonio?
- By offenses per resident, 78202 ranks highest (about 187 per 1,000). By sheer number of offenses, 78207 has the most. Watch the trap: a couple of high-rate ZIP codes are retail corridors (the airport and the big malls), where the crime is driven by shoppers, not the few thousand residents the rate divides by.
- What time of day does crime happen in San Antonio?
- Violent-crime 911 calls (assaults, shootings, robberies, logged when they happen) climb through the evening and peak around 10 pm, heaviest on Sunday and the weekend. About 37% of them come in during the five hours from 9pm to 2am. Early morning is the quietest stretch.
- What is the most common crime in San Antonio?
- The most-reported NIBRS Group A offense is Simple Assault, followed by property damage and theft from motor vehicles. Most of what SAPD records is property and lower-level offenses, not violent crime.
What actually changed in 2026-08
Nothing did. Not one of the 51 ZIP codes we can test moved far enough from its own expected range to be distinguishable from ordinary month-to-month noise. Several of them changed by more than 20%, and that change still means nothing. Below is the evidence, including the ZIPs whose headline percentages look alarming.
Ranked by how far each ZIP code departed from its own expected count, not by percentage change. Expected is that ZIP's own 24-month baseline, adjusted for the seasonal pattern and for how many days the month has. The comparison is quasi-Poisson: offense counts cluster, so their variance genuinely exceeds their mean, and a plain Poisson test would call several ZIP codes "unusual" every single month just by misjudging the noise. A ZIP is only called unusual beyond 3.0 standard deviations, because testing 51 ZIP codes at once at the conventional 95% threshold would flag about 3 of them by chance alone. Withheld below 30 expected offenses.
| ZIP | Observed | Expected | Change | Std devs | Verdict |
|---|---|---|---|---|---|
| 78242 | 236 | 196 | +24% | +2.8 | Within normal range |
| 78217 | 235 | 288 | -22% | -2.5 | Within normal range |
| 78221 | 263 | 311 | -19% | -2.5 | Within normal range |
| 78240 | 269 | 327 | -19% | -2.4 | Within normal range |
| 78211 | 199 | 238 | -19% | -2.2 | Within normal range |
| 78238 | 226 | 281 | -9% | -2.1 | Within normal range |
| 78218 | 265 | 329 | -19% | -2.1 | Within normal range |
| 78259 | 80 | 103 | -24% | -1.9 | Within normal range |
Read the third and fifth columns together. That is the entire point of this panel: a ZIP code can move by half and still be doing nothing unusual, because a small denominator moves easily. Percentage change is the number every other crime map leads with, and it is the number most likely to mislead you.
Every offense runs on its own week
This is the single most misread thing in any crime map, and you can see it here. The City publishes the day an offense was reported, not the day it happened, and different offenses give that away in different ways. Each pair of charts is one offense type against an average day and an average month (the dashed line is 100). Sorted into what their weekly rhythm is really telling you.
Reported the Monday after
These peak on Monday. That is almost certainly not when the crime happens, but when the weekend's break-ins and stolen cars are discovered and reported at the start of the week.
| Mon | 106 |
|---|---|
| Tue | 106 |
| Wed | 101 |
| Thu | 100 |
| Fri | 101 |
| Sat | 96 |
| Sun | 90 |
| Mon | 111 |
|---|---|
| Tue | 98 |
| Wed | 94 |
| Thu | 93 |
| Fri | 98 |
| Sat | 103 |
| Sun | 104 |
| Mon | 108 |
|---|---|
| Tue | 99 |
| Wed | 96 |
| Thu | 96 |
| Fri | 95 |
| Sat | 103 |
| Sun | 104 |
| Mon | 130 |
|---|---|
| Tue | 108 |
| Wed | 101 |
| Thu | 100 |
| Fri | 97 |
| Sat | 86 |
| Sun | 78 |
Reported as it happens
These peak on the weekend. They tend to be reported close to when they happen, not days later: an assault the day it occurs, a weekend drug or weapon stop as it is made. So this shape is closer to the real timing, the mirror image of the Monday group above.
| Mon | 101 |
|---|---|
| Tue | 91 |
| Wed | 89 |
| Thu | 93 |
| Fri | 97 |
| Sat | 110 |
| Sun | 119 |
| Mon | 101 |
|---|---|
| Tue | 98 |
| Wed | 96 |
| Thu | 102 |
| Fri | 104 |
| Sat | 105 |
| Sun | 95 |
| Mon | 99 |
|---|---|
| Tue | 86 |
| Wed | 92 |
| Thu | 95 |
| Fri | 108 |
| Sat | 111 |
| Sun | 110 |
| Mon | 100 |
|---|---|
| Tue | 102 |
| Wed | 97 |
| Thu | 89 |
| Fri | 95 |
| Sat | 108 |
| Sun | 108 |
A weekday, business rhythm
These peak midweek with little weekend share at all. A store reports a shoplifter on a workday; you catch a fraudulent charge when you check a statement on Tuesday, not Sunday.
| Mon | 118 |
|---|---|
| Tue | 121 |
| Wed | 116 |
| Thu | 112 |
| Fri | 110 |
| Sat | 68 |
| Sun | 54 |
| Mon | 111 |
|---|---|
| Tue | 124 |
| Wed | 123 |
| Thu | 119 |
| Fri | 111 |
| Sat | 67 |
| Sun | 44 |
We publish the weekday and month-of-year shapes because they are real and they are in the data. We are careful to tell you what they do and do not mean, because the obvious reading, that Monday is a dangerous day, is the wrong one. What the pattern actually measures is how and when each kind of crime reaches a police report. That is a genuinely useful thing to know, and almost nobody says it out loud.
When violent crime actually happens
The map's offense dates cannot tell you when a crime happened, only when it was reported. So this comes from a different place: 911 calls. A call about an assault, a shooting or a robbery is logged the moment it comes in, which is as close to the real time as this data gets. Each square is one hour of one weekday over three and a half years; the darker it is, the more violent-crime calls came in then.
So the honest version of "the most dangerous time" is late on a weekend night: violent-crime calls climb all evening, peak around 10 pm, and run heaviest Friday through Sunday. The quietest stretch is the early morning commute.
Read this as calls, not convictions. It counts 262,264 911 calls reporting assaults, shootings and robberies, by the hour they were made. A call is a report of a possible crime, which is a different thing from the confirmed offenses on the map above, and it comes from a different City dataset (Calls for Service). We use it only for timing, because it is the only place the timing honestly exists.
Arrests, for comparison: not the same thing as offenses
A second public dataset: 201,260 SAPD arrests across the same ZIP codes over the full 2023-01 to 2026-08 record. The table below shows the trailing 12 months (2025-09 to 2026-08), the same window as the map above. Do not divide arrests by offenses. They count different things. Arrests are mostly misdemeanors that are not in the Group A offense set at all, and an arrest can be made this month for a crime committed years ago, so an "arrests per offense" figure would be meaningless. We show arrests on their own, as their own measure.
ZIP codes ranked by arrests in the trailing 12 months. Felony share is the percentage of that ZIP's arrests that were felonies, not misdemeanors. A per-1,000 rate is withheld below 5,000 residents, the same rule the offenses table uses.
| ZIP | Arrests | Per 1,000 | Felony share | 44-month trend |
|---|---|---|---|---|
| 78207 | 5,528 | 102.1 | 26% | |
| 78205 | 3,473 | n/a | 15% | |
| 78237 | 2,850 | 77.2 | 27% | |
| 78227 | 2,758 | 62.6 | 22% | |
| 78228 | 2,657 | 47.9 | 22% | |
| 78223 | 2,408 | 42.0 | 24% | |
| 78216 | 2,389 | 56.8 | 18% | |
| 78210 | 2,337 | 67.3 | 24% | |
| 78201 | 2,192 | 50.5 | 22% | |
| 78212 | 2,105 | 78.9 | 21% | |
| 78218 | 1,962 | 51.2 | 20% | |
| 78229 | 1,908 | 54.2 | 22% |
Arrest location is where the arrest was made, which we checked tracks the offense map closely, so it is honest to read this geographically. What it is not is a measure of how many crimes get solved. That number is not in the public data, and anyone who quotes you one from a source like this is guessing.
Take the data
Everything above is built from open data you can download here. The offenses CSV is one row per ZIP code, per month, per offense type, the shape you want for a spreadsheet or a notebook, and arrests come as their own CSV. No signup, no email, no attribution required to us. Prefer to pull it programmatically? There is a versioned public API with JSON, CSV, and an OpenAPI spec.
Download CSV JSON (indexed cube) JSON (ZIP geometry) Arrests CSV
The underlying records are published by the City of San Antonio under CC-BY (City of San Antonio). The City is the source and deserves the credit. If our processing of it is useful to you, a link back to this page is welcome but not required. Cite it as: BrandShyp, “San Antonio reported offenses by ZIP code”, derived from City of San Antonio open data (SAPD Offenses), built 2026-09-06.
Source: City of San Antonio open data, SAPD Offenses (CC-BY (City of San Antonio)). NIBRS Group A offenses only. Population: U.S. Census ACS 5-year (2023), table B01003. We count offenses, not incidents: the 538,978 published offenses arise from 493,052 distinct police reports, because one report can carry several offenses. A dashboard that counts reports will show a smaller number than this one and both will be correct. Data through 2026-08; the City publishes monthly, so the most recent weeks are not yet included. 5,457 of 538,978 records (1.01%) carry no usable ZIP code and are not mapped. Built 2026-09-06.
Know your ZIP. Share the map.
Read this before you read the map
A crime map that does not explain itself is closer to a rumour than a record. Here is exactly what this one is.
It shows reports, not convictions, and not all crime
Every number here is an offense reported to SAPD. Some reports are later unfounded. Nobody on this map has been convicted of anything, and no individual is named, because the City’s data contains no names, no addresses, and no coordinates. That is a feature, not a gap.
It also is not all crime. The published dataset covers NIBRS Group A offenses only, which excludes DUI, disorderly conduct, and trespass, among others. Crimes that are never reported appear nowhere in it, and for some categories that is most of them.
ZIP code is as precise as the data goes
You may have seen crime maps that drop a pin on a block. They are working from a private police records feed. The City’s public dataset has no street address and no latitude or longitude: the finest geography it publishes is the ZIP code. So this map stops at the ZIP code, rather than inventing a precision it does not have.
A ZIP code is also not a neighborhood. It is a mail-delivery boundary that can span a wealthy subdivision, an industrial park, and a highway interchange at once. Treat a ZIP-level figure as a coarse signal, never as a verdict on a street.
Common questions about San Antonio crime by ZIP code
What is the crime rate in my ZIP code?
Pick your ZIP in the map’s “Explore your ZIP” list, or click it on the map. Its profile shows reported offenses per 1,000 residents, offenses per square mile, the change from a year earlier, its biggest offense types, and its full 44-month trend. For ZIPs with fewer than 5,000 residents we show counts only, because a rate built on almost nobody is not a rate.
Which areas of San Antonio have the most crime?
The ranked table under the map answers this three ways: total reported offenses, offenses per resident, and offenses per square mile. They do not agree, and that is the point. Downtown and the big retail corridors top any count because of the people who pass through them, not the people who live there. Use the ranking to see where reports cluster, never as a verdict on a street.
Is this a Bexar County crime map?
No. It covers the 62 ZIP codes where SAPD reports offenses. Cities such as Converse, Schertz, Universal City and Helotes run their own police departments, and the Bexar County Sheriff’s Office covers unincorporated county areas, so none of their reports are in the City’s dataset. If your ZIP is missing from the map, that is a jurisdiction boundary, not a safe neighborhood.
How current is it?
The data runs through August 2026. The City republishes monthly with a lag of a few weeks, and the map refreshes itself on the 6th of every month. You can download the full ZIP-by-month table as a CSV.
The part most crime maps get wrong
Dividing by residents is how you produce a lie
Rank ZIP codes by offenses per resident and downtown 78205 reads as roughly 2,000 per 1,000 residents, more offenses than the ZIP has people. That is not danger, it is the Riverwalk: about 1,650 people live there while millions pass through. So we withhold the per-resident rate below 5,000 residents and default to absolute counts. The same distortion hits retail corridors like 78216 (airport and North Star Mall), where the rate still counts people who do not live there.
We also give you offenses per square mile, a second denominator with its own bias (it flatters anything large and empty). Where the two disagree about a ZIP, that disagreement is the finding.
The most trustworthy number is change over time, because comparing a ZIP against its own past needs no denominator at all. Its own trap is small numbers: two offenses to four is “+100%”. So no change is shown below 50 prior offenses, and the color scale is set by the 90th percentile of movement, not the single wildest ZIP.
The trap that is hiding in your calendar
February is not safer. February is shorter.
A mistake almost every crime dashboard makes. Compare February to July on raw counts and February looks about 16% lower. Print that with a downward arrow and you have told the city crime falls in February. It does not. February has 28 days and July has 31, nearly a 10% gap in the time available for anything to happen. Most of that “drop” is the calendar.
So every period comparison here is computed per-day first. Strip out the calendar and a real but small season remains: San Antonio runs a few percent busier in high summer. It is the same mistake as the other two denominators wearing different clothes. Residents, area, days: pick the wrong divisor and the map lies confidently.
Why we will not tell you crime is “up 50%”
Percentage change is what every crime map leads with, and it is the most misleading number, because it is really a ranking of small denominators: a modest ZIP swings by half on an ordinary month.
So the What actually changed panel ranks by a harder question: given what this ZIP normally does at this time of year, is this month actually surprising? Each ZIP is measured against its own baseline, adjusted for the season and the length of the month. The percentage change sits right next to it so you can watch the two disagree. That gap is the whole reason this exists.
Two things most analysis skips. Crime counts are overdispersed: they cluster, so a plain Poisson test invents “significant” spikes every month that are nothing at all. We fit each ZIP’s own dispersion instead. And we test dozens of ZIPs at once: at the reflexive 95% threshold, roughly three would flag by chance alone every month, forever, so we only call a ZIP unusual beyond three standard deviations.
The honest consequence: most months, nothing is unusual. That is not a broken feature, it is the answer, and almost nobody publishes it.
How this was built
Reproducible end to end. Every input is public, and you can check any figure here against the source.
The pipeline
Offense records come from the City of San Antonio’s open data portal (SAPD Offenses, CC BY license) through its CKAN SQL API. They are aggregated to one cell per ZIP code, per month, per offense type, and joined to the City’s own ZIP boundary layer, which is projected to flat SVG geometry at build time. No map library, no tiles, and no third-party tracker loads on this page.
The build asserts its own totals. It re-counts the source table independently and refuses to publish if the aggregate does not reconcile to the row count, because the City’s datastore truncates large responses silently and a partial extract would look perfectly normal.
What we throw away, and why we tell you
Of 538,978 published records, 5,457 (1.01%) carry a blank or unmappable ZIP code. They are excluded, because there is nowhere honest to put them. The alternative, quietly assigning them somewhere, is how a map starts lying.
We count offenses, not incidents. Those 538,978 offenses come from 493,052 distinct police reports, because a single report can carry more than one offense. A dashboard that counts reports will show you a smaller number than this one, and neither of us is wrong. Ask which is being counted before you compare two crime figures.
The City republishes monthly, so the most recent few weeks are never present. If you need what happened last night, this is the wrong tool, and we would rather say so than imply a freshness we do not have.
Every figure in this section is read live from the same data file the map is drawn from, so it cannot drift out of step with the map above it. Data built 2026-09-06. Population: U.S. Census ACS 5-year (2023), table B01003.
Two datasets that look comparable and are not
Further down the page is a second measure: arrests. It is tempting to divide arrests by offenses and call it a “solve rate.” That would be fiction. They count different events: the offenses here are NIBRS Group A, but arrests are mostly misdemeanors that are not Group A at all, so many arrests have no matching offense and never will.
And they do not line up in time: an arrest this month can be for a crime years ago. So we show arrests as their own measure and never divide the two. The data supports “how many arrests, where, and how many were felonies.” It does not support “how many crimes get solved,” and we will not invent that.
Why an IT contractor built a crime map
Because this is the work. A government agency hands you a messy public dataset with a silent truncation bug, no coordinates, a broken denominator, and a 1% slice that fits nowhere. The job is to find the traps before they end up in a published figure someone makes a decision on: reconcile against the source, refuse to ship what does not add up, and state the limits on the face of the artifact, not in a footnote nobody reads.
We are a San Antonio software and data firm working across federal and local government, so this is the kind of problem we are paid to solve elsewhere. That is the whole of our interest in it. Nobody commissioned this map, it is not a sample of client work, and there is nothing to buy on this page. The code, the reconciliation checks, and the methodology are available on request.
Other San Antonio tools
Same method, a different public record. Each one states what its record cannot answer.
Crime Map Building Permits Bar & Restaurant Revenue Aggressive Driving Trail Accessibility License Plate Readers Data Centers Data Center Zoning 311 Response Times Data Center Corroboration Data Center Environmental Record Bond Projects Council District Lookup Sheriff Response Times County Capital Projects Police Response Times Missing Children Records Missing Persons Property Tax Increase Business & Contracting Events
All 20 are free, with no signup and no email wall, and the public API behind them needs no key.
Who publishes this
These tools are built and maintained by BrandShyp LLC, a San Antonio software firm. We sell data, software and accessibility work to public agencies and are seeking state and local government contracts. Small business certification with the South Central Texas Regional Certification Agency is in process. We hold no City of San Antonio contract.
No client, agency or sponsor funds, reviews or approves any of these tools, and nothing on these pages is a solicitation. Every figure comes from the public record named below, which is linked and can be queried without us.
Corrections. If a number here disagrees with the record, write to Justice Harker at [email protected] with the figure and the source that contradicts it. Corrections are made on the page, and what changed is noted there rather than replaced silently.
Source. This page reads SAPD NIBRS Group A offenses and arrests, published by the City of San Antonio, with population from the US Census Bureau and peer-city rates from the FBI. The record is linked from the page above and can be queried without us. We claim no rights over the underlying record and add no license of our own to it.