Skip to main content
MortRadarTERMINAL
State markets/Missouri/St. Louis County

COUNTY MORTGAGE MARKET · FIPS 29189

St. Louis County, Missouri

Who lends in St. Louis County, how much, and to whom — built from HMDA public mortgage disclosure data, U.S. Census ACS housing estimates and FEMA's National Risk Index.

Origination volume · 2025

$6.26B

Origination volumeSum of loan amount over HMDA records with action taken = 1.

Originations · 2025

22,981

OriginationsCount of HMDA records with action taken = 1 (loan originated) in the activity year.

Denial rate · 2025

14.9%

Denial rateApplications denied (action taken = 3) divided by applications acted upon (actions 1-5).

Lenders active · 2025

481

Lenders activeDistinct LEIs with at least one application acted upon (HMDA action taken 1-5, 7 or 8) in the county and year.

Market structure

How spread out lending is across the 481 lenders that originated in St. Louis County in 2025. HHI is the Herfindahl-Hirschman index over lender shares.

Concentration (HHI)

197

unconcentrated

Top-5 lender share

22.7%

of originations

Purchase

62.5%

11,754 loans

Refinance

37.5%

7,059 loans

Origination trend

Annual mortgage origination volume and loan count in St. Louis County, 2023–2025. Pick a window, export the graph or its data, or click a year to open every record behind it.

Lenders in St. Louis County

Sort, filter, add columns, export, or open a row for the lender's card. Each row links to the lender's company page and to its St. Louis County loan records. The panel states which source answered and exactly which lenders that source covers.

ORIGINATION FLOOR
Hide the long tail of lenders with only a handful of loans here.
FULL RECORD LIST FOR ST. LOUIS COUNTY

TOP TEN LENDERS IN ST. LOUIS COUNTY · 10

The ten largest lenders by origination volume — the precomputed county leaderboard, not the whole market.

1–10 OF 10 LENDERS

Loading every lender that acted on an application in this county. The rows below are the precomputed county leaderboard — the ten largest by volume, not the whole market.

1,517$383.2M$383.2M originated in St. Louis County, 2025Share needs a county-wide denominator, which the narrower fallback source does not carry.
774$332.5M$332.5M originated in St. Louis County, 2025Share needs a county-wide denominator, which the narrower fallback source does not carry.
1,197$298.2M$298.2M originated in St. Louis County, 2025Share needs a county-wide denominator, which the narrower fallback source does not carry.
987$207.4M$207.4M originated in St. Louis County, 2025Share needs a county-wide denominator, which the narrower fallback source does not carry.
689$201.6M$201.6M originated in St. Louis County, 2025Share needs a county-wide denominator, which the narrower fallback source does not carry.
759$191.4M$191.4M originated in St. Louis County, 2025Share needs a county-wide denominator, which the narrower fallback source does not carry.
823$189.3M$189.3M originated in St. Louis County, 2025Share needs a county-wide denominator, which the narrower fallback source does not carry.
1,019$170.3M$170.3M originated in St. Louis County, 2025Share needs a county-wide denominator, which the narrower fallback source does not carry.
549$142.9M$142.9M originated in St. Louis County, 2025Share needs a county-wide denominator, which the narrower fallback source does not carry.
449$137.9M$137.9M originated in St. Louis County, 2025Share needs a county-wide denominator, which the narrower fallback source does not carry.

Source: the precomputed county lender leaderboard (lender_county_year) — its ten largest lenders by origination volume, not the county. As of HMDA activity year 2025. Denial rate = denials / decisioned applications (originated + approved-but-not-accepted + denied).

ZIP areas in St. Louis County

All 47 ZIP Code Tabulation Areas that touch St. Louis County, built by grouping the county's census tracts through the Census 2020 crosswalk. A ZCTA approximates a USPS ZIP code; HMDA itself reports no postal geography, so each row opens the tracts behind it, where the records are exact.

TRACT FLOOR
Hide the ZIP areas that only clip a corner of this county.
47 OF 47 ZIP AREASEVERY ZIP AREA TOUCHING THE COUNTY — NO ROWS WITHHELD
TOP LENDERRECORDS
1111 of the 14 St. Louis County tracts this ZIP area touches sit mostly inside it.56,90620.6%18,024TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
1212 of the 15 St. Louis County tracts this ZIP area touches sit mostly inside it.53,09111.0%17,875TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
1010 of the 13 St. Louis County tracts this ZIP area touches sit mostly inside it.47,41515.6%14,790TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
1010 of the 16 St. Louis County tracts this ZIP area touches sit mostly inside it.46,81553.2%12,610TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
99 of the 12 St. Louis County tracts this ZIP area touches sit mostly inside it.45,57675.9%11,599TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
1111 of the 18 St. Louis County tracts this ZIP area touches sit mostly inside it.40,03593.9%7,954TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
66 of the 17 St. Louis County tracts this ZIP area touches sit mostly inside it.37,79619.9%11,977TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
99 of the 15 St. Louis County tracts this ZIP area touches sit mostly inside it.37,32221.8%11,882TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
1010 of the 19 St. Louis County tracts this ZIP area touches sit mostly inside it.36,04611.7%10,894TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
1010 of the 13 St. Louis County tracts this ZIP area touches sit mostly inside it.35,55916.3%10,554TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
99 of the 10 St. Louis County tracts this ZIP area touches sit mostly inside it.35,54537.0%9,816TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
88 of the 16 St. Louis County tracts this ZIP area touches sit mostly inside it.34,80352.0%8,265TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
88 of the 9 St. Louis County tracts this ZIP area touches sit mostly inside it.33,92519.0%9,685TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
99 of the 15 St. Louis County tracts this ZIP area touches sit mostly inside it.31,04054.2%7,960TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
77 of the 8 St. Louis County tracts this ZIP area touches sit mostly inside it.30,15512.0%9,494TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
88 of the 10 St. Louis County tracts this ZIP area touches sit mostly inside it.26,53687.9%6,287TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
44 of the 6 St. Louis County tracts this ZIP area touches sit mostly inside it.23,95124.2%7,727TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
55 of the 7 St. Louis County tracts this ZIP area touches sit mostly inside it.22,33039.3%5,791TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
44 of the 7 St. Louis County tracts this ZIP area touches sit mostly inside it.21,34315.5%7,030TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
55 of the 6 St. Louis County tracts this ZIP area touches sit mostly inside it.19,99615.5%6,148TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
44 of the 4 St. Louis County tracts this ZIP area touches sit mostly inside it.19,35788.5%4,225TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
55 of the 5 St. Louis County tracts this ZIP area touches sit mostly inside it.18,84587.6%3,494TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
44 of the 15 St. Louis County tracts this ZIP area touches sit mostly inside it.18,65128.6%5,408TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
44 of the 7 St. Louis County tracts this ZIP area touches sit mostly inside it.18,18030.6%3,185TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
44 of the 5 St. Louis County tracts this ZIP area touches sit mostly inside it.17,53310.5%5,651TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
55 of the 8 St. Louis County tracts this ZIP area touches sit mostly inside it.16,85577.7%4,297TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
55 of the 10 St. Louis County tracts this ZIP area touches sit mostly inside it.16,33574.1%3,195TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
33 of the 8 St. Louis County tracts this ZIP area touches sit mostly inside it.16,31373.1%5,588TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
22 of the 3 St. Louis County tracts this ZIP area touches sit mostly inside it.15,15813.5%3,685TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
55 of the 8 St. Louis County tracts this ZIP area touches sit mostly inside it.15,02340.0%3,922TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
33 of the 8 St. Louis County tracts this ZIP area touches sit mostly inside it.14,42260.2%3,402TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
33 of the 9 St. Louis County tracts this ZIP area touches sit mostly inside it.12,73248.6%2,891TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
33 of the 8 St. Louis County tracts this ZIP area touches sit mostly inside it.12,69615.0%4,175TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
33 of the 7 St. Louis County tracts this ZIP area touches sit mostly inside it.12,10645.7%2,668TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
22 of the 7 St. Louis County tracts this ZIP area touches sit mostly inside it.9,81011.7%3,433TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
33 of the 9 St. Louis County tracts this ZIP area touches sit mostly inside it.9,22022.7%2,215TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
33 of the 4 St. Louis County tracts this ZIP area touches sit mostly inside it.8,23427.3%1,703TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
22 of the 5 St. Louis County tracts this ZIP area touches sit mostly inside it.7,97919.1%2,568TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
11 of the 3 St. Louis County tracts this ZIP area touches sit mostly inside it.7,47611.4%2,332OPEN →This ZIP area is one census tract here, so its records open directly and exactly.
22 of the 6 St. Louis County tracts this ZIP area touches sit mostly inside it.6,73818.4%1,763TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
33 of the 7 St. Louis County tracts this ZIP area touches sit mostly inside it.5,39995.3%1,017TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
11 of the 4 St. Louis County tracts this ZIP area touches sit mostly inside it.5,00314.9%1,473OPEN →This ZIP area is one census tract here, so its records open directly and exactly.
11 of the 4 St. Louis County tracts this ZIP area touches sit mostly inside it.3,8759.3%1,063OPEN →This ZIP area is one census tract here, so its records open directly and exactly.
0This ZIP area clips 1 tract of St. Louis County but is the dominant ZIP for none of them, so it owns no figures here.TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
0This ZIP area clips 1 tract of St. Louis County but is the dominant ZIP for none of them, so it owns no figures here.TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
0This ZIP area clips 1 tract of St. Louis County but is the dominant ZIP for none of them, so it owns no figures here.TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.
0This ZIP area clips 2 tracts of St. Louis County but is the dominant ZIP for none of them, so it owns no figures here.TRACTS →HMDA reports no ZIP. This opens the ZIP area's tract list, where each tract's records open exactly.

