The SlabCalc Soil Risk Index

The SlabCalc Soil Risk Score combines the area-weighted linear extensibility of the soil in the top 100 cm with the USDA NRCS engineering limitation rating for dwellings without basements, over an 8 km area centred on each city.

SlabCalc computed an expansive-soil risk score for 180 US cities from USDA NRCS Soil Survey Geographic Database (SSURGO), via Soil Data Access, area-weighted over an 8 km survey box centered on each city. No comparable national table of city-level expansive-soil risk scores built from primary SSURGO survey data is published anywhere else in the concrete industry.

Data last updated: September 17, 2026

Key Findings

Highest soil risk score

New Orleans, LA: 100/100

New Orleans, Louisiana scores highest in the index, a very high-risk area dominated by Harahan soil.

Lowest soil risk score

Detroit, MI: 10/100

Detroit, Michigan scores lowest in the dataset (very low band).

National mean

42.2/100

Unweighted mean soil risk score across all 180 cities in the index.

Cities needing expansive-soil detailing

18 of 180 (10%)

Cities scoring in the high or very high risk bands, where this index recommends a site-specific geotechnical report.

Why Two Measures, Not One

Linear extensibility percent (LEP) is the standard laboratory measure of how much a soil shrinks and swells with moisture change. It is a real, physical quantity — but SSURGO only reports it down to a fixed depth, and this index averages it over the top 100 cm of soil. Some of the most damaging expansive clays in the country sit below that line, which means LEP alone can call a genuinely high-risk city “low.”

Jackson, Mississippi is the clearest case in this dataset. Its area-weighted LEP over the top 100 cm is 2.08%, which on its own would read as a low-risk figure. Jackson sits on Yazoo clay, one of the most damaging expansive soils in the United States, but the clay layer lies below the 100 cm window LEP is averaged over here. Its USDA NRCS dwelling-limitation index is 0.928, among the highest of every city measured in this index.

That limitation rating comes from a separate NRCS interpretation — “ENG - Dwellings W/O Basements” — that is not depth-limited the way this index's LEP figure is. It rates how suitable the full soil profile is for a foundation without a basement, on a 0 (not limited) to 1 (very limited) scale, and it is what catches what LEP, averaged to 100 cm, misses in Jackson.

Neither measure alone would have been reliable here: LEP alone under-scores Jackson at 17/100 on its own scale, and a limitation-only score would give no physical read on swell magnitude anywhere else in the index. The SlabCalc Soil Risk Score carries both, which is why Jackson lands in the moderate band overall rather than reading as a false all-clear.

Soil Risk Score by City

Ranked by SlabCalc Soil Risk Score, highest to lowest. LEP is the area-weighted linear extensibility percent over the top 100 cm; the limitation index is the USDA NRCS dwelling-limitation rating (0 = not limited, 1 = very limited).

