America's Most Affordable Mid-Size Cities
The sweet spot between big city amenities and small-town affordability (populations 25,000-49,999)
The Best of Both Worlds
Mid-size cities (populations 25,000-49,999) often represent the ideal balance for many Americans: they're large enough to offer solid employment opportunities, retail variety, and community services, yet small enough to maintain a more personal feel and, frequently, better affordability than major metro areas.
These rankings highlight the top 100 most and least affordable mid-size cities nationwide. Many of these communities combine strong local economies with housing markets that haven't experienced the extreme price inflation seen in larger cities, making them attractive for families, retirees, and remote workers seeking quality of life.
The affordability ratio (median home value ÷ median household income) reveals where mid-size cities offer the best value. Ratios below 4.0 indicate exceptional affordability, while those above 6.0 suggest housing costs may strain household budgets.
Exploring other city sizes? Check out our large cities, small cities, or town rankings for different population ranges.
Top 100 Most & Least Affordable Mid-Size Cities
✓ Most Affordable
Cities with the best value ratios
| Rank | City | State | Population | Ratio | Home Value |
|---|---|---|---|---|---|
| #1 | Youngstown | OH | 59,605 | 1.9 | $66,086 |
| #2 | Gary | IN | 68,604 | 2.3 | $84,964 |
| #3 | Enid | OK | 50,821 | 2.1 | $132,150 |
| #4 | Flint | MI | 80,835 | 1.7 | $62,416 |
| #5 | Port Arthur | TX | 55,779 | 2.6 | $121,183 |
| #6 | Lawton | OK | 90,662 | 2.6 | $137,192 |
| #7 | Anderson | IN | 54,930 | 2.8 | $130,804 |
| #8 | Waterloo | IA | 66,947 | 2.6 | $145,647 |
| #9 | Midwest City | OK | 58,170 | 2.9 | $165,266 |
| #10 | Atascocita | TX | 93,926 | 2.7 | $308,962 |
| #11 | Moore | OK | 63,045 | 2.9 | $219,390 |
| #12 | Madison | AL | 58,335 | 2.8 | $371,933 |
| #13 | Florissant | MO | 51,915 | 2.8 | $188,376 |
| #14 | Bartlett | TN | 56,998 | 3.2 | $320,005 |
| #15 | Leander | TX | 67,880 | 3.0 | $427,423 |
| #16 | North Little Rock | AR | 64,504 | 3.1 | $160,805 |
| #17 | Decatur | IL | 70,368 | 2.0 | $99,311 |
| #18 | Hammond | IN | 77,098 | 3.2 | $171,450 |
| #19 | Kokomo | IN | 59,375 | 3.3 | $176,874 |
| #20 | Albany | GA | 67,939 | 2.8 | $127,780 |
| #21 | Cuyahoga Falls | OH | 50,864 | 2.9 | $208,185 |
| #22 | Sioux City | IA | 85,651 | 2.9 | $190,790 |
| #23 | Muncie | IN | 64,739 | 3.4 | $146,684 |
| #24 | Parma | OH | 80,131 | 3.1 | $206,811 |
| #25 | Rowlett | TX | 64,139 | 3.2 | $364,547 |
| #26 | Taylor | MI | 62,405 | 2.9 | $173,614 |
| #27 | Lorain | OH | 65,207 | 3.2 | $146,577 |
| #28 | Pflugerville | TX | 65,162 | 3.3 | $370,796 |
| #29 | Lake Charles | LA | 81,679 | 3.5 | $199,558 |
| #30 | Dothan | AL | 71,118 | 3.7 | $203,243 |
| #31 | Warner Robins | GA | 81,438 | 3.2 | $208,268 |
| #32 | Columbus | IN | 51,104 | 3.5 | $272,222 |
| #33 | Jeffersonville | IN | 50,176 | 3.5 | $244,778 |
| #34 | Victoria | TX | 65,514 | 3.1 | $208,720 |
| #35 | Dundalk | MD | 65,441 | 3.5 | $219,212 |
| #36 | North Port | FL | 80,512 | 3.7 | $303,712 |
| #37 | Elyria | OH | 52,833 | 3.4 | $179,091 |
| #38 | Hoover | AL | 92,401 | 3.9 | $424,554 |
| #39 | Rocky Mount | NC | 54,175 | 3.5 | $183,047 |
| #40 | Terre Haute | IN | 58,491 | 3.7 | $154,626 |
| #41 | Fort Smith | AR | 89,496 | 3.6 | $190,855 |
| #42 | Kettering | OH | 57,442 | 3.3 | $237,014 |
| #43 | Livonia | MI | 94,058 | 3.1 | $299,768 |
| #44 | Wesley Chapel | FL | 71,965 | 3.7 | $401,105 |
| #45 | Edmond | OK | 95,618 | 3.4 | $349,474 |
| #46 | Mansfield | TX | 75,398 | 3.7 | $433,061 |
| #47 | Maple Grove | MN | 70,539 | 3.2 | $411,211 |
| #48 | Mishawaka | IN | 50,907 | 3.7 | $197,893 |
| #49 | Southaven | MS | 55,531 | 3.6 | $271,956 |
| #50 | Collierville | TN | 51,212 | 3.7 | $503,416 |
| #51 | Maricopa | AZ | 62,986 | 3.7 | $347,713 |
| #52 | Blue Springs | MO | 59,416 | 3.5 | $298,127 |
| #53 | Pontiac | MI | 61,914 | 3.1 | $133,814 |
| #54 | Pensacola | FL | 54,011 | 3.6 | $259,839 |
| #55 | Bowie | MD | 57,771 | 3.6 | $514,518 |
| #56 | Noblesville | IN | 71,940 | 3.7 | $380,118 |
| #57 | Waldorf | MD | 82,541 | 3.7 | $431,431 |
| #58 | Decatur | AL | 57,760 | 3.7 | $219,703 |
| #59 | Ankeny | IA | 70,542 | 3.1 | $334,054 |
| #60 | Apple Valley | MN | 55,696 | 3.7 | $365,370 |
| #61 | Royal Oak | MI | 57,880 | 3.4 | $319,254 |
| #62 | Coon Rapids | MN | 63,348 | 3.7 | $320,700 |
| #63 | Westland | MI | 84,155 | 3.3 | $207,049 |
| #64 | Westfield | IN | 51,109 | 3.9 | $460,785 |
| #65 | Missouri City | TX | 75,234 | 3.4 | $332,671 |
| #66 | Germantown | MD | 90,521 | 3.7 | $417,840 |
| #67 | Weston | FL | 67,952 | 5.1 | $718,689 |
| #68 | Marana | AZ | 54,487 | 4.0 | $433,562 |
| #69 | Battle Creek | MI | 52,392 | 3.4 | $173,604 |
| #70 | Bossier City | LA | 62,832 | 4.0 | $222,026 |
| #71 | Severn | MD | 58,041 | 3.9 | $503,999 |
| #72 | Woodbury | MN | 76,945 | 3.5 | $445,911 |
| #73 | Council Bluffs | IA | 62,564 | 3.4 | $219,330 |
| #74 | Owensboro | KY | 60,112 | 3.8 | $201,409 |
| #75 | Kyle | TX | 52,439 | 3.3 | $299,027 |
| #76 | Deltona | FL | 95,682 | 4.0 | $293,571 |
| #77 | Bellevue | NE | 64,355 | 3.3 | $287,326 |
| #78 | Dearborn Heights | MI | 62,099 | 3.4 | $207,782 |
| #79 | Texas City | TX | 54,159 | 3.3 | $216,449 |
| #80 | San Angelo | TX | 99,507 | 3.5 | $226,297 |
| #81 | Buckeye | AZ | 99,844 | 4.0 | $395,546 |
| #82 | Eagan | MN | 68,158 | 3.6 | $388,292 |
| #83 | Jonesboro | AR | 79,187 | 4.2 | $219,661 |
| #84 | Mission | TX | 86,234 | 3.6 | $217,419 |
| #85 | Joplin | MO | 52,218 | 3.9 | $201,443 |
| #86 | Lakeville | MN | 72,480 | 3.4 | $474,512 |
| #87 | Brooklyn Park | MN | 84,349 | 4.0 | $340,585 |
| #88 | Blaine | MN | 71,261 | 3.6 | $371,317 |
| #89 | Tinley Park | IL | 55,007 | 3.0 | $316,572 |
| #90 | Pharr | TX | 79,809 | 3.3 | $162,550 |
| #91 | Farmington Hills | MI | 83,316 | 3.7 | $375,089 |
| #92 | Longview | TX | 82,765 | 3.6 | $227,042 |
| #93 | Dubuque | IA | 59,271 | 3.7 | $238,103 |
| #94 | Bloomington | MN | 88,838 | 3.9 | $350,410 |
| #95 | Levittown | NY | 51,557 | 5.0 | $700,170 |
| #96 | Eden Prairie | MN | 63,249 | 3.8 | $483,311 |
| #97 | Scranton | PA | 76,074 | 3.8 | $189,534 |
| #98 | Plymouth | MN | 79,526 | 3.7 | $492,996 |
| #99 | Little Elm | TX | 51,426 | 3.5 | $405,677 |
| #100 | Kenner | LA | 65,113 | 4.1 | $265,697 |
! Least Affordable
Cities with the highest cost burden
| Rank | City | State | Population | Ratio | Home Value |
|---|---|---|---|---|---|
| #1 | Santa Barbara | CA | 88,024 | 17.2 | $1,750,001 |
| #2 | Lakewood | NJ | 69,884 | 9.7 | $560,615 |
| #3 | Passaic | NJ | 69,651 | 9.5 | $541,799 |
| #4 | Union City | NJ | 66,375 | 8.5 | $558,746 |
| #5 | Watsonville | CA | 51,968 | 10.9 | $814,889 |
| #6 | Bellingham | WA | 92,367 | 9.9 | $650,268 |
| #7 | Perth Amboy | NJ | 55,278 | 8.3 | $482,993 |
| #8 | Santa Cruz | CA | 60,953 | 11.5 | $1,278,302 |
| #9 | San Rafael | CA | 60,604 | 11.5 | $1,254,854 |
| #10 | Redwood City | CA | 82,423 | 11.8 | $1,773,489 |
| #11 | Lawrence | MA | 88,297 | 8.6 | $498,080 |
| #12 | East Orange | NJ | 69,183 | 7.8 | $467,863 |
| #13 | Huntington Park | CA | 53,658 | 11.5 | $653,839 |
| #14 | Trenton | NJ | 89,966 | 7.3 | $343,445 |
| #15 | Bozeman | MT | 55,042 | 8.8 | $706,945 |
| #16 | Davis | CA | 66,801 | 9.4 | $823,542 |
| #17 | New Brunswick | NJ | 55,744 | 7.2 | $435,330 |
| #18 | Missoula | MT | 75,600 | 8.4 | $551,907 |
| #19 | National City | CA | 55,960 | 10.3 | $664,226 |
| #20 | Fall River | MA | 93,764 | 8.1 | $435,100 |
| #21 | Plainfield | NJ | 54,515 | 6.4 | $511,950 |
| #22 | Novato | CA | 52,689 | 9.2 | $1,029,019 |
| #23 | Flagstaff | AZ | 76,333 | 9.5 | $643,336 |
| #24 | North Miami | FL | 59,429 | 8.0 | $413,851 |
| #25 | Florence-Graham | CA | 61,723 | 9.4 | $576,402 |
| #26 | Bayonne | NJ | 70,468 | 7.0 | $569,724 |
| #27 | Hemet | CA | 90,646 | 8.2 | $437,574 |
| #28 | Franklin | TN | 85,575 | 7.8 | $894,314 |
| #29 | Corvallis | OR | 60,424 | 8.6 | $549,862 |
| #30 | Santa Fe | NM | 88,224 | 8.2 | $573,099 |
| #31 | South San Francisco | CA | 64,487 | 8.6 | $1,172,884 |
| #32 | Napa | CA | 78,816 | 8.4 | $859,745 |
| #33 | Camarillo | CA | 70,244 | 8.2 | $899,106 |
| #34 | Upland | CA | 78,940 | 7.9 | $801,811 |
| #35 | Coeur d'Alene | ID | 55,558 | 8.2 | $579,271 |
| #36 | West New York | NJ | 51,683 | 6.3 | $421,655 |
| #37 | Chino Hills | CA | 78,024 | 7.8 | $958,111 |
| #38 | Petaluma | CA | 59,321 | 8.0 | $873,579 |
| #39 | Rosemead | CA | 50,340 | 12.2 | $884,613 |
| #40 | San Marcos | TX | 68,920 | 6.0 | $308,529 |
| #41 | South Gate | CA | 91,836 | 9.5 | $675,194 |
| #42 | Lynwood | CA | 65,291 | 9.5 | $665,107 |
| #43 | Taunton | MA | 59,719 | 6.3 | $498,591 |
| #44 | Norwalk | CT | 91,375 | 6.0 | $629,541 |
| #45 | Olympia | WA | 55,583 | 6.9 | $532,144 |
| #46 | Cathedral City | CA | 52,047 | 7.1 | $478,665 |
| #47 | Paramount | CA | 52,546 | 8.9 | $629,730 |
| #48 | Walnut Creek | CA | 69,790 | 7.4 | $1,000,777 |
| #49 | Clifton | NJ | 89,247 | 6.0 | $589,348 |
| #50 | Hawthorne | CA | 85,933 | 11.7 | $854,358 |
| #51 | Mount Vernon | NY | 72,528 | 7.4 | $568,250 |
| #52 | Indio | CA | 90,669 | 6.5 | $510,637 |
| #53 | Chino | CA | 91,775 | 7.2 | $746,341 |
| #54 | Pine Hills | FL | 82,264 | 4.9 | $271,081 |
| #55 | Montebello | CA | 61,376 | 10.6 | $796,674 |
| #56 | Homestead | FL | 80,725 | 7.1 | $439,689 |
| #57 | Highland | CA | 56,690 | 6.9 | $534,368 |
| #58 | Westminster | CA | 90,147 | 12.6 | $1,042,816 |
| #59 | San Ramon | CA | 85,734 | 7.5 | $1,478,395 |
| #60 | Colton | CA | 53,798 | 7.0 | $485,733 |
| #61 | Kissimmee | FL | 79,504 | 7.0 | $359,033 |
| #62 | Chapel Hill | NC | 59,889 | 7.2 | $619,837 |
| #63 | Portland | ME | 68,505 | 7.2 | $545,069 |
| #64 | Mount Pleasant | SC | 92,662 | 7.0 | $853,153 |
| #65 | Asheville | NC | 94,369 | 6.8 | $455,703 |
| #66 | Palm Desert | CA | 51,551 | 6.8 | $543,164 |
| #67 | Carson City | NV | 58,364 | 6.8 | $484,855 |
| #68 | Logan | UT | 53,923 | 6.7 | $382,080 |
| #69 | Monterey Park | CA | 59,639 | 11.5 | $893,912 |
| #70 | Hempstead | NY | 58,569 | 7.4 | $614,144 |
| #71 | Revere | MA | 59,933 | 7.4 | $600,497 |
| #72 | Danbury | CT | 86,086 | 5.6 | $465,454 |
| #73 | Bellflower | CA | 77,396 | 10.0 | $777,003 |
| #74 | Gardena | CA | 59,765 | 9.6 | $763,527 |
| #75 | Pawtucket | RI | 75,280 | 5.7 | $383,696 |
| #76 | Marietta | GA | 61,773 | 6.7 | $466,582 |
| #77 | Nashua | NH | 91,131 | 5.3 | $486,677 |
| #78 | Apple Valley | CA | 75,478 | 6.5 | $427,378 |
| #79 | Lakewood | WA | 63,034 | 7.2 | $506,352 |
| #80 | Lauderhill | FL | 73,961 | 4.3 | $213,805 |
| #81 | Auburn | AL | 78,738 | 7.2 | $404,543 |
| #82 | Madera | CA | 67,133 | 6.5 | $415,205 |
| #83 | Alhambra | CA | 81,483 | 10.6 | $902,157 |
| #84 | Lake Havasu City | AZ | 58,037 | 6.9 | $454,887 |
| #85 | Baldwin Park | CA | 70,720 | 8.9 | $702,886 |
| #86 | Schenectady | NY | 68,521 | 5.6 | $314,396 |
| #87 | Yakima | WA | 96,810 | 6.0 | $354,312 |
| #88 | Springfield | OR | 61,642 | 6.1 | $407,660 |
| #89 | Deerfield Beach | FL | 86,742 | 4.7 | $269,183 |
| #90 | La Mesa | CA | 60,835 | 10.2 | $859,789 |
| #91 | Merced | CA | 89,766 | 6.5 | $391,535 |
| #92 | Compton | CA | 93,525 | 8.3 | $617,206 |
| #93 | Miami Beach | FL | 81,319 | 7.6 | $508,138 |
| #94 | Lacey | WA | 57,088 | 5.8 | $501,964 |
| #95 | Galveston | TX | 53,348 | 5.6 | $317,814 |
| #96 | Redlands | CA | 72,985 | 6.3 | $622,049 |
| #97 | Newport Beach | CA | 84,304 | 21.5 | $3,414,154 |
| #98 | Bradenton | FL | 56,289 | 5.8 | $350,618 |
| #99 | Lodi | CA | 67,008 | 6.0 | $508,692 |
| #100 | Carmichael | CA | 78,070 | 6.5 | $545,563 |
How Rankings Are Calculated
Rankings are based on the affordability ratio (median home value ÷ median household income). Lower ratios indicate more affordable cities where homes cost less relative to what residents earn.
- Mid-Size Cities: Population between 25,000 and 49,999
- Very Affordable: Ratio below 4.0 (homes cost less than 4× annual income)
- Moderate: Ratio between 4.0-6.0
- Expensive: Ratio above 6.0 (homes cost more than 6× annual income)
See our methodology page for complete details on data sources and calculations.