236 of St. Louis County’s 236 census tracts are grouped into the ZIP areas above, with none left over. The two add up to the county exactly, because each tract is counted once. A ZCTA — ZIP Code Tabulation Area — is the U.S. Census Bureau's area approximation of a USPS ZIP code, not the ZIP code itself. HMDA reports no postal geography at all, so these rows are census tracts grouped by the Census 2020 tract-to-ZCTA relationship file: each tract is counted once, in the single ZCTA covering the most of its land. Housing figures are HMDA tract attributes for activity year 2025, summed over the tracts each ZIP area owns — a ZIP area that owns no tract shows an em-dash, never a zero.

Census tracts in St. Louis County

All 236 tracts, with the FFIEC income character and HMDA housing attributes of each. Open a tract for its own lender ranking, or open its records directly.

236 OF 236 TRACTSEVERY TRACT IN THE COUNTY — NO ROWS WITHHELD
TOP LENDERRECORDS
Moderate73.4%1,40067.9%OPEN →
Moderate75.3%3,96183.6%OPEN →
Moderate55.0%5,58591.0%OPEN →
Moderate60.9%2,98584.1%OPEN →
Moderate50.7%4,14295.4%OPEN →
Moderate59.2%3,16497.2%OPEN →
Moderate53.6%3,30596.3%OPEN →
Moderate57.0%6,64584.2%OPEN →
Moderate54.7%5,98490.5%OPEN →
Moderate64.6%3,55086.1%OPEN →
Moderate57.8%3,95095.7%OPEN →
Moderate79.8%4,89879.0%OPEN →
Middle85.0%6,08090.3%OPEN →
Middle81.2%6,15194.2%OPEN →
Middle106.0%5,76091.7%OPEN →
Middle100.9%3,62091.7%OPEN →
Middle109.4%7,15572.4%OPEN →
Middle118.7%4,07270.2%OPEN →
Middle80.7%5,39958.6%OPEN →
Middle94.8%4,45674.8%OPEN →
Middle95.0%5,41968.6%OPEN →
Moderate70.7%2,57855.0%OPEN →
Upper140.1%4,68169.5%OPEN →
Upper120.4%4,47778.2%OPEN →
Middle96.8%4,30266.9%OPEN →
Middle89.7%3,36858.5%OPEN →
Middle91.9%7,05656.5%OPEN →
Middle83.9%5,00276.0%OPEN →
Moderate73.8%5,33759.6%OPEN →
Middle90.6%3,29831.8%OPEN →
Middle80.3%6,43242.9%OPEN →
Middle87.3%6,06744.5%OPEN →
Middle89.0%6,29344.6%OPEN →
Middle98.4%4,91851.8%OPEN →
Middle97.8%4,25844.7%OPEN →
Moderate62.6%5,32548.3%OPEN →
Moderate54.7%2,27466.7%OPEN →
Low48.8%2,98994.6%OPEN →
Moderate68.8%5,85574.4%OPEN →
Moderate73.3%3,82872.7%OPEN →
Low36.4%3,55391.1%OPEN →
Moderate58.1%3,48390.8%OPEN →
Low38.7%4,49595.1%OPEN →
Low36.7%2,86696.1%OPEN →
Moderate51.6%3,44193.7%OPEN →
Low42.4%3,50695.9%OPEN →
Moderate57.7%3,46794.8%OPEN →
Low31.8%2,67594.7%OPEN →
Moderate59.7%3,79296.9%OPEN →
Low29.1%2,07998.3%OPEN →
Moderate61.3%4,62385.6%OPEN →
Moderate61.3%2,17389.9%OPEN →
Moderate61.5%4,59983.5%OPEN →
Moderate70.2%4,37470.0%OPEN →
Low42.0%3,06982.9%OPEN →
Low47.9%1,88177.3%OPEN →
0.0%37735.0%OPEN →
Middle105.6%3,27843.1%OPEN →
Low43.6%1,02954.8%OPEN →
Middle106.3%7,01237.8%OPEN →
Middle104.2%5,01426.6%OPEN →
Middle88.1%3,90552.0%OPEN →
Moderate62.9%3,42955.2%OPEN →
Moderate51.2%3,72663.5%OPEN →
Moderate61.6%4,64465.9%OPEN →
Moderate63.2%1,87856.0%OPEN →
Moderate64.7%5,22250.4%OPEN →
Low42.4%3,43186.9%OPEN →
0.0%83675.1%OPEN →
Moderate69.3%3,98671.9%OPEN →
Low49.1%4,72098.0%OPEN →
Low43.6%1,43798.7%OPEN →
Low42.5%1,08098.1%OPEN →
Low47.6%2,88292.6%OPEN →
Low46.6%3,71474.4%OPEN →
Moderate71.4%4,78946.9%OPEN →
Middle82.2%3,17346.0%OPEN →
Moderate55.0%3,89146.8%OPEN →
Low49.7%4,05245.9%OPEN →
Moderate70.9%6,72151.5%OPEN →
Moderate77.2%5,48140.2%OPEN →
Moderate69.0%3,19644.7%OPEN →
Middle80.7%3,24157.0%OPEN →
Middle89.6%2,84053.7%OPEN →
Upper121.0%4,41224.8%OPEN →
Upper121.9%3,42743.8%OPEN →
Upper139.6%5,94141.0%OPEN →
Middle83.2%4,97934.7%OPEN →
Upper139.7%2,57733.5%OPEN →
Upper164.3%2,43426.8%OPEN →
Upper142.7%4,22921.7%OPEN →
Middle108.8%2,90125.5%OPEN →
Middle101.8%5,67232.4%OPEN →
Middle119.8%4,91446.6%OPEN →
Upper129.1%2,63263.2%OPEN →
Upper193.2%6,65729.9%OPEN →
Upper149.2%4,75122.0%OPEN →
Upper144.7%5,23430.9%OPEN →
Upper294.9%2,07120.3%OPEN →
Upper193.3%4,61226.8%OPEN →
Upper130.7%3,25014.1%OPEN →
Upper175.5%4,68927.7%OPEN →
Upper190.3%3,38621.9%OPEN →
Upper294.9%5,50713.9%OPEN →
Upper175.8%5,26032.2%OPEN →
Middle80.4%5,04272.7%OPEN →
Moderate76.1%5,68182.3%OPEN →
Upper124.5%3,94326.2%OPEN →
Moderate78.0%1,60233.5%OPEN →
Upper167.5%2,43034.2%OPEN →
Middle107.2%3,33768.2%OPEN →
Moderate70.8%3,16184.7%OPEN →
Moderate55.8%1,54285.9%OPEN →
Upper175.5%3,33748.3%OPEN →
Upper206.6%2,26257.0%OPEN →
Upper159.9%3,82724.2%OPEN →
Upper229.9%3,95025.8%OPEN →
Upper174.9%7,06835.0%OPEN →
Upper199.4%2,76221.3%OPEN →
Upper159.0%3,07128.9%OPEN →
Upper193.4%5,27930.5%OPEN →
Upper270.9%2,49221.3%OPEN →
Upper144.7%3,53925.7%OPEN →
Upper131.1%3,18920.6%OPEN →
Moderate55.6%2,33328.7%OPEN →
Middle90.2%4,00223.9%OPEN →
Middle82.6%1,89933.0%OPEN →
Middle115.6%3,06422.9%OPEN →
Upper155.4%4,91516.7%OPEN →
Upper226.5%5,58710.7%OPEN →
Upper204.8%7,57712.1%OPEN →
Upper230.4%5,42519.1%OPEN →
Upper247.6%7,81323.4%OPEN →
Upper151.8%7,42620.5%OPEN →
Middle117.6%5,59520.2%OPEN →
Upper158.9%6,46217.7%OPEN →
Upper158.5%5,28025.1%OPEN →
Upper167.3%3,16815.2%OPEN →
Upper184.2%6,72916.1%OPEN →
Upper250.0%5,01531.1%OPEN →
Upper219.1%2,29017.9%OPEN →
Upper165.5%4,83318.7%OPEN →
Upper128.9%7,10318.8%OPEN →
Upper132.8%6,36618.0%OPEN →
Upper147.1%5,14426.3%OPEN →
Middle98.2%6,01616.6%OPEN →
Upper136.1%5,40217.7%OPEN →
Upper128.0%3,50524.4%OPEN →
Upper152.5%5,81822.0%OPEN →
Upper207.6%4,95512.2%OPEN →
Upper120.3%5,81418.3%OPEN →
Upper144.0%1,5739.7%OPEN →
Middle116.3%2,91413.1%OPEN →
Middle95.2%3,99137.0%OPEN →
Middle89.5%3,12218.9%OPEN →
Moderate63.6%1,79325.6%OPEN →
Middle102.2%3,61618.1%OPEN →
Upper146.3%3,27411.1%OPEN →
Upper149.7%4,31313.5%OPEN →
Upper160.6%4,1519.2%OPEN →
Upper147.6%5,05410.1%OPEN →
Upper157.4%5,0649.4%OPEN →
Upper152.7%2,80123.6%OPEN →
Upper200.9%6,1767.6%OPEN →
Upper123.0%3,42542.7%OPEN →
Upper153.7%2,92829.2%OPEN →
Upper147.9%3,95011.5%OPEN →
Upper192.2%2,67910.8%OPEN →
Upper168.7%2,17015.6%OPEN →
Upper189.4%6,3358.6%OPEN →
Upper123.3%4,76414.0%OPEN →
Upper161.8%2,5536.8%OPEN →
Middle96.9%4,17615.2%OPEN →
Upper133.5%2,57915.2%OPEN →
Middle98.1%5,88718.5%OPEN →
Middle96.3%3,78215.3%OPEN →
Moderate65.1%3,75717.9%OPEN →
Middle90.3%6,10121.3%OPEN →
Middle97.3%5,09012.3%OPEN →
Middle100.3%3,19915.9%OPEN →
Moderate61.7%3,23116.7%OPEN →
Middle84.1%4,50320.2%OPEN →
Moderate64.8%5,70423.6%OPEN →
Low45.8%1,76329.5%OPEN →
Middle97.7%6,02412.2%OPEN →
Middle106.6%4,47310.0%OPEN →
Middle94.5%4,13212.8%OPEN →
Upper136.9%4,9409.0%OPEN →
Upper133.7%4,4148.2%OPEN →
Upper134.1%3,29213.7%OPEN →
Middle90.8%5,19715.3%OPEN →
Upper154.8%5,18910.8%OPEN →
Upper126.9%2,8329.4%OPEN →
Upper163.5%4,0759.0%OPEN →
Upper145.7%3,8819.9%OPEN →
Middle80.0%6,42116.1%OPEN →
Moderate75.2%2,67014.2%OPEN →
Moderate68.8%3,87323.3%OPEN →
Middle106.7%6,74614.3%OPEN →
Moderate76.9%5,76013.9%OPEN →
Middle97.2%3,32912.4%OPEN →
Middle108.2%3,86710.7%OPEN →
Middle97.1%2,83211.1%OPEN →
Upper126.1%5,65714.5%OPEN →
Middle116.2%5,07313.1%OPEN →
Upper142.9%4,8979.6%OPEN →
Moderate70.1%3,32335.9%OPEN →
Upper166.1%1,8479.3%OPEN →
Upper180.0%3,8759.3%OPEN →
Upper130.3%6,21910.6%OPEN →
Upper126.7%4,64210.5%OPEN →
Middle113.4%5,85511.3%OPEN →
Middle90.5%3,78111.3%OPEN →
Middle108.3%3,82312.3%OPEN →
Middle80.6%3,05124.4%OPEN →
Upper134.7%3,73910.1%OPEN →
Upper143.8%7,47611.4%OPEN →
Upper131.0%3,9899.1%OPEN →
Upper125.4%4,9129.7%OPEN →
Middle114.5%5,68812.0%OPEN →
Upper127.0%2,94410.7%OPEN →
Upper142.4%7,4769.0%OPEN →
Upper148.1%7,68217.8%OPEN →
Upper159.1%5,00314.8%OPEN →
Upper170.6%4,51210.0%OPEN →
Upper152.9%3,36918.2%OPEN →
Upper147.9%7,13118.2%OPEN →
Upper186.3%5,95315.1%OPEN →
Upper258.7%6,67720.0%OPEN →
Upper256.0%5,60024.7%OPEN →
Upper128.3%2,22724.6%OPEN →
Upper173.9%5,72138.3%OPEN →
Low31.4%3,09890.4%OPEN →
Middle119.4%3,87111.6%OPEN →
Upper153.2%3,6877.5%OPEN →
Upper176.4%5,29813.2%OPEN →

