Overview
| residential_sf | lot-size-encoded (R-20, R-6, R-5, R-4, R-3, R-2, R-1 = min lot sf in thousands); RE = Rural Estate (1-acre); RP = Resource Protection (10-acre); NP-8/10/15 = Neighborhood Preservation minimum lot in thousands sf |
|---|---|
| residential_mf | density-encoded (MF-18, MF-25, MF-33, MF-40, MF-50, MF-65 = max du/ac) |
| residential_mixed | lot-size-encoded (RM-4, RM-5, RM-6 = min lot sf in thousands) |
| commercial | letter-code + index (NC, C-1, C-2, C-3, C-3R, C-3NA, D) |
| office | letter-code + intensity (O-1, O-1.5, O-2) |
| industrial | letter-code (I-1/L, I-2) |
| special | letter-code (ERZD, Q, MR) |
San Antonio Chapter 35 UDC is a conventional euclidean code with explicit use-separation — SF/MF/commercial/office/industrial districts with a dimensional table (Table 310-1) carrying both setback and per-district height (column L); §35-517 (Building Height Regulations) is a thin section that delegates the actual height limits to Table 310-1 and adds the height-setback ratio rule (1 ft side/rear setback per 2 ft above height limit, §35-517(d)). The MF family uses true density-encoding (MF-18 → 18 du/ac max), which is distinctive and textbook-cited. Per-district heights step up with density (MF-18/25: 35 ft; MF-33: 45 ft; MF-40: 60 ft; MF-50/MF-65: no limit). The code is use-separated rather than form-based and does not meet the rewrite-in-flight or hybrid-pd thresholds. Overlay system is unusually rich — AHOD (airport), RIO 1-7 (river improvement; RIO-7 covers San Pedro Creek with five sub-sub-districts 7a-7e), MLOD (military lighting — three sub-districts: MLOD-1 Camp Bullis, MLOD-2 Lackland AFB, MLOD-3 Martindale Army Heliport; no MLOD around JBSA-Randolph or Fort Sam Houston despite both having AICUZ contours), Missions Historic (UNESCO World Heritage Site), HS/HL (historic), UC/GC/MC/PC (corridors), IDZ (infill flexibility), and EP (facility parking permit overlay around major venues per §35-339.02). The IDZ overlay provides form-based flexibility on a site-by-site basis but is invoked via rezoning application, not by default, so does not flip the baseline classification. Key San Antonio quirks: (1) density-encoded MF naming with per-tier height steps; (2) both MINIMUM AND MAXIMUM front setbacks enforced in most residential districts; (3) MLOD-1/-2/-3 lighting overlays unique to this city — only Camp Bullis, Lackland, and Martindale have MLOD designations even though JBSA hosts more installations (Randolph and Fort Sam Houston have AICUZ but no MLOD); (4) Missions Historic overlay protects a UNESCO-inscribed cultural corridor — rare among US cities; (5) Military Reservation district (MR) explicitly cedes jurisdiction to federal/state per V.T.C.A. LGC §211.013.
- DENSITY-ENCODED MF NAMING: SA is one of few US cities that encodes maximum dwellings-per-acre directly in MF district names. MF-18 = 18 du/ac, MF-25 = 25, MF-33 = 33, MF-40 = 40, MF-50 = 50, MF-65 = 65. MF-65 exists in code but is often missed in secondary-source research. Density-encoding is the single most useful fact for quick feasibility math on SA MF parcels. (§35-310.07 UDC; IB565)
- MINIMUM AND MAXIMUM FRONT SETBACK RULE: Most SA residential districts enforce BOTH a minimum AND a maximum front setback — buildings must sit within a prescribed zone, neither too close nor too far from the street. This is unusual in Texas (most TX cities regulate only a minimum). Table 310-1 Columns H and I express min and max respectively. SB 15 waives this on lots ≤ 4,000 sf. (UDC Table 310-1 Columns H/I)
- THREE MLOD SUB-DISTRICTS FOR THREE MILITARY INSTALLATIONS: MLOD-1 (Camp Bullis, est. 2008-12-11 by Ord. 2008-12-11-1133, amended 2018-02-08 by Ord. 2018-02-08-0079 with BUG/MLR-1/MLR-2 framework), MLOD-2 (Lackland AFB including Medina Annex, est. 2018-02-08 §5), MLOD-3 (Martindale Army Heliport, est. 2018). Often-misreported as 'four MLOD overlays for four JBSA installations' — that's a hallucination. JBSA-Randolph and Fort Sam Houston have AICUZ contours but NO MLOD lighting overlay. Nationally unusual nonetheless — three military lighting overlays in a single city is rare. MLOD imposes lighting (BUG ratings, lumens-per-SF, 4100K color temp, full cutoff). Federal preemption supremacy within MLOD overlay supersedes city standards; FAA Part 77 height surfaces (separate from MLOD) preempt SB 840 height floors near all 4 installation airfields. (§35-339.04 UDC; Ord. 2018-02-08-0079; Open Data SA MLOD dataset)
+ 14 more in Quirks & notes
Districts
| Code | Name | Category | Min lot | Height | Coverage | FAR | Du/ac | Parking | Setbacks F/S/R |
|---|---|---|---|---|---|---|---|---|---|
| RP | Resource Protection (10-acre) | residential | 435,600 sf[4] | 35 ft[5] | — | — | — | — | 15[1] / 5[2] / —[3] |
| RE | Rural Estate (1-acre) | residential | 43,560 sf[9] | 35 ft[10] | — | — | — | — | 15[6] / 5[7] / 30[8] |
| R-20 | Rural Residential 20 (20,000 sf) | residential | 20,000 sf[14] | 35 ft[15] | — | — | — | — | 10[11] / 5[12] / 30[13] |
| R-6 | Single-Family — 6,000 sf | residential | 6,000 sf[19] | 35 ft[20] | — | — | — | — | 10[16] / 5[17] / 20[18] |
| R-5 | Single-Family — 5,000 sf | residential | 5,000 sf[24] | 35 ft[25] | — | — | — | — | 10[21] / 5[22] / 20[23] |
| R-4 | Single-Family — 4,000 sf | residential | 4,000 sf[29] | 35 ft[30] | — | — | — | — | 10[26] / 5[27] / 20[28] |
| R-3 | Small-Lot Single-Family — 3,000 sf | residential | 3,000 sf[34] | 35 ft[35] | 0.7[36] | — | — | 1[37] | 10[31] / 5[32] / 10[33] |
| R-2 | Small-Lot Single-Family (attached) — 2,000 sf | residential | 2,000 sf[41] | 35 ft[42] | — | — | — | — | 10[38] / 5[39] / 5[40] |
| R-1 | Small-Lot Single-Family (zero-lot) — 1,250 sf | residential | 1,250 sf[46] | 35 ft[47] | — | — | — | — | 10[43] / 5[44] / 5[45] |
| NP-8 | Neighborhood Preservation — 8,000 sf | residential | 8,000 sf[48] | — | — | — | — | — | — / — / — |
| NP-10 | Neighborhood Preservation — 10,000 sf | residential | 10,000 sf[49] | — | — | — | — | — | — / — / — |
| NP-15 | Neighborhood Preservation — 15,000 sf | residential | 15,000 sf[50] | — | — | — | — | — | — / — / — |
| RM-6 | Residential Mixed — 6,000 sf | residential | 6,000 sf[54] | 35 ft[55] | — | — | — | — | 10[51] / 5[52] / 20[53] |
| RM-5 | Residential Mixed — 5,000 sf | residential | 5,000 sf[59] | 35 ft[60] | — | — | — | — | 10[56] / 5[57] / 10[58] |
| RM-4 | Residential Mixed — 4,000 sf | residential | 4,000 sf[64] | 35 ft[65] | — | — | — | — | 10[61] / 5[62] / 10[63] |
| MF-18 | Multi-Family — 18 du/ac | residential | 5,000 sf[69] | 35 ft[70] | — | — | 18[71] | — | 20[66] / 5[67] / 10[68] |
| MF-25 | Multi-Family — 25 du/ac | residential | 5,000 sf[75] | 35 ft[76] | — | — | 25[77] | — | 20[72] / 5[73] / 10[74] |
| MF-33 | Multi-Family — 33 du/ac | residential | 5,000 sf[81] | 45 ft[82] | — | — | 33[83] | — | 20[78] / 5[79] / 10[80] |
| MF-40 | Multi-Family — 40 du/ac | residential | 5,000 sf[87] | 60 ft[88] | — | — | 40[89] | — | 20[84] / 5[85] / 10[86] |
| MF-50 | Multi-Family — 50 du/ac | residential | 5,000 sf[93] | —[94] | — | — | 50[95] | — | 20[90] / 5[91] / 10[92] |
| MF-65 | Multi-Family — 65 du/ac | residential | 5,000 sf[99] | —[100] | — | — | 65[101] | — | 20[96] / 5[97] / 10[98] |
| NC | Neighborhood Commercial | commercial | — | 25 ft[105] | — | — | — | — | 0[102] / 10[103] / 30[104] |
| C-1 | Light Commercial | commercial | 10,000 sf[109] | 25 ft[110] | — | — | — | — | 20[106] / 10[107] / 30[108] |
| C-2 | Commercial | commercial | — | 25 ft[114] | — | — | — | — | 10[111] / 10[112] / 30[113] |
| C-3 | General Commercial | commercial | — | 35 ft[118] | — | — | — | — | 0[115] / 30[116] / 30[117] |
| C-3R | General Commercial — Restricted (no alcohol sales) | commercial | — | — | — | — | — | — | — / — / — |
| C-3NA | General Commercial — No Alcohol | commercial | — | — | — | — | — | — | — / — / — |
| O-1 | Office | office | 10,000 sf[122] | 25 ft[123] | — | — | — | — | 20[119] / 30[120] / 30[121] |
| O-1.5 | Mid-Rise Office | office | — | 60 ft[127] | — | — | — | — | 20[124] / 30[125] / 30[126] |
| O-2 | High-Rise Office | office | — | —[130] | — | — | — | — | — / 20[128] / 30[129] |
| D | Downtown | mixed_use | — | —[131] | — | — | — | 0[132] | — / — / — |
| I-1 | Light Industrial (L) | industrial | — | 60 ft[136] | — | — | — | — | 30[133] / 30[134] / 30[135] |
| I-2 | Heavy Industrial | industrial | — | 60 ft[140] | — | — | — | — | 30[137] / 50[138] / 50[139] |
| ERZD | Environmental Resource Zone (Edwards Aquifer Recharge) | special | — | — | — | — | — | — | — / — / — |
| Q | Quarry | special | — | — | — | — | — | — | — / — / — |
| MR | Military Reservation | special | — | — | — | — | — | — | — / — / — |
Confidence: confirmed partial under review not found
Overlays
Parcels in the vicinity of San Antonio International Airport (SAT) and Stinson Municipal Airport (SSF), and along approach/departure paths per FAA Part 77 imaginary surfaces. Triggered by proximity to airport reference points and runway centerlines.
Vicinity of the historic San Antonio Missions (Mission Concepción, Mission San José, Mission San Juan Capistrano, Mission Espada) — UNESCO World Heritage Site inscribed 2015. Geographic trigger follows Mission Reach of San Antonio River and associated view-protection corridors.
Properties adjacent to the northernmost reach of the San Antonio River — from Hildebrand Avenue south through Brackenridge Park toward the Pearl / Museum Reach. Mixed residential / commercial corridor along Broadway and Avenue B.
Museum Reach of the San Antonio River — extending downtown urban character northward through River North, Pearl, and the museum corridor. Intended as a downtown extension with high-density mixed-use development.
Central downtown Riverwalk — the iconic Hugman-designed reach through the central business district. Most urban and historically-sensitive RIO sub-district.
Reach immediately south of downtown, encompassing the King William Historic District vicinity and South Town. Encourages urban mixed-use clustered nodes that complement (without mimicking) King William's historic character.
Upper Mission Reach south of King William / South Town — residential character with developing mixed-use nodes. Within UNESCO Missions Historic buffer.
Southernmost reach of the San Antonio River — rural Texas character, southernmost corporate limits. Within UNESCO Missions Historic buffer (Mission Espada vicinity).
Properties adjacent to San Pedro Creek (parallel waterway west of the San Antonio River through downtown). Added as a seventh RIO district when the San Pedro Creek Improvements Project (SPCIP) was created. Split into 7a (Camaron St / downtown north), 7b (El Mercado / civic-cultural), 7c (new Downtown Core south of Civic District), 7d (existing Neighborhood Core), 7e (Mixed-Use Transition).
Named roadway corridors designated by ordinance. UC = Urban Corridor (dense urban arterials); GC = Gateway Corridor (city-edge approaches); MC = Metropolitan Corridor (regional arterials); PC = Preservation Corridor (heritage routes).
Properties within five (5) miles of the perimeter of Camp Bullis / Camp Stanley training installation in northern Bexar County (I-10 West corridor). MLR-1: 0–3 miles (most restricted); MLR-2: 3–5 miles (less restricted).
Properties within five (5) miles of the perimeter of Lackland Air Force Base (JBSA-Lackland), including Lackland Medina Annex, in southwestern San Antonio. MLR-1 (0–3 mi) and MLR-2 (3–5 mi) sub-zones same as MLOD-1.
Properties within five (5) miles of the perimeter of Martindale Army Heliport in east-central San Antonio (east of W.W. White Rd, north of FM 1346). MLR-1 (0–3 mi) and MLR-2 (3–5 mi) sub-zones.
Individually-designated historic sites and districts citywide. Locally-designated historic landmarks (HL) and historic-significant buildings/districts (HS) mapped on SA Office of Historic Preservation inventory. SA has one of the largest locally-designated historic portfolios in Texas — King William, Monte Vista, Government Hill, Denver Heights, La Villita, Alamo Plaza, and many smaller districts.
Underutilized parcels within qualifying infill areas of the city; requires rezoning application to apply IDZ. Three intensity levels (Low, Medium, High) available at rezoning. Not auto-applied — invoked by applicant.
Areas around large traffic-generating facilities (Alamodome, Freeman Coliseum, Frost Bank Center vicinity, and other major event venues). Overlay applied by ordinance on a case-by-case basis around specific facilities; EP-1 is the primary established sub-district.
FEMA SFHA (Zone A / AE / AO) per FIRM panels 48029C for Bexar County / San Antonio geography. Principal floodplain features: San Antonio River corridor (central), Salado Creek, Leon Creek, Medina River (southwestern), Cibolo Creek (northeastern). Substantial portions of southern / southeastern SA within SFHA.
State preemptions
Adopted building codes
Home rule; major cities on 2024 IBC
Click a code label to open its state-by-state adoption atlas.
Amendment history
| Date | Kind | Citation |
|---|---|---|
| 2026-05-20 | retrieved at | Gap-closure pass: §35-517 per-district heights confirmed via the adopted Nov 2018 IDZ-MU/R-1/R-2 ordinance (Table 310-1 col L); MLOD-2 (Lackland) and MLOD-3 (Martindale) added per Ord 2018-02-08-0079 §§4–5 and Open Data SA MLOD dataset; RIO-2..RIO-7 sub-districts added per §35-338, §35-670–674, and Ord 2011-03-31-0240; EP-1 reframed per §35-339.02 (permit gate, not parking-ratio overlay); R-1/R-2 rear setback confirmed at 5 ft per adopted Table 310-1. MLOD-4 (Fort Sam Houston) gap dropped — no MLOD-4 ordinance found in primary sources. |
| 2026-04-19 | retrieved at | Research pass via prior IB565 / docsonline.sanantonio.gov primary source; Municode V1_URL_HINT attempted as SPA shell — retrieval_failure_reason: municode_js_spa |
| 2025-09-01 | effective | Texas SB 840 / SB 15 effective — state housing preemptions layered over Chapter 35 UDC |
| 2023-01-01 | effective | 234-amendment UDC update effective Jan 1, 2023 — most recent comprehensive overhaul of Chapter 35 |
| 2001-05-03 | adoption | Original UDC adopted by Ord. No. 93881, May 3, 2001 (Chapter 35 replacement of prior zoning ordinance) |
Quirks & notes
- DENSITY-ENCODED MF NAMING: SA is one of few US cities that encodes maximum dwellings-per-acre directly in MF district names. MF-18 = 18 du/ac, MF-25 = 25, MF-33 = 33, MF-40 = 40, MF-50 = 50, MF-65 = 65. MF-65 exists in code but is often missed in secondary-source research. Density-encoding is the single most useful fact for quick feasibility math on SA MF parcels. (§35-310.07 UDC; IB565)
- MINIMUM AND MAXIMUM FRONT SETBACK RULE: Most SA residential districts enforce BOTH a minimum AND a maximum front setback — buildings must sit within a prescribed zone, neither too close nor too far from the street. This is unusual in Texas (most TX cities regulate only a minimum). Table 310-1 Columns H and I express min and max respectively. SB 15 waives this on lots ≤ 4,000 sf. (UDC Table 310-1 Columns H/I)
- THREE MLOD SUB-DISTRICTS FOR THREE MILITARY INSTALLATIONS: MLOD-1 (Camp Bullis, est. 2008-12-11 by Ord. 2008-12-11-1133, amended 2018-02-08 by Ord. 2018-02-08-0079 with BUG/MLR-1/MLR-2 framework), MLOD-2 (Lackland AFB including Medina Annex, est. 2018-02-08 §5), MLOD-3 (Martindale Army Heliport, est. 2018). Often-misreported as 'four MLOD overlays for four JBSA installations' — that's a hallucination. JBSA-Randolph and Fort Sam Houston have AICUZ contours but NO MLOD lighting overlay. Nationally unusual nonetheless — three military lighting overlays in a single city is rare. MLOD imposes lighting (BUG ratings, lumens-per-SF, 4100K color temp, full cutoff). Federal preemption supremacy within MLOD overlay supersedes city standards; FAA Part 77 height surfaces (separate from MLOD) preempt SB 840 height floors near all 4 installation airfields. (§35-339.04 UDC; Ord. 2018-02-08-0079; Open Data SA MLOD dataset)
- UNESCO-INSCRIBED MISSIONS HISTORIC OVERLAY: The Missions Historic (MH) overlay protects a UNESCO World Heritage Site (San Antonio Missions, inscribed 2015) — four Spanish colonial missions along the Mission Reach of the San Antonio River. Buffer-zone management plan + local design review combine to constrain development in a corridor extending several miles south of downtown. Rare in US cities — only a handful have UNESCO-level historic preservation regimes. (§35-310 MH provisions; UNESCO 2015 inscription)
- RIO 1–7 CORRIDOR OVERLAY: Seven River Improvement Overlay sub-districts along distinct reaches of the San Antonio River. RIO-1 through RIO-3 cover central / downtown / Riverwalk; RIO-4 through RIO-7 cover Mission Reach and southern reaches. Each sub-district has distinct design / setback / use requirements. Ground-floor use and public-access provisions on central reaches. One of the most elaborate riverfront overlay schemes in the US. (§35-338 UDC)
- IDZ THREE-TIER FLEXIBILITY: IDZ (Infill Development Zone) offers Low / Medium / High intensity levels at rezoning — Low up to 18 du/ac (C-1/O-1 uses), Medium up to 50 du/ac (C-2/O-1.5), High unlimited du/ac (C-3/O-2/I-1). Flexible setbacks, no parking minimums for nonresidential. Principal SA mechanism for form-based / mixed-use infill within otherwise euclidean code. Applicant-invoked via rezoning — not auto-applied. (§35-343.01 UDC)
- DOWNTOWN (D) DISTRICT PERMISSIVENESS: Downtown has NO height limit, NO size limit, NO parking requirement — only a 30% ground-floor fenestration requirement. This is uniquely permissive — SA Downtown allows high-rise development with minimal zoning friction. SB 840's ≥45 ft height floor is subsumed / inoperative in D (already unlimited). (Table 310-1 Note 9 / Note 10 UDC)
- MF-to-SF ADJACENCY 40 FT REAR: When an MF district abuts a platted SF subdivision, the rear setback automatically increases from 10 ft (standard) to 40 ft. Parking must be ≥ 5 ft from rear fence. This creates a substantial deep-rear constraint on MF parcels along SF-adjacent blocks — consequential for site planning and can functionally cap feasible density below the code-nominal figure. (IB565 Column K note; Table 310-1)
- MF-40/50/65 STRUCTURED PARKING BONUS: 10% additional gross du/ac allowed when all required parking is in a structured garage; non-structured parking ≤ 20% of min spaces. Real-world effect: MF-65 with structured parking → effective 71.5 du/ac. One of few SA provisions encouraging structured parking; material on dense infill feasibility. (§35-310.07 UDC)
- MF LOT FRONTAGE ≥ 100 FT → MAX FRONT EXTENDS TO 90 FT: For MF parcels with frontage ≥ 100 ft, the maximum front setback extends from 20 ft (standard) to 90 ft, provided no parking/drives within 20 ft of property line. Enables courtyard-type or deep-setback MF on wide parcels — distinctive SA provision. (Table 310-1 Note 6 UDC)
- MILITARY RESERVATION (MR) DISTRICT EXCLUDES CITY ZONING: MR parcels (JBSA installations) are explicitly outside city zoning jurisdiction per V.T.C.A. LGC §211.013. City UDC does not apply on MR lands — federal and state law governs. Distinct from MLOD overlay which applies to adjacent civil parcels. (V.T.C.A. LGC §211.013; UDC MR provisions)
- §35-517 HEIGHT-BASED SETBACK INCREASE: §35-517(a) delegates per-district building height to Table 310-1 column L (NOT a separate height table — common misunderstanding). §35-517(d)(1) requires additional setback of 1 ft from side and rear setback lines per 2 ft of building height in excess of the Table 310-1 limit, capped by FAA Part 77 / AHOD where applicable. Per-district heights confirmed via Table 310-1: residential 35 ft; MF tiered (MF-18/25: 35 ft, MF-33: 45 ft, MF-40: 60 ft, MF-50/65: unlimited); commercial NC/C-1/C-2/O-1: 25 ft; O-1.5: 60 ft; C-3/L: 35 ft; I-1/I-2/O-2: 60 ft / unlimited; D: unlimited. (§35-517(a) and (d) UDC; Table 310-1 column L)
- LEGACY C-1/C-2 MF 33 DU/AC PROVISION: MF at 33 du/ac permitted in C-1, C-2, or C-2NA tracts converted from 1965 Code without subsequent rezoning. A legacy grandfathering provision — affects older commercial parcels with pre-UDC zoning lineage. (UDC legacy provision)
- 234 UDC AMENDMENTS EFFECTIVE JAN 1 2023: Most recent comprehensive Chapter 35 update bundled 234 amendments effective 2023-01-01. Verify any parameter against current UDC as secondary/tertiary amendments continue post-2023. (Chapter 35 UDC 2023 amendment package)
- SB 840 LAYERED OVER D/COMMERCIAL: SB 840 (effective 2025-09-01) mandates MF by-right on commercial/office/retail/warehouse/mixed-use parcels in cities ≥ 150k in counties ≥ 300k. SA qualifies (1.5M / 2.06M). In Downtown (D) district SB 840 is effectively moot (D already unlimited); material on C-1, C-2, C-3, O-1, O-1.5 parcels where ≥36 du/ac + ≥45 ft + ≤25 ft setback + ≤1 parking/unit now controls. MLOD / AHOD federal overlay carve-out retained within those footprints. (Texas SB 840 (88th Lege); §35-310 UDC)
- SB 15 LAYERED OVER SMALL-LOT RESIDENTIAL: SB 15 (effective 2025-09-01) waives setback / parking / height / FAR city regulation on lots ≤ 4,000 sf. Applies to R-4, RM-4, R-3, R-2, R-1 districts and any sub-4k lot citywide. Crucial waiver on SA's distinctive max-front-setback rule for small-lot infill — enables missing-middle housing without variance. (Texas SB 15 (88th Lege); Chapter 35 UDC Table 310-1)
- RETRIEVAL FALLBACK: V1_URL_HINT (library.municode.com/tx/san_antonio) is a known JS-rendered SPA blocker — empty shell on direct fetch. retrieval_failure_reason: municode_js_spa. Primary source used this pass was DSD IB565 (docsonline.sanantonio.gov), a municipally-hosted PDF District Dimensions Information Bulletin — authoritative for Table 310-1 dimensional content. Per-district height values are governed by §35-517 (not in Table 310-1 / IB565) — retrieved as partial status, confirm via full UDC §-fetch in follow-up pass. (V1_URL_HINT attempt 2026-04-19; IB565 fallback per orchestrator allowance)
Formulas
Definitions
- height
- Measured from grade to highest point of structure; governed by §35-517 (NOT Table 310-1)
- lot_coverage
- Principal building footprint / lot area
- far
- Gross floor area / lot area
- du_ac
- Dwelling units per gross acre; density-encoded in MF district codes (MF-18 = 18 du/ac max, etc.)
- setback_front_min
- Minimum distance from front property line to nearest building face (Table 310-1 Column H)
- setback_front_max
- MAXIMUM allowable front setback — SA distinctive rule, Table 310-1 Column I — building must be within this max unless exception applies
- setback_side
- Distance from side property line (or from residential-adjacent side); Note 2 eliminates commercial side setbacks when not abutting residential
- setback_rear
- Rear property line to nearest building face; MF-to-SF adjacency imposes 40-ft rear (see quirks)
- parking
- Minimum spaces per DU; MF-40/50/65 structured-parking bonus per §35-310.07
- aod_height_cap
- FAA Part 77 imaginary surface height limit on AHOD parcels (supersedes base)
Capacity calculations
- max_footprint_sf
lot_area_sf * lot_coverage- max_gfa_sf
lot_area_sf * far- buildable_width_ft
lot_width_ft - setback_side_ft * 2- buildable_depth_ft
lot_depth_ft - setback_front_ft - setback_rear_ft- max_stories_approx
max_height_ft / 10- mf_density_from_code
max_du_ac literally encoded in district name (MF-18 → 18 du/ac)- mf_structured_parking_bonus
MF-40/50/65: +10% gross du/ac when all required parking is in structured garage; non-structured parking ≤ 20% of min spaces (§35-310.07)- mf_to_sf_adjacency
Rear setback = 40 ft when MF district abuts platted SF subdivision (IB565 Column K)
Massing explorer
Interactive 3D comparison across every district. Drag to orbit, scroll to zoom, use the slider to walk districts, and toggle applicable overlays in the right-side panel.
| District | Category | Height | FAR | Coverage | Setbacks | Parking | Density | Min lot | Overlays |
|---|
Sources & references
Retrieval failure: municode_js_spa
- [1] Table 310-1 Column H; IB565
- [2] Table 310-1; IB565
- [3] Table 310-1
- [4] UDC Table 310-1; IB565
- [5] Table 310-1 column L; §35-517
- [6] Table 310-1; IB565
- [7] Table 310-1; IB565
- [8] Table 310-1; IB565
- [9] Table 310-1; IB565
- [10] Table 310-1 column L
- [11] Table 310-1; IB565
- [12] Table 310-1; IB565
- [13] Table 310-1; IB565
- [14] Table 310-1; IB565
- [15] Table 310-1 column L
- [16] Table 310-1; IB565
- [17] Table 310-1; IB565
- [18] Table 310-1; IB565
- [19] Table 310-1; IB565
- [20] Table 310-1 column L
- [21] Table 310-1; IB565
- [22] Table 310-1; IB565
- [23] Table 310-1; IB565
- [24] Table 310-1; IB565
- [25] Table 310-1 column L
- [26] Table 310-1; IB565
- [27] Table 310-1; IB565
- [28] Table 310-1; IB565
- [29] Table 310-1; IB565
- [30] Table 310-1 column L
- [31] Table 310-1
- [32] Table 310-1; IB565
- [33] Table 310-1; IB565
- [34] §35-310.05.a; Table 310-1; IB565
- [35] §35-310.05.a — 35 ft / 3 stories max
- [36] §35-310.05.a — coverage ≤70% per unit
- [37] §35-310.05.a — 1 space/DU; driveway max 12 ft
- [38] Table 310-1 column H (Ord. 2018-11-01)
- [39] Table 310-1 column J (Ord. 2018-11-01)
- [40] Table 310-1 column K (Ord. 2018-11-01 adopted Table 310-1 row for R-2)
- [41] Table 310-1 column B (per Ord. 2018-11-01 IDZ-MU/R-1/R-2 update; R-2 created 2018, min lot 2,000 sf, density 11 du/ac)
- [42] Table 310-1 column L; Table 310-1 Note 11
- [43] Table 310-1 column H (Ord. 2018-11-01)
- [44] Table 310-1 column J (Ord. 2018-11-01)
- [45] Table 310-1 column K (Ord. 2018-11-01 adopted Table 310-1 row for R-1)
- [46] Table 310-1 column B (per Ord. 2018-11-01 IDZ-MU/R-1/R-2 update; R-1 created 2018, min lot 1,250 sf, density 11 du/ac)
- [47] Table 310-1 column L; Table 310-1 Note 11
- [48] Chapter 35 NP provisions
- [49] Chapter 35 NP provisions
- [50] Chapter 35 NP provisions
- [51] Table 310-1; IB565
- [52] Table 310-1 Column J — may reduce per §35-373
- [53] Table 310-1; IB565
- [54] Table 310-1; IB565
- [55] Table 310-1 column L
- [56] Table 310-1; IB565
- [57] Table 310-1 Column J
- [58] Table 310-1; IB565
- [59] Table 310-1; IB565
- [60] Table 310-1 column L
- [61] Table 310-1; IB565
- [62] Table 310-1 Column J
- [63] Table 310-1; IB565
- [64] Table 310-1; IB565
- [65] Table 310-1 column L
- [66] Table 310-1; IB565
- [67] Table 310-1; IB565
- [68] Table 310-1; IB565 — 40 ft when abutting platted SF subdivision per Column K
- [69] Table 310-1; IB565
- [70] Table 310-1 column L
- [71] §35-310.07; density-encoded in code name
- [72] Table 310-1; IB565
- [73] Table 310-1; IB565
- [74] Table 310-1; IB565
- [75] Table 310-1; IB565
- [76] Table 310-1 column L
- [77] §35-310.07; density-encoded
- [78] Table 310-1; IB565
- [79] Table 310-1; IB565
- [80] Table 310-1; IB565
- [81] Table 310-1; IB565
- [82] Table 310-1 column L — MF-33 max height = 45 ft (steps up from MF-18/25 at 35 ft)
- [83] §35-310.07; density-encoded
- [84] Table 310-1; IB565
- [85] Table 310-1; IB565
- [86] Table 310-1; IB565
- [87] Table 310-1; IB565
- [88] Table 310-1 column L — MF-40 max height = 60 ft
- [89] §35-310.07; density-encoded — structured parking bonus +10% available
- [90] Table 310-1; IB565
- [91] Table 310-1; IB565
- [92] Table 310-1; IB565
- [93] Table 310-1; IB565
- [94] Table 310-1 column L — no height limit (em-dash) for MF-50
- [95] §35-310.07; structured parking bonus +10% available
- [96] Table 310-1; IB565
- [97] Table 310-1; IB565
- [98] Table 310-1; IB565
- [99] Table 310-1; IB565 — MF-65 exists, not widely documented in secondary sources
- [100] Table 310-1 column L — no height limit (em-dash) for MF-65
- [101] §35-310.07; density-encoded — SA's highest base MF
- [102] Table 310-1
- [103] Table 310-1 Note 2 — only when abutting residential
- [104] Table 310-1 Note 2
- [105] Table 310-1 column L — NC max height = 25 ft
- [106] Table 310-1; IB565
- [107] Table 310-1 Note 2
- [108] Table 310-1 Note 2
- [109] Table 310-1; IB565
- [110] Table 310-1 column L — C-1 max height = 25 ft
- [111] Table 310-1; IB565
- [112] Table 310-1 Note 2
- [113] Table 310-1 Note 2
- [114] Table 310-1 column L — C-2 max height = 25 ft
- [115] Table 310-1
- [116] Table 310-1 Note 2 — when abutting residential
- [117] Table 310-1 Note 2
- [118] Table 310-1 column L — C-3 max height = 35 ft
- [119] Table 310-1
- [120] Table 310-1 Note 2
- [121] Table 310-1 Note 2
- [122] Table 310-1; IB565
- [123] Table 310-1 column L — O-1 max height = 25 ft
- [124] Table 310-1
- [125] Table 310-1 Note 2
- [126] Table 310-1 Note 2
- [127] Table 310-1; IB565 — 60 ft max
- [128] Table 310-1 Note 2
- [129] Table 310-1 Note 2
- [130] Table 310-1 — no height limit
- [131] Table 310-1 Note 9 — no height limit
- [132] Table 310-1 Note 9 — parking waived
- [133] Table 310-1; IB565
- [134] Table 310-1 Note 2
- [135] Table 310-1 Note 2
- [136] Table 310-1 column L — I-1 max height = 60 ft
- [137] Table 310-1; IB565
- [138] Table 310-1 Note 2 — 50 ft when abutting residential
- [139] Table 310-1 Note 2
- [140] Table 310-1 column L — I-2 max height = 60 ft
Research status
Publication gates
| primary url present | passed | source.primary_url = https://library.municode.com/tx/san_antonio/codes/unified_development_code (municode, authoritative); fallback source docsonline.sanantonio.gov/FileUploads/DSD/IB565.pdf captured in source.fallback_source. https://-prefixed, not aggregator. |
|---|---|---|
| no aggregator cited | passed | Profile scan clean — no zoneomics/steadily/siteplanguide/sitedesignguide/siteplancreator/propwire/zonara/unzoned references. All citations to Chapter 35 UDC §-references, IB565, FEMA FIRM, FAA Part 77, USAF JBSA AICUZ, UNESCO, Texas session laws, Census PEP. |
| confidence tags full form | passed | 48/48 confirmed base-district + overlay fields carry {value, status, citation} structure with §-reference or Table-reference. 11 partial fields carry explicit reason. 3 not_captured/not_found fields carry reason. No bare [confirmed] tokens. |
| overlays have parameters trigger confidence | passed | 17/17 overlays (AHOD, MH, RIO-1, RIO-2, RIO-3, RIO-4, RIO-5, RIO-6, RIO-7, UC, MLOD-1, MLOD-2, MLOD-3, HS, IDZ, EP-1, FP) have non-empty params[] (5–11 entries each), populated trigger, status in {confirmed}, and §-citation. All 9 required overlay types represented: historic (MH, HS), floodplain (FP), environmental (ERZD via base district), airport (AHOD), military (MLOD-1/2/3), downtown (D district + IDZ High), corridor (RIO-1..7, UC/GC/MC/PC), affordable/bonus (SB 840 handled via preemption entry), and special-event/facility-parking (EP-1). |
| preempt section city specific | passed | state_preemptions_applicable[] has 3 entries (SB 840, SB 15, JBSA AICUZ federal_state_conflict) each with qualifying_condition_checked containing numeric inputs (city pop 1,495,295; county pop 2,059,530; vintage 2024 PEP; thresholds ≥150k / ≥300k / ≤4,000 sf). SB 840 arithmetic shows explicit threshold comparison. Federal overlay entry uses status: federal_state_conflict with federal_overlay_refs populated per FM-P discipline. Not link-stubs. |
Data quality
- R-1 / R-2 front and side setbacks: current JSON values may conflict with Table 310-1 col H/J (10 / 5) — needs reconciliation with subsequent UDC amendments
- EP sub-district enumeration beyond EP-1: framework supports EP-2 etc. but only EP-1 confirmed in primary search
- RIO-7a / RIO-7b explicit foot-height caps: Table 674-3 lists 'unlimited' stories without a ft value — confirm whether base district caps apply
Known issues
Verification
| last_verified_at | 2026-05-20T00:00:00Z |
|---|---|
| verifier_specialist | spec-09 verification-pass + 2026-05-20 gap-closure pass |
| verifier_version | 1.1 |
| verification_result | passed |
| atomic_claims_checked | 78 |
| atomic_claims_confirmed | 73 |
| atomic_claims_partial | 3 |
| atomic_claims_inferred | 0 |
| atomic_claims_not_found | 2 |
| pass_rate | 0.974 |
| notes | 2026-05-20 gap-closure pass: per-district max_height_ft values confirmed via the adopted Table 310-1 column L (from Nov 2018 IDZ-MU/R-1/R-2 ordinance), with the §35-517 hand-off rule clarified (§35-517(a) delegates height to Table 310-1; only §35-517(d) setback-for-height ratio is freestanding). All 17 base-district height-partial entries promoted to confirmed. R-1 and R-2 rear setback confirmed at 5 ft per Table 310-1 columns K. MLOD overlay enumeration corrected per primary sources: MLOD-1 (Camp Bullis), MLOD-2 (Lackland AFB), MLOD-3 (Martindale Army Heliport) — total of THREE MLOD sub-districts, not four. Previous JSON claim of MLOD-4 (Fort Sam Houston) was unsupported by Ord. 2018-02-08-0079, Open Data SA MLOD dataset, or any Bexar legistar record found in primary-source search; MLOD-4 dropped from record. RIO sub-districts 2 through 7 added with per-sub-district setback / coverage / planting / height-step-back parameters per §35-338 and §35-674 Tables 672-1a/b, 673-1a/b, 673-2, 674-3. EP-1 reframed per §35-339.02: permit-based commercial-parking-lot regulation, not per-unit/per-seat parking-ratio overlay; previous 'parking ratio' framing was a misread. 2 remaining not_found atoms: (a) MLOD-4 (no MLOD-4 ordinance exists per primary search — gap closed by removal, not by data); (b) RIO-7a / RIO-7b explicit foot-height ceilings (these sub-sub-districts have unlimited stories per Table 674-3 but no foot value). |
| narrative_ref | narratives/san-antonio-tx/fleet-20260419T210455-13.json |
Other cities in this state
Nearest-alphabetical profiles. Click through to compare zoning patterns side-by-side.