Does the City Fix It On Time?
When you report something to San Antonio 311, the City sets itself a deadline and records whether it met it. Both are published. This page adds them up: by what you asked for, by where you live, and month by month.
A late rate only means something next to its deadline. The City sets a different deadline for every kind of request, from same-day to three months. A type with a long deadline will look better than a type with a short one whatever the effort behind it, so the deadline is printed beside every rate here, and request types are never averaged together into a category.
Where the City misses most often
Request types with at least 300 requests, worst first. The deadline column is the City’s own, taken from the record.
| Request type | Department | Requests | Deadline | Missed | |
|---|---|---|---|---|---|
| Homeless Encampment | Human Services | 2,267 | 21 days | 72.2% | |
| Traffic Signals (New Signal) | Public Works | 480 | 85 days | 60.4% | |
| Out of Cycle(Garbage/Leaves w Fee) | Solid Waste Management | 4,198 | 9 days | 59.6% | |
| Services/Fees Info (Fees/Charges) | Solid Waste Management | 981 | 5 days | 59.2% | |
| Traffic Signals (Engineering) | Public Works | 364 | 85 days | 58.5% | |
| Trapped/Confined | Animal Care Services | 4,973 | 1 days | 57.6% | |
| Animal Bite(Non-Critical) | Animal Care Services | 2,331 | 10 days | 52.6% | |
| Animal Bite(Critical) | Animal Care Services | 684 | 10 days | 51.8% | |
| Carts(Placement) | Solid Waste Management | 533 | 2 days | 49.2% | |
| Dockless Vehicle | 311 | 806 | same day | 39% | |
| Electrical Lighting Concerns | Parks and Recreation | 627 | 14 days | 38% | |
| Out of Cycle(Brush/Bulky) | Solid Waste Management | 4,444 | 13 days | 36.3% | |
| Dangerous Premise BSB Processed | Development Services | 708 | 175 days | 35.2% | |
| Third Shift | Animal Care Services | 698 | 1 days | 35% | |
| Cruelty Neglect(Animal Neglect) | Animal Care Services | 9,000 | 3 days | 34.5% |
The deadline explains more than the department does
The clearest example in the record sits inside one department. Animal Care Services is asked to collect a stray and to respond to an aggressive animal. It is given sixty days for the first and five for the second, and its performance follows the deadline rather than the difficulty.
| Request type | Requests | Deadline | Missed |
|---|---|---|---|
| Overgrown Yard/Trash | 44,223 | 64 days | 7.8% |
| No Pickup | 42,766 | 5 days | 6.6% |
| Carts(Damaged Cart) | 34,455 | 7 days | 2.1% |
| Dead Animal Pick Up | 29,905 | 2 days | 0.7% |
| Carts(Lost-Stolen) | 21,205 | 7 days | 1.7% |
| Animals(Stray Animal) | 15,261 | 60 days | 0.4% |
| Animals(Aggressive Non-Critical) | 15,231 | 5 days | 27.7% |
| Vacant/Overgrown Property | 10,481 | 64 days | 16.7% |
| Pavement Repair (Pothole) | 10,412 | 2 days | 3.1% |
| Overgrown Yard/Trash (Alley Way Maintenance) | 10,165 | 64 days | 12% |
| Traffic Signals (Maintenance) | 9,925 | 29 days | 16.3% |
| Injured-Sick Animal | 9,839 | same day | 9.3% |
By council district
This is the late rate, not the number of requests. A district that files more requests is not worse served; it may simply call more often. The spread between districts is real but modest: 8.9% at the best to 12.1% at the worst.
| District | Requests | Missed | |
|---|---|---|---|
| District 1 | 55,418 | 9.9% | |
| District 2 | 51,634 | 11.3% | |
| District 3 | 52,448 | 10.1% | |
| District 4 | 42,210 | 10.6% | |
| District 5 | 59,032 | 12.1% | |
| District 6 | 31,367 | 9.3% | |
| District 7 | 40,440 | 9.2% | |
| District 8 | 22,416 | 9% | |
| District 9 | 22,574 | 8.9% | |
| District 10 | 34,866 | 9.8% | |
| District 0 | 93,046 | 12% |
Darker is a higher share missed, 8.9% to 12.1%. Shaded by rate, never by how many requests were filed.
What is open right now, and already late
Every point below is one request that is open today and has already passed the deadline the City set for it. This is a backlog, not a map of where people complain: a neighborhood that files more requests is not worse served, which is why the district map above is shaded by rate and this one counts nothing at all.
7,689 of the 11,951 requests that are open past deadline can be shown, 64.3%. The rest carry no usable location in the City’s record.
What is missing is not spread evenly, and that matters more than the total. Across the whole record 85,716 of 505,451 requests (17%) carry no usable location. 190 request types are unaffected and 53 are affected, but some are absent from this map almost entirely:
- Absentee Property Owner Registration Required : 1,619 of 1,620 have no location (99.9%)
- Certificate of Occupancy Investigation : 1,433 of 1,455 have no location (98.5%)
- Scrap Tire Investigation : 1,356 of 1,356 have no location (100%)
- Graffiti CPS Property : 1,147 of 1,147 have no location (100%)
- Salvage Yard Investigation : 738 of 738 have no location (100%)
The column the City stores a position in is typed as a whole number, so where a longitude was written into it instead of a State Plane value the decimals were dropped and the position is gone. The City’s own service publishes those requests at a point in the South Pacific Ocean.
This map therefore under-represents those kinds of work specifically, and reading it as a complete picture of what the City owes would be wrong in a way the picture cannot show you.
Nothing external is contacted until you press this: not the map library, not the background tiles, and not the request locations.
Month by month
The newest months are left unshaded because they are not finished. A request filed last week against a sixty-day deadline cannot be late yet, so the most recent months always look good and it is not an improvement. A month counts once 90 days have passed since it ended.
Percentage of requests missing the City’s deadline, by the month they were filed. Hatched bars are months still too recent to judge and are excluded from the headline figure.
What this cannot tell you
- Every figure here is the City’s own. `SLADate` is the deadline the City set for the request and `LateYesNo` is the City’s own flag for missing it. Nothing on this page applies a standard of ours.
- Request categories cannot be compared on late rate, because one category bundles dozens of different promises. Measured in this record: Graffiti carries 153 distinct deadline lengths, Solid Waste 82, Animals 8 ranging from same-day to 60 days. "Animals is 22% late" hides stray-animal pickup at 0.4% and a trapped animal at 57.6%. Every comparison on this page is made at the request-type level, where one type is one promise.
- A late rate is partly a function of the deadline the City gave itself. A request type with a 60-day window will beat one with a 5-day window whatever the effort behind it, so the deadline is printed beside every rate here and a rate is never shown alone.
- The most recent months always look good, and it is not an improvement. A request opened last week against a sixty-day deadline cannot be late yet. Measured here, the newest month reads under 4% late against a baseline near 10%, purely because its cases have not aged. Months are only counted in the headline once 90 days have passed since they ended, and the newest months are drawn differently and excluded from it.
- This is a rolling twelve-month record at source, not an archive. The City republishes the last twelve months and the thirteenth drops off. Months older than the current window exist here because this page has been keeping them; they are not available from the City.
- Council District 0 is not a council district. It carries a large share of all requests and is shown in the table, named, and excluded from every district comparison and from the map.
- The number of requests is not a measure of need. A district that files more 311 requests is not worse served; it may simply call more often. Only the late RATE is compared, and the map is shaded by rate, never by how many requests were filed.
- The late flag covers open cases as well as closed ones, so a request still sitting open past its deadline is already counted. Filtering to closed cases would quietly drop the worst of the backlog.
- A request is a report, not a verified problem. Some are duplicates, some are withdrawn, and the record does not say which.
- Response time is not quality. A case closed on time may have been closed without the thing being fixed, and this record cannot tell you which.
Take the data. Download the CSV · Use the API · rebuilt monthly, generated 2026-08-29.
The deadline explains more than the department does
The clearest example in the record sits inside a single department.
Animal Care Services is asked to pick up a stray animal and, separately, to respond to an aggressive one. On the first it misses its deadline on 0.4% of more than fifteen thousand requests. On the second it misses on 27.7% of a similar number. Same department, same year, same city. The difference is not effort: the City gives itself sixty days to collect a stray and five to answer an aggressive animal. What changed is the promise, not the performance.
That is why every figure here carries its deadline beside it, and why request types are never averaged into a category. A category is not one promise. The graffiti category alone contains 153 different deadline lengths, solid waste 82. A late rate computed across a category is arithmetic over things that were never comparable, and it is the first thing a spreadsheet will do.
What the City misses most
Ranked among request types with at least 300 requests.
The sharpest one is a service residents pay extra for. Out-of-cycle collection of garbage, leaves or bulky items carries a fee, has a nine-day deadline, and misses it on 59.6% of requests.
Two more stand out for what they are rather than how many. An animal bite classed as critical has a ten-day deadline and misses on 51.8%. An animal reported trapped or confined has a one-day deadline and misses on 57.6%. Requests categorized as a homeless encampment miss a twenty-one-day deadline on 72.2% of just over two thousand requests, which is a statement about how the City processes a type of request and not about the people it concerns.
Against that, plenty is delivered on time: dead animal pickup misses on 0.7% against a two-day deadline, and bin replacements sit near 2% against a week. This is not a department failing across the board. It is specific promises kept and specific promises missed.
Two things that would make this look better than it is
Both are corrected here, and both are easy to get wrong.
The newest months always look excellent. A request filed last week against a sixty-day deadline cannot be late yet. In the raw record the most recent month reads under 4% missed against a baseline near 10%, which reads like rapid improvement and is nothing of the kind. Months only count toward the headline once 90 days have passed since they ended; the rest are drawn hatched and excluded.
The record reaches back years, and almost all of it is a mirage. The City republishes a rolling twelve months. Rows older than that window are a scattering of long-open cases still in scope: one month in 2024 holds 55 requests, every one of them late. Charted, that says “100% late in 2024”, which is false. Only months captured whole are counted.
Taking both together, the honest figure is 9.9% of 301,733 requests across 8 complete months, rather than the 10.6% the raw file averages to.
Why this page keeps its own copy
The City publishes twelve months. Nobody keeps the thirteenth.
The source is a rolling window, currently 2025-08-22 to 2026-08-21, and when it advances the month that drops off is gone: not archived elsewhere, not available on request, simply absent. So this page keeps every month it has seen. There are 58 in the file today and that number only grows. The point is not the page as it stands; it is that in two years there will be a record of whether the City got faster or slower, and nowhere else is that record being kept.
What this does not tell you
The limits matter as much as the findings.
Every number here is the City’s own. The deadline is the City’s, the late flag is the City’s. Nothing applies a standard invented by us, which means the figures can be disputed on their accuracy but not on their fairness.
Volume is not need. A district that files more 311 requests is not worse served. It may simply call more often, and this record cannot tell you which. Only the rate is compared, and the map is shaded by rate, never by how many requests were filed. Council District 0 is not a council district; it appears in the table, named, and is excluded from every comparison.
On time is not fixed. A case closed within its deadline may have been closed without the thing being dealt with: the record has a date, not an outcome. A request is also a report rather than a verified problem, and some are duplicates or withdrawn without the file saying which.
Check it yourself
One dataset, published by the City.
Everything here comes from the City’s own 311 All Service Calls layer. Nothing was bought, scraped, estimated or modeled. The per-type table, the district table and the full monthly series are available as CSV and through the public API, which needs no key and also publishes the rows we excluded and why.
Know someone who is still waiting?
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
All 17 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 the City of San Antonio 311 service request record, including the City’s own deadline and late flag on every request. 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.