RankCityStateScoreBandLEP %Limitation indexDominant seriesDrainage classHydrologic groupWater table (cm)
1New OrleansLA100Very High17.020.999HarahanVery poorly drainedD59
2BrownsvilleTX92Very High10.510.979LomaltaPoorly drainedD40
3GarlandTX89Very High10.510.91Houston BlackWell drainedD117
4FriscoTX89Very High10.480.901Houston BlackModerately well drainedD231
5Grand PrairieTX86Very High9.860.908Houston BlackModerately well drainedD212
6DurhamNC84Very High9.560.882White StoreModerately well drainedD96
7PlanoTX83Very High9.560.869Houston BlackModerately well drainedD
8IrvingTX83Very High9.60.868FerrisWell drainedD189
9San AntonioTX77High8.250.876Houston BlackWell drainedD
10McKinneyTX77High8.570.833Houston BlackModerately well drainedD
11DallasTX76High8.710.795Houston BlackWell drainedD119
12Overland ParkKS71High6.060.968ChillicotheModerately well drainedD177
13StocktonCA69High5.610.954JacktoneSomewhat poorly drainedC309
14Chula VistaCA69High5.680.958DiabloWell drainedD387
15TopekaKS69High5.660.95LadysmithModerately well drainedD145
16ArlingtonTX67High7.240.743GasilWell drainedD234
17LincolnNE67High5.570.931WymoreModerately well drainedC184
18FremontCA66High5.540.9NovatoWell drainedC147
19Fort WorthTX64Moderate5.890.812SangerWell drainedD322
20San JoseCA63Moderate4.60.922MontaraWell drainedD128
21HoustonTX62Moderate4.410.934ArisPoorly drainedD78
22AustinTX62Moderate5.40.818AustinWell drainedD231
23PierreSD62Moderate6.560.701HighmoreWell drainedD171
24Santa RosaCA61Moderate4.160.93ZamoraWell drainedD3
25EugeneOR61Moderate5.10.833MalabonWell drainedD79
26CincinnatiOH60Moderate4.050.922UdorthentsWell drainedD161
27Fort WayneIN59Moderate4.20.881BlountSomewhat poorly drainedD84
28RenoNV58Moderate4.410.846RenoWell drainedD326
29Little RockAR57Moderate4.010.868CarnasawWell drainedC114
30TulsaOK56Moderate4.10.832DennisSomewhat poorly drainedD110
31San DiegoCA55Moderate3.850.822ReddingWell drainedD417
32AmarilloTX55Moderate5.210.682PullmanWell drainedC1
33ShreveportLA55Moderate5.220.685EastwoodWell drainedD172
34Baton RougeLA54Moderate4.570.744OprairieSomewhat poorly drainedC/D117
35MontgomeryAL54Moderate4.910.691SumterWell drainedD112
36Newport NewsVA54Moderate4.010.798ChickahominyModerately well drainedD128
37SpringfieldIL54Moderate4.130.784IpavaSomewhat poorly drainedB167
38FrankfortKY54Moderate3.940.801EdenWell drainedC135
39Jefferson CityMO54Moderate3.820.811WrengartModerately well drainedC201
40CharlestonWV54Moderate2.140.991ClymerWell drainedC159
41ChicagoIL53Moderate4.690.702OrthentsModerately well drainedC255
42Kansas CityMO53Moderate4.210.75KnoxWell drainedC187
43ChattanoogaTN53Moderate3.260.836FullertonWell drainedD234
44OaklandCA52Moderate3.810.758XeropsammentsWell drainedD349
45BakersfieldCA52Moderate1.840.966KimberlinaWell drainedA
46Des MoinesIA52Moderate4.020.745ClarionModerately well drainedC227
47HonoluluHI51Moderate2.550.869Rough mountainous landWell drainedC197
48LexingtonKY51Moderate40.715BluegrassWell drainedC132
49PittsburghPA51Moderate2.430.885CulleokaWell drainedC151
50JuneauAK51Moderate1.320.999Rock outcropModerately well drainedA80
51JacksonMS51Moderate2.080.928RiedtownModerately well drainedC140
52ColumbusOH50Moderate3.160.795BenningtonSomewhat poorly drainedC/D91
53AnaheimCA50Moderate3.560.751CalleguasWell drainedD86
54Corpus ChristiTX50Moderate1.020.997Tidal flatsVery poorly drainedD13
55ChesapeakeVA50Moderate1.620.947TomotleyPoorly drainedB/D41
56Virginia BeachVA49Moderate1.480.943AcredalePoorly drainedC/D53
57ClevelandOH49Moderate2.410.844UdorthentsSomewhat poorly drainedD108
58BuffaloNY49Moderate2.630.829NiagaraModerately well drainedC/D125
59AnchorageAK48Moderate0.670.991E23-boreal rock outcrop and rubblelandWell drainedA274
60San BernardinoCA48Moderate1.330.931TujungaSomewhat excessively drainedA0
61Carson CityNV48Moderate2.090.848IncyWell drainedD151
62San FranciscoCA47Moderate1.650.869SirdrakWell drainedD8
63Port St. LucieFL47Moderate1.220.929PinedaPoorly drainedC/D70
64FontanaCA47Moderate1.330.92TujungaSomewhat excessively drainedA0
65Rancho CucamongaCA47Moderate1.30.907TujungaSomewhat excessively drainedA0
66IrvineCA46Moderate3.980.606ChinoWell drainedC264
67Santa ClaritaCA46Moderate1.990.815SaugusWell drainedB44
68Salt Lake CityUT46Moderate3.470.678DeckermanSomewhat poorly drainedD163
69KnoxvilleTN46Moderate3.090.699DeweyWell drainedB138
70AuroraIL46Moderate3.70.64DrummerPoorly drainedB/D119
71AugustaME46Moderate1.780.851LymanWell drainedC/D115
72Long BeachCA45Moderate2.350.76BiscailuzWell drainedD148
73SalemOR45Moderate3.260.666WoodburnWell drainedC124
74MontpelierVT45Moderate1.020.901TunbridgeWell drainedD87
75Sioux FallsSD44Low4.250.555NoraWell drainedC169
76BirminghamAL44Low2.080.776FullertonWell drainedB140
77Oklahoma CityOK43Low3.680.579RenthinWell drainedD162
78ToledoOH43Low2.760.666BixlerSomewhat poorly drainedB/D118
79NorfolkVA43Low1.720.785AltavistaPoorly drainedB/D205
80CaryNC43Low2.450.705CreedmoorWell drainedC/D87
81Pembroke PinesFL43Low0.330.932LauderhillVery poorly drainedA/D28
82Huntington BeachCA42Low2.860.65HuenemePoorly drainedC177
83GlendaleCA42Low0.910.837VistaWell drainedD
84IndianapolisIN41Low30.606FoxWell drainedB149
85SacramentoCA41Low3.340.563San JoaquinSomewhat poorly drainedC111
86RochesterNY41Low2.240.686ColonieModerately well drainedA118
87OrlandoFL40Low0.580.838SmyrnaPoorly drainedA/D51
88MemphisTN39Low1.460.725Udorthents, siltyWell drainedB137
89TucsonAZ39Low3.710.483MohaveWell drainedC
90North Las VegasNV39Low2.180.651WeiserWell drainedA
91GilbertAZ39Low4.140.45ContineWell drainedC
92BoiseID39Low2.960.563ElijahWell drainedC240
93HialeahFL39Low0.240.853UdorthentsPoorly drainedA/D150
94AlbanyNY39Low2.450.626ColonieModerately well drainedA152
95JacksonvilleFL38Low1.50.692OrtegaPoorly drainedA138
96MiamiFL38Low0.090.84DadePoorly drainedA230
97Moreno ValleyCA38Low2.070.641RocklandWell drainedA0
98Fort CollinsCO38Low3.340.496NunnWell drainedC189
99NashvilleTN37Low2.630.565MauryWell drainedB145
100LouisvilleKY37Low2.640.545UdorthentsWell drainedD152
101BaltimoreMD37Low2.540.557UdorthentsWell drainedD216
102OntarioCA37Low1.570.673TujungaSomewhat excessively drainedA0
103LansingMI37Low1.780.65MarletteWell drainedC/D124
104HelenaMT37Low1.930.615MusselshellWell drainedB198
105PortlandOR36Low1.840.611MultnomahWell drainedC142
106Santa AnaCA36Low3.210.469HuenemeWell drainedC245
107St. LouisMO36Low3.450.446HarvesterModerately well drainedC183
108PeoriaAZ36Low2.450.547SuncityWell drainedD
109AkronOH36Low1.730.616ChiliWell drainedA102
110HartfordCT36Low1.140.684UdorthentsWell drainedB122
111BismarckND36Low2.970.489TemvikWell drainedB238
112AtlantaGA35Low1.450.633RionWell drainedB178
113WichitaKS35Low2.770.504CanadianWell drainedC221
114GreensboroNC35Low30.468EnonWell drainedC97
115ClarksvilleTN35Low2.430.54SengtownWell drainedB129
116Los AngelesCA34Low2.750.474Anthraltic XerorthentsWell drainedD
117MadisonWI34Low2.980.451BataviaWell drainedB125
118HarrisburgPA34Low1.590.583BerksWell drainedB141
119SeattleWA33Low0.740.654AlderwoodModerately well drainedA163
120MesaAZ33Low3.690.357ContineWell drainedC
121RiversideCA33Low2.220.511CienebaWell drainedC0
122Grand RapidsMI33Low1.910.541SpinksWell drainedA107
123Elk GroveCA33Low3.640.372San JoaquinModerately well drainedC87
124ConcordNH33Low0.990.643CroghanWell drainedA160
125HuntsvilleAL32Low2.630.447DecaturWell drainedB177
126YonkersNY32Low1.010.615UdorthentsWell drainedD139
127AnnapolisMD32Low2.10.49AnnapolisWell drainedC141
128WashingtonDC31Low1.660.521UdorthentsWell drainedC160
129AuroraCO31Low3.150.373FondisWell drainedC182
130El PasoTX30Low2.280.436HuecoWell drainedD
131OmahaNE30Low3.530.308UdorthentsWell drainedC293
132St. PetersburgFL30Low1.480.513MyakkaPoorly drainedA/D114
133RichmondVA30Low1.970.477TurbevilleWell drainedB147
134Fort LauderdaleFL30Low1.10.559ImmokaleePoorly drainedA/D164
135HendersonNV29Low1.560.49CalizaWell drainedD340
136SpokaneWA29Low1.620.487OpportunityWell drainedA73
137TacomaWA29Low0.930.554AlderwoodModerately well drainedA159
138Santa FeNM29Low2.260.409TanoanWell drainedC305
139BostonMA28Low1.10.506UdorthentsWell drainedA121
140TampaFL28Low0.940.53MyakkaPoorly drainedA123
141LubbockTX28Low3.770.247AmarilloWell drainedB0
142Cape CoralFL28Low0.290.603MatlachaPoorly drainedB114
143ColumbiaSC28Low1.360.486LakelandModerately well drainedA128
144DenverCO27Low2.710.334TrucktonWell drainedC166
145FresnoCA27Low2.210.366San JoaquinWell drainedD65
146ChandlerAZ27Low3.360.257MohallWell drainedC
147WorcesterMA27Low0.330.577UdorthentsWell drainedC121
148OlympiaWA27Low1.540.449AlderwoodModerately well drainedB132
149CharlotteNC26Low2.190.346CecilWell drainedB123
150NewarkNJ26Low1.480.424BoontonWell drainedC120
151LaredoTX26Low2.950.277CopitaWell drainedC
152MobileAL26Low0.490.523WadleySomewhat excessively drainedB/D99
153St. PaulMN25Low1.60.389UdorthentsWell drainedB58
154Winston-SalemNC25Low1.720.391FairviewWell drainedB95
155ColumbusGA25Low1.750.372DothanWell drainedB210
156DoverDE25Low1.240.422HambrookWell drainedB154
157Jersey CityNJ24Very Low0.90.438WestbrookWell drainedC139
158MilwaukeeWI23Very Low2.730.243NOTCOMModerately well drainedC184
159GlendaleAZ23Very Low2.780.231GilmanWell drainedC
160ScottsdaleAZ23Very Low2.050.312MomoliWell drainedD
161OxnardCA23Very Low2.070.309HuenemeSomewhat poorly drainedC204
162SurpriseAZ23Very Low2.630.236GilmanWell drainedC
163TrentonNJ23Very Low1.620.349MatapeakeWell drainedB185
164VancouverWA22Very Low1.740.302LaurenWell drainedB58
165PhiladelphiaPA21Very Low1.380.325ChesterWell drainedB291
166RaleighNC21Very Low1.60.295BeltlineWell drainedC89
167Colorado SpringsCO21Very Low1.970.265BlakelandWell drainedA79
168MinneapolisMN21Very Low1.810.283UdorthentsWell drainedA158
169AlbuquerqueNM20Very Low1.650.266Cut and fill landWell drainedA238
170FayettevilleNC20Very Low1.470.296WagramWell drainedA371
171AugustaGA20Very Low1.650.276TroupWell drainedA173
172TempeAZ20Very Low2.640.169LaveenWell drainedC
173PhoenixAZ19Very Low2.250.185GilmanWell drainedB
174Las VegasNV19Very Low2.060.216CaveWell drainedD310
175ProvidenceRI18Very Low0.660.329MerrimacWell drainedA161
176CheyenneWY16Very Low2.190.126AscalonWell drainedB95
177TallahasseeFL14Very Low1.330.185OrangeburgWell drainedB188
178ModestoCA13Very Low1.360.156HanfordWell drainedB31
179New YorkNY10Very Low0.420.189NaguntWell drainedD157
180DetroitMI10Very Low1.20.089ShebeonSomewhat poorly drainedD207

