Overview
South San Francisco's 2022 Zoning Code operates as a hybrid: Division II covers conventional Euclidean districts (RL, RM, RH, CC, BPO, BTP, MIM, MIH, downtown districts) with density-encoded numbering in residential codes; Division III introduces a Form-Based Code for transect districts (T3N, T3C, T4C, T4M, T5C, T6UC) in key walkable corridors. The GIS map also shows Lindenville Specific Plan sub-districts (T3ML, T4L, T5L) which adopt the form-based framework. Classified as rewrite-in-flight because the code transitioned from an older ordinance system to this 2022 rewrite with coexisting conventional and form-based districts. | sub_flags_raw=[form-based, euclidean]
- South San Francisco's 2022 Zoning Code is a full code rewrite with two coexisting coding systems: Division II (Euclidean conventional districts) and Division III (Form-Based Code transect districts for key corridors and the Lindenville Specific Plan area). The GIS zoning map shows T3ML, T4L, and T5L codes specific to Lindenville that are not in the Division III chapter — these are Lindenville Specific Plan sub-district designations adopting form-based rules.
- SSF is immediately adjacent to San Francisco International Airport (SFO). The San Francisco ALUCP governs height limits in BPO, BTP-H/M, ETC, T6UC, and other eastern districts — no fixed height is stated in the zoning table for those zones; ALUCP Exhibit IV-11 governs on a parcel-by-parcel basis. Any development requiring an FAA Form 7460-1 must file before permit issuance per §20.300.003.
- The numerical designators in RL, RM, and RH district codes encode the MAXIMUM density in du/ac (e.g., RL-2.2 = 2.2 du/ac max, RH-180 = 180 du/ac max). This is density-encoded naming per §20.020.001 footnote. Downtown residential districts (DRL, DRM, DRH) carry density constraints but do NOT use density-encoded naming — they use descriptive names.
+ 4 more in Quirks & notes
Districts
| Code | Name | Category | Min lot | Height | Coverage | FAR | Du/ac | Parking | Setbacks F/S/R |
|---|---|---|---|---|---|---|---|---|---|
| RL-2.2 | Low Density Residential — Large Lot | res_sf | 32,600 sf[4] | 30 ft[5] | 40[6] | 0.5[7] | 2.2[8] | — | 10[1] / 10[2] / 20[3] |
| RL-8 | Low Density Residential | res_sf | 5,000 sf[12] | 28 ft[13] | 50[14] | 0.5[15] | 8[16] | — | 10[9] / 5[10] / 15[11] |
| RM-22 | Medium Density Residential | res_mf | 5,000 sf[20] | 35 ft[21] | 50[22] | 1[23] | 22[24] | — | 10[17] / 5[18] / 15[19] |
| RH-37.5 | High Density Residential | res_mf | 5,000 sf[28] | 50 ft[29] | 65[30] | — | 37.5[31] | — | 10[25] / 5[26] / 5[27] |
| RH-50 | High Density Residential | res_mf | 5,000 sf[35] | 50 ft[36] | 65[37] | — | 50[38] | — | 10[32] / 5[33] / 5[34] |
| RH-180 | High Density Residential — Tower | res_mf | 20,000 sf[42] | 85 ft[43] | 85[44] | — | 180[45] | — | 0[39] / 5[40] / 5[41] |
| DRL | Downtown Residential — Low | res_mf | 2,750 sf[49] | 28 ft[50] | 80[51] | 0.7[52] | 22[53] | — | 15[46] / 5[47] / 20[48] |
| DRM | Downtown Residential — Medium | res_mf | 2,500 sf[57] | 35 ft[58] | 90[59] | 1.25[60] | 37.5[61] | — | 15[54] / 5[55] / 20[56] |
| DRH | Downtown Residential — High | res_mf | 2,250 sf[65] | 50 ft[66] | 90[67] | — | 50[68] | — | 15[62] / 5[63] / 10[64] |
| DRC | Downtown Residential Core | res_mf | 5,000 sf[72] | 65 ft[73] | 90[74] | 0.5[75] | 125[76] | — | 0[69] / 0[70] / 20[71] |
| LNC | Linden Neighborhood Center | com | 5,000 sf[80] | 50 ft[81] | 90[82] | 3[83] | 80[84] | — | 0[77] / 0[78] / 0[79] |
| GAC | Grand Avenue Core | com | 5,000 sf[88] | 65 ft[89] | 100[90] | 4[91] | 100[92] | — | 0[85] / 0[86] / 0[87] |
| DTC | Downtown Transit Core | com | 5,000 sf[96] | 85 ft[97] | 100[98] | 8[99] | 180[100] | — | 0[93] / 0[94] / 0[95] |
| ETC | East Transit Core | com | 10,000 sf[104] | —[105] | 85[106] | 8[107] | 200[108] | — | 0[101] / 0[102] / 0[103] |
| CC | Community Commercial | com | 5,000 sf[112] | 50 ft[113] | 50[114] | 0.5[115] | — | — | 10[109] / 0[110] / 0[111] |
| BPO | Business and Professional Office | off | 15,000 sf[119] | —[120] | 70[121] | 2.5[122] | — | — | 10[116] / 10[117] / 10[118] |
| BTP-M | Business Technology Park — Medium | ind | 10,000 sf[126] | —[127] | 60[128] | 1[129] | — | — | 20[123] / 0[124] / 0[125] |
| BTP-H | Business Technology Park — High | ind | 10,000 sf[133] | —[134] | 60[135] | 2[136] | — | — | 20[130] / 0[131] / 0[132] |
| MIM | Mixed Industrial — Medium | ind | 10,000 sf[140] | 65 ft[141] | —[142] | 1[143] | — | — | 20[137] / 0[138] / 0[139] |
| MIH | Mixed Industrial — High | ind | 10,000 sf[147] | 65 ft[148] | —[149] | 2[150] | — | — | 20[144] / 0[145] / 0[146] |
| T3N | T3 Neighborhood | spec | — | 35 ft[154] | — | 2.25[155] | 60[156] | — | 10[151] / 5[152] / 5[153] |
| T3C | T3 Corridor | spec | — | 50 ft[160] | 65[161] | 2.25[162] | 60[163] | — | 0[157] / 0[158] / 0[159] |
| T4C | T4 Corridor | spec | — | 65 ft[167] | 70[168] | 3.5[169] | 120[170] | — | 40[164] / 0[165] / 0[166] |
| T4M | T4 Maker | spec | — | 65 ft[174] | — | 3[175] | 120[176] | — | 0[171] / 0[172] / 0[173] |
| T5C | T5 Corridor | spec | — | 85 ft[180] | 80[181] | 5[182] | 140[183] | — | 0[177] / 0[178] / 0[179] |
| T6UC | T6 Urban Core | spec | — | —[187] | 90[188] | 8[189] | 200[190] | — | 0[184] / 0[185] / 0[186] |
| PQP | Public / Quasi-Public | spec | —[191] | —[192] | — | — | — | — | — / — / — |
| PR | Parks and Recreation | spec | — | —[193] | — | — | — | — | — / — / — |
| OS | Open Space | spec | — | —[194] | — | — | — | — | — / — / — |
| PD | Planned Development | spec | — | —[195] | — | — | — | — | — / — / — |
Confidence: confirmed partial under review not found
Overlays
All areas shown on the Floodplain/Sea Level Rise Overlay Map adopted as part of the Zoning Ordinance, co-extensive with FEMA FIRM Special Flood Hazard Areas and projected sea level rise zones.
| elevation_standard | Lowest building finished floor elevation must be at or above the Sea Level Rise Base Flood Elevation (SLR-BFE) as defined in §20.180.005.B |
|---|---|
| prohibited_below_slr_bfe | Habitable spaces prohibited below SLR-BFE unless wholly protected |
| allowed_below_slr_bfe | Parking only permitted below SLR-BFE |
| lighting | All lighting within the overlay must be low-impact consistent with §20.180 |
| boundary_amendment | Boundaries update automatically with FEMA FIRM Map revisions and SLR projections per §20.020.002 |
Areas designated on the Special Environmental Studies Overlay Map, covering sites with potential seismic, geologic, or biological resource hazards.
| applicability | Environmental studies required for development within overlay boundaries |
|---|---|
| habitat_conservation | Biological resource conservation areas subject to additional review |
| seismic_geologic | Seismic and geologic hazard areas subject to study requirements per §20.175.004 |
State preemptions
Non-applicable laws (2)
Adopted building codes
Statewide mandatory minimum
Click a code label to open its state-by-state adoption atlas.
Amendment history
| Date | Kind | Citation |
|---|---|---|
| 2022-10 | adoption | SSF Zoning Code Update cover page: 'Adopted October 2022' |
Quirks & notes
- South San Francisco's 2022 Zoning Code is a full code rewrite with two coexisting coding systems: Division II (Euclidean conventional districts) and Division III (Form-Based Code transect districts for key corridors and the Lindenville Specific Plan area). The GIS zoning map shows T3ML, T4L, and T5L codes specific to Lindenville that are not in the Division III chapter — these are Lindenville Specific Plan sub-district designations adopting form-based rules.
- SSF is immediately adjacent to San Francisco International Airport (SFO). The San Francisco ALUCP governs height limits in BPO, BTP-H/M, ETC, T6UC, and other eastern districts — no fixed height is stated in the zoning table for those zones; ALUCP Exhibit IV-11 governs on a parcel-by-parcel basis. Any development requiring an FAA Form 7460-1 must file before permit issuance per §20.300.003.
- The numerical designators in RL, RM, and RH district codes encode the MAXIMUM density in du/ac (e.g., RL-2.2 = 2.2 du/ac max, RH-180 = 180 du/ac max). This is density-encoded naming per §20.020.001 footnote. Downtown residential districts (DRL, DRM, DRH) carry density constraints but do NOT use density-encoded naming — they use descriptive names.
- SSF Caltrain station (Downtown) and BART station qualify as major transit stops triggering AB 2097 parking elimination within ½ mile — covering most of the downtown DRC, LNC, GAC, DTC, DRL, DRM, DRH zones. The Downtown/Caltrain Station Area chapter (§20.090) confirms this is the city's planned TOD growth area.
- The Sea Level Rise / Floodplain (SLR) Overlay is an active local environmental overlay distinct from a standard FEMA FP overlay — it incorporates both FEMA FIRM SFHA boundaries AND projected sea level rise zones into one combined overlay map. §20.180 governs; boundaries update with FEMA map revisions.
- The GIS FeatureServer endpoint uses org ID inY93B27l4TSbT7h on services5.arcgis.com (not the generic services.arcgis.com). The ArcGIS item ID is 7465c3cf45984c328a80d669c59ceb9f available at data-southcity.opendata.arcgis.com.
- The wrong GIS endpoint in the GitHub issue (maps.belmont.gov) serves City of Belmont zoning polygons, not South San Francisco. Despite SSF and Belmont being adjacent San Mateo County cities (centroid delta < 1.5°), the source jurisdiction is different. The correct endpoint is the SSF Open Data Portal FeatureServer.
Formulas
Definitions
- height
- Measured from the average contact ground level of the building to the highest point of the coping of a flat roof, or to the average height of the highest gable of a pitch or hip roof. §20.040 Rules of Measurement.
- density
- Dwelling units per net acre. Numerical designators in district codes denote maximum density (e.g., RL-8 = 8 du/ac max). §20.070.003 Table Note.
- setback
- Distance measured from the property line or right-of-way line to the nearest structure or building wall. §20.040.
- far
- Ratio of total building floor area to site area, excluding below-grade parking and other excluded elements per §20.040.
- lot_coverage
- Maximum buildable lot footprint area as a percentage of total lot area. §20.040.
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
- [1] §20.070.003 Table 20.070.003
- [2] §20.070.003 Table 20.070.003
- [3] §20.070.003 Table 20.070.003
- [4] §20.070.003 Table 20.070.003
- [5] §20.070.003 Table 20.070.003
- [6] §20.070.003 Table 20.070.003
- [7] §20.070.003 Table 20.070.003
- [8] §20.070.003 Table 20.070.003
- [9] §20.070.003 Table 20.070.003
- [10] §20.070.003 Table 20.070.003
- [11] §20.070.003 Table 20.070.003
- [12] §20.070.003 Table 20.070.003
- [13] §20.070.003 Table 20.070.003
- [14] §20.070.003 Table 20.070.003
- [15] §20.070.003 Table 20.070.003
- [16] §20.070.003 Table 20.070.003
- [17] §20.070.003 Table 20.070.003
- [18] §20.070.003 Table 20.070.003
- [19] §20.070.003 Table 20.070.003
- [20] §20.070.003 Table 20.070.003
- [21] §20.070.003 Table 20.070.003
- [22] §20.070.003 Table 20.070.003
- [23] §20.070.003 Table 20.070.003
- [24] §20.070.003 Table 20.070.003
- [25] §20.070.003 Table 20.070.003
- [26] §20.070.003 Table 20.070.003
- [27] §20.070.003 Table 20.070.003
- [28] §20.070.003 Table 20.070.003
- [29] §20.070.003 Table 20.070.003
- [30] §20.070.003 Table 20.070.003
- [31] §20.070.003 Table 20.070.003
- [32] §20.070.003 Table 20.070.003
- [33] §20.070.003 Table 20.070.003
- [34] §20.070.003 Table 20.070.003
- [35] §20.070.003 Table 20.070.003
- [36] §20.070.003 Table 20.070.003
- [37] §20.070.003 Table 20.070.003
- [38] §20.070.003 Table 20.070.003
- [39] §20.070.003 Table 20.070.003
- [40] §20.070.003 Table 20.070.003
- [41] §20.070.003 Table 20.070.003
- [42] §20.070.003 Table 20.070.003
- [43] §20.070.003 Table 20.070.003
- [44] §20.070.003 Table 20.070.003
- [45] §20.070.003 Table 20.070.003
- [46] §20.080.003 Table 20.080.003
- [47] §20.080.003 Table 20.080.003
- [48] §20.080.003 Table 20.080.003
- [49] §20.080.003 Table 20.080.003
- [50] §20.080.003 Table 20.080.003
- [51] §20.080.003 Table 20.080.003
- [52] §20.080.003 Table 20.080.003
- [53] §20.080.003 Table 20.080.003
- [54] §20.080.003 Table 20.080.003
- [55] §20.080.003 Table 20.080.003
- [56] §20.080.003 Table 20.080.003
- [57] §20.080.003 Table 20.080.003
- [58] §20.080.003 Table 20.080.003
- [59] §20.080.003 Table 20.080.003
- [60] §20.080.003 Table 20.080.003
- [61] §20.080.003 Table 20.080.003
- [62] §20.080.003 Table 20.080.003
- [63] §20.080.003 Table 20.080.003
- [64] §20.080.003 Table 20.080.003
- [65] §20.080.003 Table 20.080.003
- [66] §20.080.003 Table 20.080.003
- [67] §20.080.003 Table 20.080.003
- [68] §20.080.003 Table 20.080.003
- [69] §20.090.003 Table 20.090.003
- [70] §20.090.003 Table 20.090.003
- [71] §20.090.003 Table 20.090.003
- [72] §20.090.003 Table 20.090.003
- [73] §20.090.003 Table 20.090.003
- [74] §20.090.003 Table 20.090.003
- [75] §20.090.003 Table 20.090.003
- [76] §20.090.003 Table 20.090.003
- [77] §20.090.003 Table 20.090.003
- [78] §20.090.003 Table 20.090.003
- [79] §20.090.003 Table 20.090.003
- [80] §20.090.003 Table 20.090.003
- [81] §20.090.003 Table 20.090.003
- [82] §20.090.003 Table 20.090.003
- [83] §20.090.003 Table 20.090.003
- [84] §20.090.003 Table 20.090.003
- [85] §20.090.003 Table 20.090.003
- [86] §20.090.003 Table 20.090.003
- [87] §20.090.003 Table 20.090.003
- [88] §20.090.003 Table 20.090.003
- [89] §20.090.003 Table 20.090.003
- [90] §20.090.003 Table 20.090.003
- [91] §20.090.003 Table 20.090.003
- [92] §20.090.003 Table 20.090.003
- [93] §20.090.003 Table 20.090.003
- [94] §20.090.003 Table 20.090.003
- [95] §20.090.003 Table 20.090.003
- [96] §20.090.003 Table 20.090.003
- [97] §20.090.003 Table 20.090.003
- [98] §20.090.003 Table 20.090.003
- [99] §20.090.003 Table 20.090.003
- [100] §20.090.003 Table 20.090.003
- [101] §20.090.003 Table 20.090.003
- [102] §20.090.003 Table 20.090.003
- [103] §20.090.003 Table 20.090.003
- [104] §20.090.003 Table 20.090.003
- [105] §20.090.003 Table 20.090.003
- [106] §20.090.003 Table 20.090.003
- [107] §20.090.003 Table 20.090.003
- [108] §20.090.003 Table 20.090.003
- [109] §20.100.003 Table 20.100.003(A)
- [110] §20.100.003 Table 20.100.003(A)
- [111] §20.100.003 Table 20.100.003(A)
- [112] §20.100.003 Table 20.100.003(A)
- [113] §20.100.003 Table 20.100.003(A)
- [114] §20.100.003 Table 20.100.003(A)
- [115] §20.100.003 Table 20.100.003(A)
- [116] §20.100.003 Table 20.100.003(A)
- [117] §20.100.003 Table 20.100.003(A)
- [118] §20.100.003 Table 20.100.003(A)
- [119] §20.100.003 Table 20.100.003(A)
- [120] §20.100.003 Table 20.100.003(A)
- [121] §20.100.003 Table 20.100.003(A)
- [122] §20.100.003 Table 20.100.003(A)
- [123] §20.100.003 Table 20.100.003(A)
- [124] §20.100.003 Table 20.100.003(A)
- [125] §20.100.003 Table 20.100.003(A)
- [126] §20.100.003 Table 20.100.003(A)
- [127] §20.100.003 Table 20.100.003(A)
- [128] §20.100.003 Table 20.100.003(A)
- [129] §20.100.003 Table 20.100.003(A)
- [130] §20.100.003 Table 20.100.003(A)
- [131] §20.100.003 Table 20.100.003(A)
- [132] §20.100.003 Table 20.100.003(A)
- [133] §20.100.003 Table 20.100.003(A)
- [134] §20.100.003 Table 20.100.003(A)
- [135] §20.100.003 Table 20.100.003(A)
- [136] §20.100.003 Table 20.100.003(A)
- [137] §20.100.003 Table 20.100.003(A)
- [138] §20.100.003 Table 20.100.003(A)
- [139] §20.100.003 Table 20.100.003(A)
- [140] §20.100.003 Table 20.100.003(A)
- [141] §20.100.003 Table 20.100.003(A)
- [142] §20.100.003 Table 20.100.003(A)
- [143] §20.100.003 Table 20.100.003(A)
- [144] §20.100.003 Table 20.100.003(A)
- [145] §20.100.003 Table 20.100.003(A)
- [146] §20.100.003 Table 20.100.003(A)
- [147] §20.100.003 Table 20.100.003(A)
- [148] §20.100.003 Table 20.100.003(A)
- [149] §20.100.003 Table 20.100.003(A)
- [150] §20.100.003 Table 20.100.003(A)
- [151] §20.135.020.D Form-Based Code
- [152] §20.135.020.D Form-Based Code
- [153] §20.135.020.D Form-Based Code
- [154] §20.135.020.D Form-Based Code
- [155] §20.135.020.D Form-Based Code
- [156] §20.135.020.D Form-Based Code
- [157] §20.135.020.E Form-Based Code
- [158] §20.135.020.E Form-Based Code
- [159] §20.135.020.E Form-Based Code
- [160] §20.135.020.E Form-Based Code
- [161] §20.135.020.E Form-Based Code
- [162] §20.135.020.E Form-Based Code
- [163] §20.135.020.E Form-Based Code
- [164] §20.135.020.F Form-Based Code
- [165] §20.135.020.F Form-Based Code
- [166] §20.135.020.F Form-Based Code
- [167] §20.135.020.F Form-Based Code
- [168] §20.135.020.F Form-Based Code
- [169] §20.135.020.F Form-Based Code
- [170] §20.135.020.F Form-Based Code
- [171] §20.135.020.G Form-Based Code
- [172] §20.135.020.G Form-Based Code
- [173] §20.135.020.G Form-Based Code
- [174] §20.135.020.G Form-Based Code
- [175] §20.135.020.G Form-Based Code
- [176] §20.135.020.G Form-Based Code
- [177] §20.135.020.H Form-Based Code
- [178] §20.135.020.H Form-Based Code
- [179] §20.135.020.H Form-Based Code
- [180] §20.135.020.H Form-Based Code
- [181] §20.135.020.H Form-Based Code
- [182] §20.135.020.H Form-Based Code
- [183] §20.135.020.H Form-Based Code
- [184] §20.135.020.I Form-Based Code
- [185] §20.135.020.I Form-Based Code
- [186] §20.135.020.I Form-Based Code
- [187] §20.135.020.I Form-Based Code
- [188] §20.135.020.I Form-Based Code
- [189] §20.135.020.I Form-Based Code
- [190] §20.135.020.I Form-Based Code
- [191] §20.110
- [192] §20.110
- [193] §20.115
- [194] §20.115
- [195] §20.120
Research status
Publication gates
| primary url present | passed | https://southsanfranciscoca.prelive.opencities.com/files/assets/public/v/1/city-manager/documents/zoning-code.pdf |
|---|---|---|
| no aggregator cited | passed | scan clean — no zoneomics, steadily, siteplanguide, sitedesignguide, siteplancreator, propwire, zonara, unzoned references |
| confidence tags full form | passed | 29 confirmed district records carry §-citations (§20.070.003, §20.080.003, §20.090.003, §20.100.003, §20.135.020.D-I); partial fields carry paired companion fields |
| overlays have parameters trigger confidence | passed | 2 overlays (SLR, ES) each have non-empty params, trigger, and §-citation; federal overlay (SFO ALUCP) documented in federal_overlay_refs per FM-P |
| preempt section city specific | passed | 8 CA preemption laws with city-specific qualifying_condition_checked including numeric inputs (pop=64,549), HCD tier data (50% SB423 tier, HE reviewed 2023-11-20), transit station confirmation (SSF Caltrain + BART), and code table cross-references |
Data quality
- T6UC, ETC, BPO, BTP-H/M height limits deferred to SFO ALUCP on a per-parcel basis — fixed ft values not available without ALUCP Exhibit IV-11 GIS lookup
- Lindenville Specific Plan sub-district codes (T3ML, T4L, T5L) appear in GIS map but their specific standards are within a separate Lindenville Specific Plan document not accessible during this research pass
- PQP/PR/OS/S/S-C district dimensional standards not fully captured — these are use-based public facility zones with limited tabular dimensional standards
- GMP (Genentech Master Plan District) standards are in a separate Master Plan document, not in the base code tables
Verification
| last_verified_at | 2026-06-01T00:00:00Z |
|---|---|
| verifier_specialist | gisrepair-w1 |
| verifier_version | 1.0 |
| verification_result | passed |
Other cities in this state
Nearest-alphabetical profiles. Click through to compare zoning patterns side-by-side.