Source: FFIEC census-tract file (income level, MSA, urban/rural) and HMDA tract attributes (population, minority share, housing units), latest loaded activity year. The whole county is listed — the table is filtered and paged in the browser over the complete set, never a server-side slice of it.

Housing & households

U.S. Census American Community Survey 2024 estimates — the demand side behind the lending figures above.

Population

995,569

Median household income

$82,936

Median home value

$276,800

Median gross rent

$1,209

per month

Owner-occupied

69.2%

of occupied units

Housing units

446,192

7.2% vacant

Poverty rate

9.8%

Unemployment

4.3%

Natural-hazard exposure

FEMA National Risk Index ratings for this county — expected annual loss, social vulnerability and community resilience, plus the individual perils rated Relatively High or above.

Overall risk

Relatively High

score 99.3

Social vulnerability

Relatively Low

Community resilience

Relatively High

ELEVATED PERILS

Inland flooding Relatively High · Tornado Relatively High · Earthquake Relatively High · Hail Very High · Strong wind Relatively High · Heat wave Very High · Winter weather Very High

Federal disaster history

Months in which a FEMA disaster declaration was active in this county, from the declarations series.

Months with an active declaration

99

Declarations recorded

34

Incident types on record: Biological, Drought, Flood, Hurricane, Severe Ice Storm, Severe Storm, Tornado.