Soil Risk by State

Population-weighted mean score across each state's cities in the index, ranked highest to lowest.

RankStateCities in indexScoreBand
1Louisiana (LA)376High
2Texas (TX)1865High
3Arkansas (AR)157Moderate
4West Virginia (WV)154Moderate
5Illinois (IL)353Moderate
6Iowa (IA)152Moderate
7Kansas (KS)351Moderate
8Hawaii (HI)151Moderate
9Mississippi (MS)151Moderate
10Ohio (OH)549Moderate
11Oklahoma (OK)248Moderate
12Alaska (AK)248Moderate
13Missouri (MO)347Moderate
14Virginia (VA)546Moderate
15Utah (UT)146Moderate
16Maine (ME)146Moderate
17South Dakota (SD)245Moderate
18Indiana (IN)245Moderate
19Vermont (VT)145Moderate
20California (CA)2844Low
21Nebraska (NE)244Low
22Oregon (OR)342Low
23Kentucky (KY)342Low
24Tennessee (TN)540Low
25Alabama (AL)439Low
26Idaho (ID)139Low
27Maryland (MD)237Low
28Montana (MT)137Low
29Connecticut (CT)136Low
30North Dakota (ND)136Low
31Florida (FL)1135Low
32North Carolina (NC)733Low
33New Hampshire (NH)133Low
34Nevada (NV)532Low
35District of Columbia (DC)131Low
36Georgia (GA)330Low
37Washington (WA)530Low
38Massachusetts (MA)228Low
39South Carolina (SC)128Low
40Colorado (CO)427Low
41Wisconsin (WI)227Low
42Pennsylvania (PA)326Low
43Arizona (AZ)1026Low
44New Jersey (NJ)325Low
45Delaware (DE)125Low
46Minnesota (MN)223Very Low
47New Mexico (NM)221Very Low
48Michigan (MI)318Very Low
49Rhode Island (RI)118Very Low
50Wyoming (WY)116Very Low
51New York (NY)513Very Low

