In Major US Seismic Zones, Roughly Half the Local Housing Stock Predates 1980-Era Seismic Codes — With Sharp Variation by County
ACS 2019-2023 5-year estimates, 12 counties across the San Andreas/Hayward, Cascadia/Puget Sound, Wasatch, New Madrid and Charleston seismic zones
Summary
There is no single national figure, because the answer depends sharply on which county and which building-code milestone you use as "modern." Using 1980 as a common reference point for when seismic design provisions began meaningfully tightening in the highest-hazard states (the 1976 Uniform Building Code seismic update, phased in over the following years, and the cutoff California cities use in their own mandatory retrofit ordinances), half of the 12 major high-seismic counties examined here have a MEDIAN housing-unit build year before 1980 — meaning more than half of their occupied housing stock predates that modernization point. San Francisco is the most extreme case (median year built 1945; independently published Census-derived estimates put ~81% of its units pre-1980), followed by Los Angeles (median 1965, ~75% pre-1980 per published estimates), Alameda (1969), Portland/Multnomah (1971), Santa Clara (1975) and Memphis/Shelby (1977). By contrast, faster-growing seismic-risk counties — Anchorage, San Bernardino, Seattle/King, Salt Lake, Riverside, and Charleston — have median build years in the 1980s-1990s, meaning less than half of their stock predates 1980, though many still carry meaningful pockets of vulnerable pre-code construction (masonry, unretrofitted soft-story buildings) concentrated in older urban cores.
What "modern building code" means here, and why it's not one date
Seismic building-code modernization did not happen on a single national date — it is a series of regional and national milestones: California's Field Act (1933, schools/hospitals only), the 1976 Uniform Building Code seismic revisions (phased in through the late 1970s and used as the practical "pre-1980" cutoff by most West Coast retrofit ordinances — San Francisco's and Los Angeles's mandatory soft-story/masonry retrofit programs both use buildings permitted before January 1, 1978 as their trigger), the post-1994 Northridge earthquake revisions to steel and wood-frame design, and the International Building Code's national seismic provisions adopted broadly around 2000. This answer uses 1980 as the reference year because it is the threshold most West Coast seismic-retrofit policy already uses operationally, and states that choice explicitly rather than treating "modern code" as a single fixed date.
Directly queried: median year built by county (askamerica connector)
Using census.acs_housing_tenure (ACS 2019-2023 5-year estimates, county grain), the median year housing structures were built in 12 counties spanning the country's principal seismic hazard zones:
| San Francisco, CA | San Andreas / Hayward | 1945 | 362,650 | Yes |
| Los Angeles, CA | San Andreas / Puente Hills | 1965 | 3,390,254 | Yes |
| Alameda, CA | Hayward Fault | 1969 | 593,117 | Yes |
| Multnomah, OR (Portland) | Cascadia Subduction Zone | 1971 | 347,392 | Yes |
| Santa Clara, CA | San Andreas / Calaveras | 1975 | 654,467 | Yes |
| Shelby, TN (Memphis) | New Madrid Seismic Zone | 1977 | 360,590 | Yes (borderline) |
| Anchorage, AK | Alaska subduction zone | 1982 | 107,868 | No (borderline) |
| San Bernardino, CA | San Andreas | 1983 | 668,004 | No |
| King, WA (Seattle) | Cascadia / Seattle Fault | 1983 | 927,817 | No |
| Salt Lake, UT | Wasatch Fault | 1985 | 416,589 | No |
| Riverside, CA | San Andreas / San Jacinto | 1990 | 762,234 | No |
| Charleston, SC | Charleston Seismic Zone | 1991 | 175,499 | No |
| Alameda, CA | Hayward Fault | 1969 | 593,117 | Yes |
| Anchorage, AK | Alaska subduction zone | 1982 | 107,868 | No (borderline) |
| Charleston, SC | Charleston Seismic Zone | 1991 | 175,499 | No |
| King, WA (Seattle) | Cascadia / Seattle Fault | 1983 | 927,817 | No |
| Los Angeles, CA | San Andreas / Puente Hills | 1965 | 3,390,254 | Yes |
| Multnomah, OR (Portland) | Cascadia Subduction Zone | 1971 | 347,392 | Yes |
| Riverside, CA | San Andreas / San Jacinto | 1990 | 762,234 | No |
| Salt Lake, UT | Wasatch Fault | 1985 | 416,589 | No |
| San Bernardino, CA | San Andreas | 1983 | 668,004 | No |
| San Francisco, CA | San Andreas / Hayward | 1945 | 362,650 | Yes |
| Santa Clara, CA | San Andreas / Calaveras | 1975 | 654,467 | Yes |
| Shelby, TN (Memphis) | New Madrid Seismic Zone | 1977 | 360,590 | Yes (borderline) |
| Anchorage, AK | Alaska subduction zone | 1982 | 107,868 | No (borderline) |
| King, WA (Seattle) | Cascadia / Seattle Fault | 1983 | 927,817 | No |
| Multnomah, OR (Portland) | Cascadia Subduction Zone | 1971 | 347,392 | Yes |
| Charleston, SC | Charleston Seismic Zone | 1991 | 175,499 | No |
| Alameda, CA | Hayward Fault | 1969 | 593,117 | Yes |
| Shelby, TN (Memphis) | New Madrid Seismic Zone | 1977 | 360,590 | Yes (borderline) |
| San Bernardino, CA | San Andreas | 1983 | 668,004 | No |
| Santa Clara, CA | San Andreas / Calaveras | 1975 | 654,467 | Yes |
| San Francisco, CA | San Andreas / Hayward | 1945 | 362,650 | Yes |
| Los Angeles, CA | San Andreas / Puente Hills | 1965 | 3,390,254 | Yes |
| Riverside, CA | San Andreas / San Jacinto | 1990 | 762,234 | No |
| Salt Lake, UT | Wasatch Fault | 1985 | 416,589 | No |
| Charleston, SC | Charleston Seismic Zone | 1991 | 175,499 | No |
| Riverside, CA | San Andreas / San Jacinto | 1990 | 762,234 | No |
| Salt Lake, UT | Wasatch Fault | 1985 | 416,589 | No |
| San Bernardino, CA | San Andreas | 1983 | 668,004 | No |
| King, WA (Seattle) | Cascadia / Seattle Fault | 1983 | 927,817 | No |
| Anchorage, AK | Alaska subduction zone | 1982 | 107,868 | No (borderline) |
| Shelby, TN (Memphis) | New Madrid Seismic Zone | 1977 | 360,590 | Yes (borderline) |
| Santa Clara, CA | San Andreas / Calaveras | 1975 | 654,467 | Yes |
| Multnomah, OR (Portland) | Cascadia Subduction Zone | 1971 | 347,392 | Yes |
| Alameda, CA | Hayward Fault | 1969 | 593,117 | Yes |
| Los Angeles, CA | San Andreas / Puente Hills | 1965 | 3,390,254 | Yes |
| San Francisco, CA | San Andreas / Hayward | 1945 | 362,650 | Yes |
| Los Angeles, CA | San Andreas / Puente Hills | 1965 | 3,390,254 | Yes |
| King, WA (Seattle) | Cascadia / Seattle Fault | 1983 | 927,817 | No |
| Riverside, CA | San Andreas / San Jacinto | 1990 | 762,234 | No |
| San Bernardino, CA | San Andreas | 1983 | 668,004 | No |
| Santa Clara, CA | San Andreas / Calaveras | 1975 | 654,467 | Yes |
| Alameda, CA | Hayward Fault | 1969 | 593,117 | Yes |
| Salt Lake, UT | Wasatch Fault | 1985 | 416,589 | No |
| San Francisco, CA | San Andreas / Hayward | 1945 | 362,650 | Yes |
| Shelby, TN (Memphis) | New Madrid Seismic Zone | 1977 | 360,590 | Yes (borderline) |
| Multnomah, OR (Portland) | Cascadia Subduction Zone | 1971 | 347,392 | Yes |
| Charleston, SC | Charleston Seismic Zone | 1991 | 175,499 | No |
| Anchorage, AK | Alaska subduction zone | 1982 | 107,868 | No (borderline) |
| San Bernardino, CA | San Andreas | 1983 | 668,004 | No |
| King, WA (Seattle) | Cascadia / Seattle Fault | 1983 | 927,817 | No |
| Salt Lake, UT | Wasatch Fault | 1985 | 416,589 | No |
| Riverside, CA | San Andreas / San Jacinto | 1990 | 762,234 | No |
| Charleston, SC | Charleston Seismic Zone | 1991 | 175,499 | No |
| Anchorage, AK | Alaska subduction zone | 1982 | 107,868 | No (borderline) |
| San Francisco, CA | San Andreas / Hayward | 1945 | 362,650 | Yes |
| Los Angeles, CA | San Andreas / Puente Hills | 1965 | 3,390,254 | Yes |
| Alameda, CA | Hayward Fault | 1969 | 593,117 | Yes |
| Multnomah, OR (Portland) | Cascadia Subduction Zone | 1971 | 347,392 | Yes |
| Santa Clara, CA | San Andreas / Calaveras | 1975 | 654,467 | Yes |
| Shelby, TN (Memphis) | New Madrid Seismic Zone | 1977 | 360,590 | Yes (borderline) |
Because a median splits the distribution exactly at 50%, a median year before 1980 mathematically guarantees more than half of that county's occupied units were built before 1980 (and vice versa for a median after 1980) — this part of the finding is a direct, exact read of the queried data, not an estimate.
What the connector cannot compute directly, and where the specific percentages come from
census.acs_housing_tenure carries only the MEDIAN year structure built per county, not the full ACS year-built distribution (Census table B25034, which would give exact shares in brackets like "built 1970-1979" or "built before 1940"). That bracket table was not found loaded anywhere in this corpus (search_catalog returned no match for B25034 or a year-built distribution table), and a live attempt to pull it directly from the Census Bureau's API for these same 12 counties was blocked — the Census API now requires an API key for the acs/acs5 detailed-tables endpoint, which this session does not have. That attempted primary-source fetch is disclosed here rather than silently substituted: the exact pre-1980 percentages cited for San Francisco (~81%) and Los Angeles (~75%) are NOT computed from this warehouse; they come from independently published, Census-derived estimates found via web search (CRMP, a Bay Area seismic-retrofit firm, and a Los Angeles retrofit resource), not from a primary Census table this session actually opened. Treat them as directionally consistent with — but not verified against — the median-year-built figures above, which are the one number in this answer computed directly and exactly from askamerica data.
Caveats
- County selection is not exhaustive. These 12 counties were chosen to represent the major named US seismic zones (San Andreas/Hayward, Cascadia, Wasatch, New Madrid, Charleston, Alaska) but are not a statistically representative or complete sample of every FEMA/USGS high-hazard county — a fuller USGS National Seismic Hazard Model county ranking (206 counties identified in one third-party ranking) would shift the aggregate picture, likely toward more counties with newer stock, since most high-hazard counties outside these dense urban cores are smaller and grew later.
- Occupied units, not total housing units. The queried figures are occupied housing units (ACS B25003), a very close but not identical proxy for total housing stock (vacant units, seasonal units excluded).
- "Predates modern codes" is itself a judgment call — see the code-modernization discussion above. A 1994 (post-Northridge) or 2000 (IBC) cutoff would show a much larger share of every county's stock as "pre-modern," since seismic design continued to tighten well past 1980.
- No causal claim. This is a descriptive comparison of housing vintage by county, not an estimate of actual seismic vulnerability, which also depends on construction type (wood-frame vs. unreinforced masonry vs. soft-story), retrofit status, and site soil conditions — none of which this corpus carries at county grain.
Every query behind this report
2 warehouse calls ran in this session, in order. Each is reproducible against the same snapshot.
query — 12 rows — 5690 ms
SELECT geo_name, county_fips, median_year_built, median_year_built_moe, occupied_units, year
FROM census.acs_housing_tenure
WHERE year = '2023' AND geography = 'county'
AND county_fips IN ('06075','06037','06001','06085','06071','06065','53033','41051','49035','47157','45019','02020')
ORDER BY county_fipsquery — 12 rows — 2495 ms
SELECT geo_name, county_fips, occupied_units, owner_occupied, renter_occupied, median_home_value
FROM census.acs_housing_tenure
WHERE year = '2023' AND geography = 'county'
AND county_fips IN ('06075','06037','06001','06085','06071','06065','53033','41051','49035','47157','45019','02020')
ORDER BY county_fipsSources
- ACS 2019-2023 5-year, median year structure built by county
Show tool call
query(schema="census", table="acs_housing_tenure", sql="SELECT geo_name, county_fips, median_year_built, occupied_units FROM census.acs_housing_tenure WHERE year='2023' AND geography='county' AND county_fips IN ('06075','06037','06001','06085','06071','06065','53033','41051','49035','47157','45019','02020')") - CRMP - Is a seismic retrofit worth it in San Francisco (81% pre-1980 estimate)
- CRMP - Earthquake Retrofitting Los Angeles Homes (74.8% pre-1980 estimate)
- Seattle SDCI - Unreinforced Masonry Buildings timeline
- USGS - 2023 50-State Long-term National Seismic Hazard Model
- ServiceMaster - Memphis New Madrid earthquake housing age context