Everything we hold on St. Louis County

12 data areas have rows for this county. Each one is one click away below; the 18 we checked and did not find at county grain are named at the end with the reason.

LOAN-LEVEL

The individual HMDA application and origination records behind every figure on this page, pre-filtered to St. Louis County.

HMDA loan-level (hmda_loan_wide, county_code)

Open the loan explorer for St. Louis CountyEvery reported application and origination in FIPS 29189, filterable on rate, amount, income, purpose and action taken. Loan-level tier.

VA

VA-guaranteed lending in St. Louis County by fiscal year — the veteran channel, which HMDA counts but does not separate from the rest of the government book at this grain.

VA Loan Guaranty geographic loan volume (va_geo_loan_volume, county_fips), folded to fiscal year

VA loans · FY2026

879

Purchase share

42.2%

371 loans

IRRRL refinances

344

Cash-out refinances

164

2026879371344164
2025989499289201
2024791525129137
202372655016160
2022687263377
20212,6056951,575335
20202,1686831,191294
20191,139681157301
20181,209747124338
20171,434728343363
20161,376665462249
20151,238571442225

The most recent fiscal year is partial until VA closes it. This file carries no lender key, so VA volume cannot be attributed to a company.

BUILDING PERMITS

New residential units authorised in St. Louis County — the supply-side leading indicator that runs ahead of purchase originations.

Census Building Permits Survey county series (census_building_permits, geo_id at geo_level 'county')

HOUSING SUPPLY · CENSUS BUILDING PERMITS

St. Louis County building permits

New privately-owned housing units authorized by building permits — the supply-side leading indicator that runs ahead of housing starts and the purchase-origination pipeline. Single-family (SF, 1-unit) vs. multifamily (MF, 2+ units), by year.

Single-family · 2025

496

−27.8% vs 2024

Multifamily · 2025

461

−8.9% vs 2024

Total authorized · 2025

957

−19.8% vs 2024

Permit valuation · 2025

$438.9M

authorized construction value

Units authorized by year

St. Louis County · total permitted units · hover for the single-family split

UNITS · SF IN TOOLTIP
01.3K2.5K3.8K5K1990199219941996199820002002200420062008201020122014201620182020202220242025957 units

Source: U.S. Census Bureau Building Permits Survey (BPS), imputed totals (the published “units authorized” headline). SF = 1-unit; MF = 2+ units. Public no-login Census data. Attribution.

MIGRATION & WEALTH

IRS county-to-county migration flows for St. Louis County, showing population movement and wealth transfer.

IRS county-to-county migration flows (irs_county_migration, self_geoid)