What Does Expansive Soil Do to a Slab?

Expansive clay changes volume with its moisture content: it swells as it wets and shrinks as it dries. That is a fundamentally different loading condition than the one most slab-on-grade design assumes. On stable soil, a slab settles a small, roughly uniform amount under its own weight and stays put. On expansive soil, the ground itself moves underneath the slab, and it rarely moves the same amount everywhere at once.

Heave is the upward movement that happens as clay gains moisture and swells; settlement, in this context, is the downward movement as clay loses moisture and shrinks. A slab does not need much total movement to crack — it needs differential movement, meaning different parts of the same slab moving by different amounts.

Two patterns of differential movement show up most often on expansive soil:

  • Edge lift — the slab perimeter gains moisture faster than the interior, often after rain following a dry spell, and swells upward relative to a comparatively stable center. Cracking tends to run inward from the edges.
  • Center lift — the perimeter dries and shrinks (common where paving, irrigation changes, or nearby tree roots draw moisture from the edge soil) while the soil under the center of the slab, insulated from the weather by the slab itself, stays wetter and comparatively swollen. The edges effectively settle relative to the center.

A slab acts as a partial vapor barrier: soil directly beneath it evaporates far more slowly than exposed soil at the perimeter. That difference — not the total amount of clay present — is usually what drives edge lift and center lift, and it is why seasonal moisture cycling around the slab perimeter (irrigation, drainage, gutters, nearby vegetation) matters as much as the soil's intrinsic swell potential. Keeping subgrade moisture uniform under and around a slab, rather than trying to keep it simply dry, is the practical goal on expansive soil.

