Small towns where homes cost the least compared with local pay
Here a typical home costs the fewest years of the typical household's income. Across the U.S. it's about 4.1 years.
How we picked
- 2,500 to 75,000 people, and not a suburb of a bigger city
- An emergency room within 30 miles (straight line)
- Population not down more than 5% since 2020 (the book warns against dying towns)
- Ranked by typical home value divided by typical household income (Census survey, 2020-2024)
| # | Town | Years of income | Typical home | Household income | Emergency room |
|---|---|---|---|---|---|
| 1 | Clifton, AZ | 0.8 | $66,000 | $78,480 | 30 mi |
| 2 | Raymondville, TX | 1 | $52,200 | $51,442 | 20 mi |
| 3 | Bushnell, IL | 1.1 | $71,900 | $67,518 | 11 mi |
| 4 | Stanton, TX | 1.1 | $100,000 | $92,923 | In town |
| 5 | Shenandoah, PA | 1.1 | $49,500 | $45,294 | 9 mi |
| 6 | Providence, KY | 1.1 | $60,300 | $55,121 | 15 mi |
| 7 | Gillespie, IL | 1.1 | $91,000 | $82,772 | 8 mi |
| 8 | Ashland, PA | 1.1 | $58,800 | $52,708 | 11 mi |
| 9 | St. Clair, PA | 1.1 | $71,800 | $64,304 | 3 mi |
| 10 | Johnstown, PA | 1.2 | $45,400 | $37,888 | In town |
| 11 | Charleroi, PA | 1.2 | $52,800 | $43,265 | 3 mi |
| 12 | Georgetown, IL | 1.2 | $71,800 | $58,182 | 11 mi |
| 13 | Lansford, PA | 1.2 | $55,800 | $44,713 | 9 mi |
| 14 | Virden, IL | 1.3 | $101,300 | $80,577 | 17 mi |
| 15 | Tilton, IL | 1.3 | $70,400 | $55,697 | 3 mi |
| 16 | Bicknell, IN | 1.3 | $66,300 | $52,188 | 11 mi |
| 17 | Hoopeston, IL | 1.3 | $78,100 | $60,861 | In town |
| 18 | Colorado City, TX | 1.3 | $69,500 | $53,448 | In town |
| 19 | Littlefield, TX | 1.3 | $79,400 | $60,636 | In town |
| 20 | Coffeyville, KS | 1.3 | $60,800 | $45,670 | In town |
| 21 | Beardstown, IL | 1.4 | $82,100 | $60,587 | 10 mi |
| 22 | Parsons, KS | 1.4 | $71,700 | $52,428 | In town |
| 23 | Stamford, TX | 1.4 | $64,700 | $46,940 | 11 mi |
| 24 | Christopher, IL | 1.4 | $66,600 | $48,247 | 8 mi |
| 25 | Arcola, IL | 1.4 | $124,100 | $89,827 | 14 mi |
| 26 | Chester, IL | 1.4 | $111,700 | $80,625 | In town |
| 27 | Mahanoy City, PA | 1.4 | $52,400 | $37,727 | 9 mi |
| 28 | Paris, IL | 1.4 | $75,700 | $53,927 | In town |
| 29 | Kane, PA | 1.4 | $73,600 | $52,353 | In town |
| 30 | Monmouth, IL | 1.4 | $86,800 | $61,138 | In town |
| 31 | Norway, MI | 1.4 | $91,100 | $63,846 | 6 mi |
| 32 | Muleshoe, TX | 1.4 | $98,600 | $69,097 | In town |
| 33 | Tonkawa, OK | 1.4 | $84,300 | $58,767 | 9 mi |
| 34 | Kewanee, IL | 1.4 | $73,200 | $50,886 | In town |
| 35 | Oil City, PA | 1.4 | $74,100 | $51,316 | 5 mi |
| 36 | Iola, KS | 1.4 | $78,300 | $54,221 | In town |
| 37 | Ford City, PA | 1.5 | $84,400 | $57,971 | 3 mi |
| 38 | New Cordell, OK | 1.5 | $106,600 | $73,107 | In town |
| 39 | Robinson, IL | 1.5 | $109,100 | $73,993 | In town |
| 40 | Childress, TX | 1.5 | $85,900 | $57,644 | In town |
| 41 | Slaton, TX | 1.5 | $84,600 | $56,676 | 14 mi |
| 42 | Savanna, IL | 1.5 | $72,400 | $48,036 | 16 mi |
| 43 | Alexandria, IN | 1.5 | $97,800 | $64,317 | 9 mi |
| 44 | Shamokin, PA | 1.5 | $60,400 | $39,690 | 13 mi |
| 45 | Bradford, PA | 1.5 | $85,600 | $56,161 | 14 mi |
| 46 | Ulysses, KS | 1.5 | $97,400 | $63,857 | In town |
| 47 | Du Quoin, IL | 1.5 | $83,100 | $54,409 | In town |
| 48 | Summit Hill, PA | 1.5 | $99,700 | $65,268 | 7 mi |
| 49 | Chanute, KS | 1.5 | $78,000 | $50,882 | In town |
| 50 | Diboll, TX | 1.5 | $89,100 | $57,902 | 10 mi |
Sources: U.S. Census Bureau (2025 population estimates; American Community Survey 2020-2024), Medicare hospital data, NOAA climate normals, the National Park Service and the Education Department, as on each town page. Census survey figures are estimates; towns where the survey is too thin for a figure are left off lists that use it. Miles are straight-line. Data last updated October 5, 2026.
Every list is a starting point, not a verdict. Read the town's page, then visit before you move. Search every town your own way with Find a small town.