inflow2223St. Louis city, MO6,58511,755$413.4M
outflow2223St. Louis city, MO5,1578,205$239.5M
outflow2223St. Charles County, MO3,8546,788$287.4M
inflow2223St. Charles County, MO2,5994,054$166.3M
outflow2223Jefferson County, MO2,2053,740$143.3M
inflow2223Jefferson County, MO1,7792,848$102.8M
inflow2223Other flows - South, DS1,6962,927$130.3M
outflow2223Other flows - South, DS1,6442,975$175.3M
inflow2223Other flows - Midwest, DS1,0541,684$72.9M
outflow2223Other flows - Midwest, DS1,0461,732$82.6M
inflow2223Other flows - West, DS6551,095$60.2M
inflow2223St. Clair County, IL6261,093$34.6M
inflow2223Madison County, IL563877$35.0M
outflow2223St. Clair County, IL560926$28.3M
outflow2223Madison County, IL555944$30.9M
outflow2223Other flows - West, DS541869$49.2M
outflow2223Franklin County, MO533873$58.0M
inflow2223Other flows - Northeast, DS525841$44.3M
outflow2223Cook County, IL512620$43.6M
outflow2223Other flows - Northeast, DS474848$63.0M
inflow2223Franklin County, MO344546$25.2M
inflow2223Cook County, IL316500$44.7M
inflow2223Boone County, MO286420$16.5M
outflow2223Dallas County, TX257365$19.4M
outflow2223Boone County, MO246344$11.5M
outflow2223Harris County, TX242432$15.5M
outflow2223Jackson County, MO241334$15.1M
outflow2223Maricopa County, AZ232377$23.3M
outflow2223Lincoln County, MO196345$12.9M
outflow2223Los Angeles County, CA190241$12.6M
outflow2223Foreign - Overseas, FR187309$22.8M
inflow2223Jackson County, MO185288$12.4M
inflow2223Greene County, MO179245$12.6M
inflow2223Los Angeles County, CA178264$14.5M
outflow2223Collin County, TX177361$19.3M
outflow2223New York County, NY168184$12.9M
inflow2223Maricopa County, AZ166274$13.0M
outflow2223King County, WA137201$17.6M
inflow2223Dallas County, TX136238$14.9M
inflow2223Lincoln County, MO136200$6.3M
outflow2223Tarrant County, TX135229$9.4M
outflow2223Johnson County, KS127190$13.5M
outflow2223Denver County, CO126155$13.2M
outflow2223Greene County, MO125206$7.1M
outflow2223Monroe County, IL124205$10.4M
inflow2223Cape Girardeau County, MO122192$8.0M
inflow2223Harris County, TX119236$8.6M
inflow2223Monroe County, IL118167$8.1M
outflow2223Travis County, TX117158$11.2M
outflow2223Warren County, MO113180$7.5M
outflow2223St. Francois County, MO111166$5.9M
outflow2223Hillsborough County, FL101183$14.0M
inflow2223St. Francois County, MO100137$4.4M
outflow2223San Diego County, CA99149$16.9M
inflow2223Warren County, MO96161$9.6M
outflow2223Lee County, FL94161$36.8M
outflow2223Cape Girardeau County, MO91141$5.7M
inflow2223Johnson County, KS91152$9.6M
outflow2223Davidson County, TN91120$5.9M
inflow2223San Diego County, CA89141$7.1M
outflow2223Mecklenburg County, NC88169$9.7M
inflow2223Denver County, CO88129$9.4M
inflow2223Tarrant County, TX87146$9.2M
outflow2223Denton County, TX86183$11.5M
inflow2223Clark County, NV84141$4.8M
outflow2223Clark County, NV84144$4.5M
inflow2223Cole County, MO82128$3.2M
outflow2223Fulton County, GA80145$10.2M
inflow2223Phelps County, MO74119$4.4M
outflow2223Pinellas County, FL74102$6.5M
outflow2223Bexar County, TX73129$4.3M
inflow2223Sangamon County, IL7397$6.0M
outflow2223Wake County, NC72127$8.7M
inflow2223Davidson County, TN71106$10.1M
inflow2223King County, WA68118$10.4M
outflow2223Hennepin County, MN6795$5.0M
outflow2223Camden County, MO67109$6.6M
inflow2223Foreign - Overseas, FR67130$11.2M
outflow2223Orange County, CA66108$7.2M
outflow2223Kings County, NY6673$4.5M
outflow2223Santa Clara County, CA6584$6.5M
inflow2223Travis County, TX6597$6.5M
outflow2223Palm Beach County, FL6596$15.8M
outflow2223Collier County, FL65127$38.4M
outflow2223Franklin County, OH6487$4.1M
outflow2223Cole County, MO64126$5.2M
outflow2223Marion County, IN6290$4.3M
inflow2223Orange County, CA60109$5.4M
inflow2223Collin County, TX59131$5.4M
inflow2223Shelby County, TN59117$4.1M
inflow2223Denton County, TX59115$4.4M
inflow2223Clay County, MO5985$3.5M
outflow2223Phelps County, MO5992$2.3M
outflow2223Middlesex County, MA5879$4.7M
outflow2223Shelby County, TN5888$2.6M
outflow2223DuPage County, IL5799$7.8M
inflow2223Fulton County, GA5696$6.7M
outflow2223Williamson County, TX5496$7.6M
inflow2223Pinellas County, FL5379$4.9M
outflow2223District of Columbia, DC5155$3.4M
inflow2223DuPage County, IL5081$7.2M
outflow2223Alameda County, CA5082$5.4M
inflow2223Franklin County, OH4987$3.6M
inflow2223Hillsborough County, FL4982$3.2M
outflow2223Clay County, MO4976$4.1M
outflow2223Orange County, FL4993$5.7M
outflow2223Foreign - Other flows, FR4985$2.9M
inflow2223New York County, NY4975$8.2M
outflow2223Fairfax County, VA4877$4.9M
inflow2223Lee County, FL4869$4.1M
outflow2223Arapahoe County, CO4878$3.6M
inflow2223Bexar County, TX4898$5.4M
inflow2223Miami-Dade County, FL4764$6.7M
outflow2223Suffolk County, MA4754$3.1M
outflow2223Cobb County, GA4788$4.7M
inflow2223Champaign County, IL4679$4.4M
outflow2223Broward County, FL4679$5.2M
inflow2223DeKalb County, GA4665$4.2M
inflow2223Ste. Genevieve County, MO4576$3.4M
outflow2223Duval County, FL4574$2.7M
outflow2223Miami-Dade County, FL4554$8.7M
outflow2223Sarasota County, FL4576$5.7M
inflow2223Broward County, FL4576$4.0M
outflow2223El Paso County, CO4470$3.5M
outflow2223Philadelphia County, PA4454$1.9M
outflow2223Salt Lake County, UT4470$4.9M
outflow2223Milwaukee County, WI4371$4.8M
outflow2223Sangamon County, IL4280$2.6M
inflow2223Arapahoe County, CO4263$4.8M
outflow2223Dane County, WI4258$2.6M
outflow2223DeKalb County, GA4290$27.5M
inflow2223Palm Beach County, FL4169$4.7M
outflow2223Douglas County, NE4054$3.2M
outflow2223Washington County, MO4072$2.3M
inflow2223Kings County, NY4062$2.6M
outflow2223Honolulu County, HI4083$2.5M
outflow2223Jefferson County, KY3962$2.5M
outflow2223Fort Bend County, TX3992$4.9M
outflow2223Ste. Genevieve County, MO3955$2.7M
outflow2223Wayne County, MI3966$2.6M
inflow2223Santa Clara County, CA3970$9.1M
outflow2223Gwinnett County, GA3986$2.3M
outflow2223Douglas County, CO3962$4.9M
inflow2223Foreign - Other flows, FR3982$2.5M
inflow2223District of Columbia, DC3850$3.6M
inflow2223Cobb County, GA3865$1.5M
inflow2223Marion County, IN3860$2.2M
outflow2223Manatee County, FL3876$15.8M
inflow2223Orange County, FL3761$2.5M
outflow2223Oakland County, MI3760$4.0M
outflow2223San Francisco County, CA3640$4.3M
outflow2223Pasco County, FL3666$3.4M
inflow2223Peoria County, IL3652$2.6M
inflow2223Salt Lake County, UT3661$3.6M
inflow2223Lake County, IL3659$3.5M
inflow2223Jefferson County, KY3544$2.2M
outflow2223Jefferson County, CO3545$3.2M
outflow2223Crawford County, MO3552$2.8M
outflow2223Queens County, NY3549$2.1M
outflow2223Tulsa County, OK3550$3.3M
inflow2223Collier County, FL3452$14.0M
inflow2223Fairfax County, VA3470$4.5M
outflow2223Larimer County, CO3452$3.0M
inflow2223Pima County, AZ3453$2.3M
inflow2223El Paso County, CO3462$2.3M
outflow2223Hudson County, NJ3343$2.1M
outflow2223Charleston County, SC3348$4.9M
inflow2223Philadelphia County, PA3345$2.7M
inflow2223Oklahoma County, OK3365$4.2M
outflow2223Benton County, AR3357$3.9M
inflow2223Gwinnett County, GA3263$1.0M
inflow2223Duval County, FL3245$1.7M
outflow2223Oklahoma County, OK3253$2.6M
outflow2223Cuyahoga County, OH3259$2.9M
inflow2223Clinton County, IL3242$1.6M
inflow2223Cuyahoga County, OH3153$2.1M
inflow2223Wayne County, MI3151$2.2M
inflow2223McLean County, IL3141$2.0M
outflow2223Peoria County, IL3152$1.4M
inflow2223Riverside County, CA3157$2.4M
inflow2223Adams County, IL3143$2.2M
outflow2223Polk County, IA3043$2.7M
inflow2223Pulaski County, AR3042$1.9M
inflow2223Williamson County, IL3040$1.7M
inflow2223Hennepin County, MN3057$3.3M
inflow2223Mecklenburg County, NC3052$2.6M
inflow2223Wake County, NC3044$3.3M
outflow2223Montgomery County, TX3052$2.6M
outflow2223Allegheny County, PA3047$2.9M
outflow2223Montgomery County, MD3056$2.4M
outflow2223Jersey County, IL3044$2.4M
outflow2223Boulder County, CO3045$2.1M
outflow2223San Mateo County, CA3040$3.7M
outflow2223Pulaski County, AR3050$1.5M
outflow2223Lake County, IL2962$5.5M
outflow2223Montgomery County, MO2946$1.4M
inflow2223Douglas County, NE2953$2.3M
inflow2223Crawford County, MO2943$1.4M
outflow2223Platte County, MO2838$2.2M
inflow2223Dane County, WI2831$1.9M

UAD APPRAISALS

FHFA Uniform Appraisal Dataset aggregates for St. Louis County.

FHFA UAD aggregate statistics (uad_aggregate_county, geoid) and appraisal-level public use file (uad_puf, county_fips)