ACI 332 (Code Requirements for Residential Concrete) and PTI DC10.5 (Design of Post-Tensioned Slabs-on-Ground) set out engineering procedures — stiffened foundations, post-tensioning, moisture-conditioned subgrade, edge and interior beam layouts — for building on expansive soil. This page does not attempt to reproduce either document; a geotechnical engineer or structural engineer applies them to a specific site and soil report.

How Should a Contractor Read This Score?

The risk band on this page maps to a practical starting point for slab design decisions. It is a screening signal, not a substitute for site-specific geotechnical work.

BandScoreSlab guidance
Very Low0–24Standard slab-on-grade detailing is normally adequate; no expansive-soil measures are indicated by the survey data.
Low25–44Standard slab-on-grade detailing is usually adequate. Confirm drainage moves water away from the slab edge.
Moderate45–64Expect some seasonal movement. Uniform subgrade moisture, positive drainage and control joints at design spacing matter more here than the average site.
High65–79Expansive-soil detailing is warranted: a site-specific geotechnical report, stiffened or post-tensioned slab design, moisture-conditioned subgrade and strict drainage control.
Very High80–100Treat expansive soil as a primary design driver. A geotechnical investigation is not optional, and slab systems should be engineered for the measured swell potential.

Methodology

Area of interest: For each city, SlabCalc draws an 8 km bounding box centered on the same population centroid used by the SlabCalc Freeze-Thaw Index, and queries every USDA SSURGO map unit polygon that intersects it.

Area weighting: Each soil component's contribution is weighted by the acreage of its map unit that actually falls inside the box, multiplied by the component's percentage of that map unit. Weighting by each map unit's listed component percentages alone, without regard to how much of the map unit falls inside the box, would overweight components that happen to sit in a small sliver of a large map unit at the edge of the area — so this index always weights by intersected acreage first.

LEP (linear extensibility percent): Depth-weighted within each component over the top 100 cm of soil, then area-and-component weighted across the box, using only major components. This is a directly measured SSURGO value, not a SlabCalc estimate.

Dwelling-limitation index: The USDA NRCS engineering interpretation rating for “ENG - Dwellings W/O Basements,” area-and-component weighted the same way, on its native 0 (not limited) to 1 (very limited) scale. This is also a directly reported NRCS value.

Soil Risk Score (SlabCalc composite): The two measures above are real, independently reported USDA data. The formula that blends them into a single 0-100 score, and the band thresholds that label it, are SlabCalc's editorial composition, not a USDA, ACI, or PTI standard:

lepScore   = min(100, lepPercent / 12.0 * 100)
limitScore = dwellingLimitationIndex * 100
soilRiskScore = round(0.55 * lepScore + 0.45 * limitScore)

LEP is capped at a 12% reading for scoring purposes because SSURGO LEP values above 12% are rare and represent the far tail of expansive behavior; the cap and the 0.55/0.45 weighting between the two measures were chosen by SlabCalc to keep either measure from dominating the score on its own, not derived from any published standard.

Other fields: Dominant soil series, drainage class, hydrologic group, water table depth and flood frequency are area-weighted (numeric fields) or the dominant-condition value (categorical fields) across the same box, drawn directly from SSURGO component and map unit aggregate tables.

Source: USDA NRCS Soil Survey Geographic Database (SSURGO), via Soil Data Access (https://sdmdataaccess.sc.egov.usda.gov/), licensed Public domain (USDA NRCS).

Limitations

  • Every score on this page is an area average over an 8 km box, not a site assessment. Soil composition varies enormously within a single city, and often within a single lot — a low-scoring city can contain individual parcels with genuinely expansive soil, and a high-scoring city can contain parcels with none.
  • LEP is only reported and averaged to 100 cm depth in this index. Jackson, Mississippi is the clearest illustration: its LEP reads 2.08% (low, on its own), because its expansive clay sits below that 100 cm window, which is exactly why the dwelling-limitation index is carried alongside LEP rather than reported on its own.
  • This index does not substitute for a geotechnical report. It is a planning-level screening tool built from public survey data, not a site investigation. Any project on soil scoring moderate or above should be evaluated by a geotechnical engineer against the actual soil at the actual building location.

How to Cite This Dataset

This dataset is free to cite, reference, and reuse in reporting, research, or analysis under a CC BY 4.0 license — we ask only that you link back to this page as the source. The underlying USDA NRCS SSURGO data is US public domain.

SlabCalc. (2026). “The SlabCalc Soil Risk Index: Expansive Soil Risk for 180 US Cities.” Retrieved from https://www.slabcalc.co/research/soil-risk-index.

Download the full dataset as CSV (180 cities). Data last updated September 17, 2026.

Questions about the data or want the underlying figures for a story? Contact us.

Frequently Asked Questions