2023PurchaseNo CharacteristicAll Appraisals8,857.0
2023PurchaseNo CharacteristicAll Appraisals0.2
2023RefinanceNo CharacteristicAll Appraisals2,584.0
2023PurchaseNo CharacteristicAll Appraisals1.0
2023BothNo CharacteristicAll Appraisals11,441.0
2023PurchaseNo CharacteristicAll Appraisals0.7
2023PurchaseNo CharacteristicAll Appraisals1.0
2023RefinanceNo CharacteristicAll Appraisals256,000.0
2023BothNo CharacteristicAll Appraisals285,000.0
2023PurchaseNo CharacteristicAll Appraisals290,000.0
2023PurchaseNo CharacteristicAll Appraisals0.1
2022PurchaseNo CharacteristicAll Appraisals1.0
2022BothNo CharacteristicAll Appraisals278,000.0
2022PurchaseNo CharacteristicAll Appraisals0.2
2022PurchaseNo CharacteristicAll Appraisals281,000.0
2022PurchaseNo CharacteristicAll Appraisals1.0
2022RefinanceNo CharacteristicAll Appraisals4,709.0
2022PurchaseNo CharacteristicAll Appraisals0.1
2022PurchaseNo CharacteristicAll Appraisals0.7
2022RefinanceNo CharacteristicAll Appraisals270,000.0
2022BothNo CharacteristicAll Appraisals14,674.0
2022PurchaseNo CharacteristicAll Appraisals9,965.0
2021PurchaseNo CharacteristicAll Appraisals1.0
2021RefinanceNo CharacteristicAll Appraisals316,000.0
2021BothNo CharacteristicAll Appraisals24,272.0
2021PurchaseNo CharacteristicAll Appraisals1.0
2021PurchaseNo CharacteristicAll Appraisals12,069.0
2021PurchaseNo CharacteristicAll Appraisals0.3
2021RefinanceNo CharacteristicAll Appraisals12,203.0
2021PurchaseNo CharacteristicAll Appraisals0.1
2021BothNo CharacteristicAll Appraisals294,000.0
2021PurchaseNo CharacteristicAll Appraisals0.6
2021PurchaseNo CharacteristicAll Appraisals270,000.0
2020PurchaseNo CharacteristicAll Appraisals0.1
2020PurchaseNo CharacteristicAll Appraisals1.0
2020BothNo CharacteristicAll Appraisals27,070.0
2020PurchaseNo CharacteristicAll Appraisals11,259.0
2020PurchaseNo CharacteristicAll Appraisals0.7
2020BothNo CharacteristicAll Appraisals305,000.0
2020RefinanceNo CharacteristicAll Appraisals344,000.0
2020RefinanceNo CharacteristicAll Appraisals15,811.0
2020PurchaseNo CharacteristicAll Appraisals250,000.0
2020PurchaseNo CharacteristicAll Appraisals1.0
2020PurchaseNo CharacteristicAll Appraisals0.3
2019PurchaseNo CharacteristicAll Appraisals0.0
2019PurchaseNo CharacteristicAll Appraisals1.0
2019BothNo CharacteristicAll Appraisals282,000.0
2019PurchaseNo CharacteristicAll Appraisals10,347.0
2019PurchaseNo CharacteristicAll Appraisals0.2
2019PurchaseNo CharacteristicAll Appraisals1.0
2019RefinanceNo CharacteristicAll Appraisals318,300.0
2019BothNo CharacteristicAll Appraisals20,216.0
2019RefinanceNo CharacteristicAll Appraisals9,869.0
2019PurchaseNo CharacteristicAll Appraisals250,000.0
2019PurchaseNo CharacteristicAll Appraisals0.7
2018RefinanceNo CharacteristicAll Appraisals270,000.0
2018BothNo CharacteristicAll Appraisals15,481.0
2018PurchaseNo CharacteristicAll Appraisals10,186.0
2018RefinanceNo CharacteristicAll Appraisals5,295.0
2018BothNo CharacteristicAll Appraisals258,000.0
2018PurchaseNo CharacteristicAll Appraisals252,000.0
2018PurchaseNo CharacteristicAll Appraisals0.8
2018PurchaseNo CharacteristicAll Appraisals0.0
2018PurchaseNo CharacteristicAll Appraisals0.2
2018PurchaseNo CharacteristicAll Appraisals1.0
2018PurchaseNo CharacteristicAll Appraisals1.0
2017RefinanceNo CharacteristicAll Appraisals271,000.0
2017PurchaseNo CharacteristicAll Appraisals1.0
2017PurchaseNo CharacteristicAll Appraisals1.0
2017PurchaseNo CharacteristicAll Appraisals0.2
2017PurchaseNo CharacteristicAll Appraisals0.0
2017BothNo CharacteristicAll Appraisals17,301.0
2017PurchaseNo CharacteristicAll Appraisals9,974.0
2017PurchaseNo CharacteristicAll Appraisals255,000.0
2017RefinanceNo CharacteristicAll Appraisals7,327.0
2017PurchaseNo CharacteristicAll Appraisals0.8
2017BothNo CharacteristicAll Appraisals263,000.0
2016PurchaseNo CharacteristicAll Appraisals9,122.0
2016RefinanceNo CharacteristicAll Appraisals306,500.0
2016PurchaseNo CharacteristicAll Appraisals1.0
2016PurchaseNo CharacteristicAll Appraisals250,000.0
2016PurchaseNo CharacteristicAll Appraisals0.8
2016PurchaseNo CharacteristicAll Appraisals0.0
2016BothNo CharacteristicAll Appraisals284,000.0
2016PurchaseNo CharacteristicAll Appraisals1.0
2016PurchaseNo CharacteristicAll Appraisals0.2
2016BothNo CharacteristicAll Appraisals22,431.0
2016RefinanceNo CharacteristicAll Appraisals13,309.0
2015PurchaseNo CharacteristicAll Appraisals1.0
2015PurchaseNo CharacteristicAll Appraisals240,000.0
2015PurchaseNo CharacteristicAll Appraisals0.2
2015RefinanceNo CharacteristicAll Appraisals285,000.0
2015BothNo CharacteristicAll Appraisals19,154.0
2015RefinanceNo CharacteristicAll Appraisals10,363.0
2015PurchaseNo CharacteristicAll Appraisals0.0
2015PurchaseNo CharacteristicAll Appraisals0.8
2015PurchaseNo CharacteristicAll Appraisals8,791.0
2015BothNo CharacteristicAll Appraisals265,000.0
2015PurchaseNo CharacteristicAll Appraisals1.0
2014BothNo CharacteristicAll Appraisals250,000.0

ECONOMY & INCOME

Local economy indicators — BLS unemployment rates and BEA personal income for St. Louis County.

BLS Local Area Unemployment Statistics (bls_laus_county_month, geoid) and BEA personal income (bea_county_income, geo_fips)

BLS Local Area Unemployment

2026-05526,997507,63319,3643.7%
2026-04526,334506,73719,5973.7%
2026-03524,482501,52922,9534.4%
2026-02521,666498,59423,0724.4%
2026-01522,377498,17124,2064.6%
2025-12526,470508,92217,5483.3%
2025-11528,162510,04718,1153.4%
2025-09526,181506,54419,6373.7%
2025-08531,832508,11023,7224.5%
2025-07536,717512,41124,3064.5%
2025-06532,999510,05622,9434.3%
2025-05528,691507,27421,4174.1%
2025-04527,884507,98419,9003.8%
2025-03523,945500,84723,0984.4%
2025-02521,900498,94822,9524.4%
2025-01521,440499,38722,0534.2%
2024-12521,926504,04717,8793.4%
2024-11523,996506,22017,7763.4%
2024-10526,477508,70317,7743.4%
2024-09524,593508,13216,4613.1%
2024-08529,451508,04821,4034.0%
2024-07536,827513,97022,8574.3%
2024-06530,315509,05521,2604.0%
2024-05526,097506,72019,3773.7%
2024-04523,781506,60617,1753.3%
2024-03521,232501,46119,7713.8%
2024-02519,639499,33820,3013.9%
2024-01519,931501,07918,8523.6%
2023-12517,391501,93515,4563.0%
2023-11521,577506,89014,6872.8%
2023-10524,199507,81916,3803.1%
2023-09519,677505,17914,4982.8%
2023-08527,015509,30817,7073.4%
2023-07531,581513,08818,4933.5%
2023-06525,176507,38517,7913.4%
2023-05522,353506,08616,2673.1%
2023-04519,984506,18913,7952.7%
2023-03518,485502,58515,9003.1%
2023-02514,226498,57415,6523.0%
2023-01512,696496,88815,8083.1%
2022-12512,800500,61312,1872.4%
2022-11513,165500,68912,4762.4%
2022-10516,112503,69212,4202.4%
2022-09510,430500,19910,2312.0%
2022-08515,623500,80714,8162.9%
2022-07519,728505,08214,6462.8%
2022-06514,829502,20812,6212.5%
2022-05512,611500,40812,2032.4%
2022-04510,397499,24111,1562.2%
2022-03512,225497,20515,0202.9%
2022-02508,484493,29915,1853.0%
2022-01509,426491,14018,2863.6%
2021-12511,605496,97314,6322.9%
2021-11512,385497,59714,7882.9%
2021-10513,913496,67717,2363.4%
2021-09510,486493,88316,6033.3%
2021-08512,442490,38222,0604.3%
2021-07518,736494,55524,1814.7%
2021-06515,045489,67325,3724.9%
2021-05511,981488,09623,8854.7%
2021-04511,579487,48224,0974.7%
2021-03509,880483,69426,1865.1%
2021-02510,195483,62326,5725.2%
2021-01505,721476,96228,7595.7%
2020-12511,421484,36727,0545.3%
2020-11509,435484,26425,1714.9%
2020-10513,258487,08526,1735.1%
2020-09513,593482,72330,8706.0%
2020-08520,941484,05836,8837.1%
2020-07530,323483,62946,6948.8%
2020-06508,173459,08749,0869.7%
2020-05478,364427,45450,91010.6%
2020-04484,558434,33550,22310.4%
2020-03520,140499,99220,1483.9%
2020-02522,313506,13516,1783.1%
2020-01520,878502,57018,3083.5%
2019-12524,654509,06315,5913.0%
2019-11524,427509,58114,8462.8%
2019-10523,964509,60214,3622.7%
2019-09523,899510,82713,0722.5%
2019-08525,527508,64816,8793.2%
2019-07531,751514,19717,5543.3%
2019-06526,508510,11416,3943.1%
2019-05519,289503,90515,3843.0%
2019-04517,872503,41214,4602.8%
2019-03518,375500,13418,2413.5%
2019-02517,371499,89317,4783.4%
2019-01513,759495,28718,4723.6%
2018-12516,984501,87715,1072.9%
2018-11513,464500,28713,1772.6%
2018-10515,519502,69812,8212.5%
2018-09514,781501,95612,8252.5%
2018-08517,259500,74816,5113.2%
2018-07526,655508,82717,8283.4%
2018-06521,914505,16216,7523.2%
2018-05516,822501,57815,2442.9%
2018-04516,157500,69115,4663.0%
2018-03514,764496,09018,6743.6%
2018-02513,417495,07518,3423.6%
2018-01509,720491,42018,3003.6%

BEA Personal Income

2024$104.03B992,929$105K
2023$99.88B990,875$101K
2022$92.39B991,881$93K
2021$89.80B998,785$90K
2020$79.22B1,003,376$79K
2019$72.23B1,003,948$72K
2018$70.14B1,003,465$70K
2017$65.08B1,003,764$65K
2016$65.05B1,004,125$65K
2015$61.98B1,006,398$62K
2014$60.29B1,004,799$60K
2013$57.66B1,003,726$57K
2012$60.49B1,003,039$60K
2011$55.13B1,001,292$55K
2010$53.73B999,074$54K
2009$51.00B998,618$51K
2008$54.09B998,331$54K
2007$52.07B999,389$52K
2006$50.24B1,002,050$50K
2005$47.47B1,004,109$47K
2004$45.59B1,007,813$45K
2003$44.25B1,011,678$44K
2002$42.96B1,014,359$42K
2001$42.08B1,016,243$41K
2000$41.50B1,016,178$41K
1999$38.93B1,016,040$38K
1998$38.15B1,015,518$38K
1997$36.00B1,018,015$35K
1996$33.89B1,017,517$33K
1995$32.39B1,015,210$32K
1994$30.30B1,012,647$30K
1993$28.86B1,007,949$29K
1992$27.68B1,003,544$28K
1991$26K

NFIP FLOOD CLAIMS

FEMA National Flood Insurance Program (NFIP) realised flood loss claims in St. Louis County.

FEMA NFIP redacted claims (nfip_claim, county_code)

2026-07-04$0$0$0Yes
2026-07-04$0No
2026-04-29$0Yes
2026-04-27$4K$4K$0Yes
2026-03-10$0$0$0Yes
2026-01-30$0No
2025-12-08$0No
2025-09-11$9K$9K$0Yes
2025-07-21$8K$8K$0Yes
2025-07-08$42K$42K$0Yes
2025-05-16$0No
2025-05-16$0Yes
2025-05-16$21K$20K$1KYes
2025-04-28$0Yes
2025-04-10$0Yes
2025-04-05$0$0$0Yes
2025-04-04$8K$8K$0Yes
2025-04-04$9K$9K$0Yes
2025-04-04$0$0$0Yes
2025-04-04$0$0$0Yes
2025-04-04$0Yes
2025-04-04$7K$7K$0Yes
2025-04-04$0$0$0Yes
2025-03-15$20K$20K$0Yes
2025-03-04$0$0$0Yes
2024-11-13$0Yes
2024-11-11$0$0$0No
2024-11-08$2K$2K$0No
2024-11-07$0$0$0Yes
2024-11-07$0$0$0Yes
2024-11-07$50K$50K$0No
2024-11-07$30K$15K$15KYes
2024-11-06$0$0$0Yes
2024-11-06$0$0$0No
2024-11-05$100K$0$100KNo
2024-11-05$30K$30K$0Yes
2024-11-05$32K$32K$0No
2024-11-05$12K$12K$0Yes
2024-11-05$2K$2K$0No
2024-11-05$150K$0$150KNo
2024-11-05$28K$28K$0No
2024-11-05$4K$4K$0Yes
2024-11-05$11K$11K$0Yes
2024-11-05$6K$6K$0Yes
2024-11-05$21K$21K$0Yes
2024-11-05$22K$14K$8KYes
2024-11-05$65K$65K$0No
2024-11-05$286K$0$286KNo
2024-11-05$104K$90K$14KNo
2024-11-05$18K$18K$0Yes
2024-11-05$185K$0$185KNo
2024-11-05$24K$23K$1KYes
2024-11-05$27K$27K$0No
2024-11-05$28K$0$28KNo
2024-11-05$12K$12K$0Yes
2024-11-05$32K$18K$15KYes
2024-11-05$26K$26K$0No
2024-11-05$122K$122K$0No
2024-11-05$36K$36K$0No
2024-11-05$20K$20K$0No
2024-11-05$9K$9K$0No
2024-11-05$80K$80K$0No
2024-11-05$134K$121K$13KYes
2024-11-05$6K$6K$0No
2024-11-05$7K$7K$0Yes
2024-11-05$4K$4K$0Yes
2024-11-05$0Yes
2024-11-05$14K$13K$2KYes
2024-11-05$70K$70K$0No
2024-11-05$3K$0$3KYes
2024-11-05$27K$27K$0No
2024-11-05$84K$84K$0No
2024-11-05$15K$15K$0Yes
2024-11-05$491K$0$491KNo
2024-11-05$8K$8K$0Yes
2024-11-05$4K$4K$0No
2024-11-05$13K$12K$890.15Yes
2024-11-05$284.96$284.96$0Yes
2024-11-05$93K$93K$0No
2024-11-05$0Yes
2024-11-05$0No
2024-11-05$8K$8K$0Yes
2024-11-05$66K$66K$0No
2024-11-05$127K$110K$17KNo
2024-11-05$142K$142K$0Yes
2024-11-05$26K$25K$1KYes
2024-11-05$483K$0$483KNo
2024-11-05$322K$322K$0No
2024-11-05$148K$47K$100KNo
2024-11-05$23K$23K$0Yes
2024-11-05$13K$3K$10KYes
2024-11-05$0$0$0Yes
2024-11-05$0$0$0No
2024-11-05$2K$0$2KNo
2024-11-05$191K$110K$81KNo
2024-11-05$28K$28K$0No
2024-11-05$11K$9K$2KNo
2024-11-05$10K$10K$0No
2024-11-05$255K$229K$26KNo
2024-11-05$452K$0$452KNo

ALSO CHECKED

18 more data areas were checked for St. Louis County and did not earn a tab. A missing tab and an unasked question look the same on screen, so each one is named with the reason it is missing.

  • WRONG GRAIN
    FHA

    FHA Neighborhood Watch DOES publish county rows, but keys them on a free-text county NAME (“CHITTENDEN|VT”), not a FIPS code, and the single-family endorsement snapshot's property_county is likewise free text. Joining either to a county FIPS by name would attribute one county's delinquency to another wherever a name repeats, so FHA is a state-grain tab only until a curated name→FIPS crosswalk exists

  • WRONG GRAIN
    Fannie / Freddie

    the FHFA public-use database publishes single-family acquisitions at STATE and CENSUS-TRACT grain; no county rollup is published or loaded, and rolling tracts up to counties would double-count the tracts that straddle a county line

  • WRONG GRAIN
    GSE credit-risk transfer

    CAS and STACR loan-level disclosures publish PROPERTY STATE and a 3-digit zip; neither carries a county code, so credit-risk-transfer collateral cannot be attributed to a county

  • WRONG GRAIN
    Ginnie Mae

    Ginnie Mae's loan-level disclosure publishes PROPERTY STATE and nothing finer — there is no county, ZIP or tract field in the file, so agency-pool collateral has no county grain at all. The same is true of the UMBS pool file (fhfa_mbs_pool), which carries only CA/NY/FL/TX/PR concentration percentages

  • WRONG GRAIN
    Housing finance agency

    a housing finance agency is a STATE-chartered body — county is not a grain it has. Its programmes reach counties, but the agency itself is one row per state: hfa_agency is keyed on state_code and carries no county column, and there is no county-level agency underneath it to aggregate from

  • WRONG GRAIN
    CUSO network

    the NCUA CUSO Registry publishes a CUSO's city and STATE and no county at all (cuso_registry, migration 0195). A county FIPS does exist on the member-credit-union side (cuso_credit_union_link.cu_county_fips), but it is the CREDIT UNION'S CHARTER ADDRESS — where the institution is registered, not where the mortgage service it buys is delivered — so a county tab built on it would pin a statewide, often multi-state, service relationship onto the one county a charter document happens to name

  • WRONG GRAIN
    Subservicing map

    the same absence, one grain finer: subservicing_relationships holds no property or collateral column at all, so there is nothing to aggregate to a county. Where a client is a state HFA, the state housing finance agency area on this hub carries that agency and its named master servicer at its own state grain

  • WRONG GRAIN
    Co-issue MSR

    the same absence, and worse at county grain: Ginnie's loan-level disclosure publishes property STATE and nothing finer — no county, ZIP or tract field exists in the file — so even the collateral split that is rejected above at state grain is not available here at all

  • WRONG GRAIN
    MSR transfer graph

    the same absence at a finer grain, with no additional route to one: ginnie_servicing_transfers has no county column and the Ginnie loan-level disclosure it would have to be joined to publishes property state and nothing finer — no county, ZIP or tract field exists in either file

  • WRONG GRAIN
    Builder & realtor JV

    the same absence, one grain finer: the affiliation corpus has no geographic column at all, so nothing can be aggregated to a county. The affiliate lender's actual county-level originations are on the HMDA area of the county hub, keyed on the lender rather than on its parent

  • WRONG GRAIN
    Non-QM deal calendar

    the same structural gap, one grain finer: a 144A non-QM deal publishes no asset-level file at all, so there is no loan, no property and therefore no county to attribute anything to. This is the one absence on this hub that no future load can close

  • WRONG GRAIN
    Agency-MBS demand

    the same absence, and Ginnie's disclosure has no county field at any grain, so even the collateral allocation that is rejected above at state grain cannot be computed here

  • WRONG GRAIN
    Complaints-rate stack

    the same broken denominator, plus a numerator that does not reach county either: the CFPB publishes a complaint's state and a partially redacted ZIP and no county, so neither half of this ratio exists at county grain

  • WRONG GRAIN
    NMLS licensing

    NMLS licences are issued by a STATE regulator and the industry report is published by state agency and quarter; there is no county in the licensing system to aggregate to

  • WRONG GRAIN
    CFPB complaints

    the CFPB publishes a complaint's STATE and a partially redacted ZIP; it publishes no county, and deriving one from a redacted ZIP would put complaints in the wrong county wherever a ZIP straddles a county line

  • WRONG GRAIN
    State enforcement

    enforcement orders are issued by a STATE regulator against a licensee; they carry no property or county

  • WRONG GRAIN
    WARN notices

    a WARN notice names an employer, a CITY and a region — no county code — and matching city to county by name is ambiguous in most states

  • WRONG GRAIN
    Mortgage employment

    the QCEW extract loaded here holds STATE and METRO area types only — the county-level QCEW file is a separate, far larger download that is not loaded, so county mortgage employment cannot be shown honestly

Several of the areas above are published only at state grain. They are all on the MO state hub, which carries the same registry at the grain those sources actually have.

Go deeper

EVERY HMDA RECORD IN ST. LOUIS COUNTYOpens the loan explorer already filtered to county FIPS 29189.

See the Missouri state market profile for the statewide picture, the Missouri state hub for every dataset we hold on the state in one place, or the national lender leaderboard for who is largest across every market.

Sources: HMDA public loan-level disclosure (CFPB/FFIEC) aggregated to county-year; U.S. Census Bureau American Community Survey; FEMA National Risk Index and disaster declarations. Figures are as loaded — see data attribution.

Fair-lending context: denial rates and demographic figures shown here are descriptive statistics derived from public HMDA and U.S. Census data. HMDA does not contain the credit, income, or underwriting variables that explain most lending outcomes, so a difference between lenders or areas is a statistical observation about published data — not evidence of, and not a determination of, discrimination or redlining by any institution.