The Town Files

The 50 Best Affordable Small Towns to Retire in America With Mild Winters

Ranked on The Town Files lifestyle rankings among 7,696 towns of 2,500–10,000 people in the U.S., scoring every town on all of these at once. #1 is Falfurrias, TX.

Map of the 50 towns1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
Numbers match the ranking.
The 50 Best Affordable Small Towns to Retire in America With Mild Winters1. Falfurrias, TXscore 922. Haskell, TXscore 893. Ajo, AZscore 894. Coleman, TXscore 885. Unadilla, GAscore 886. Clarksville, TXscore 887. Chattahoochee, FLscore 888. Jonesboro, LAscore 889. Jena, LAscore 8710. Bushnell, FLscore 8611. Silver Springs, FLscore 8612. Providence, KYscore 8613. Philadelphia, MSscore 8614. Taylor Lake Village, TXscore 8615. Corning, ARscore 8516. Jourdanton, TXscore 8517. Ozona, TXscore 8518. Campbell, FLscore 8419. Seymour, TXscore 8420. Richland, MSscore 8421. Clifton, TXscore 8422. Stamford, TXscore 8323. Ruleville, MSscore 8324. San Saba, TXscore 8225. Karnes City, TXscore 82
  1. 50Triana, Alabama

    Retirement: 79th percentile · January average low (°F): 81st percentile · Home value ÷ income: 76th percentile

    2,890 people · Madison County · median home $278,200 · income $110,100 · Jan low 33°F · 2 in snow

  2. 49Blennerhassett, West Virginia

    Retirement: 83rd percentile · January average low (°F): 63rd percentile · Home value ÷ income: 90th percentile

    3,118 people · Wood County · median home $179,800 · income $88,487 · Jan low 24°F · 11 in snow

  3. 48Leland, Mississippi

    Retirement: 91st percentile · January average low (°F): 83rd percentile · Home value ÷ income: 62nd percentile

    3,988 people · Washington County · median home $109,700 · income $37,406 · Jan low 34°F · 0 in snow

  4. 47Zellwood, Florida

    Retirement: 69th percentile · January average low (°F): 95th percentile · Home value ÷ income: 73rd percentile

    2,758 people · Orange County · median home $184,000 · income $70,278 · Jan low 44°F · 0 in snow

  5. 46Pinckneyville, Illinois

    Retirement: 82nd percentile · January average low (°F): 63rd percentile · Home value ÷ income: 92nd percentile

    5,066 people · Perry County · median home $133,500 · income $69,583 · Jan low 24°F · 9 in snow

  6. 45Childress, Texas

    Retirement: 66th percentile · January average low (°F): 74th percentile · Home value ÷ income: 97th percentile

    5,737 people · Childress County · median home $85,900 · income $57,644 · Jan low 29°F · 6 in snow

  7. 44Humboldt, Tennessee

    Retirement: 72nd percentile · January average low (°F): 73rd percentile · Home value ÷ income: 92nd percentile

    7,874 people · Gibson County · median home $102,300 · income $52,917 · Jan low 28°F · 4 in snow

  8. 43Smithton, Illinois

    Retirement: 83rd percentile · January average low (°F): 63rd percentile · Home value ÷ income: 92nd percentile

    4,006 people · St. Clair County · median home $256,300 · income $135,455 · Jan low 24°F · 12 in snow

  9. 42Trenton, Illinois

    Retirement: 90th percentile · January average low (°F): 63rd percentile · Home value ÷ income: 85th percentile

    2,690 people · Clinton County · median home $178,200 · income $80,795 · Jan low 24°F · 10 in snow

  10. 41Cisco, Texas

    Retirement: 67th percentile · January average low (°F): 77th percentile · Home value ÷ income: 94th percentile

    3,883 people · Eastland County · median home $104,300 · income $58,550 · Jan low 30°F · 2 in snow

  11. 40Olney, Texas

    Retirement: 89th percentile · January average low (°F): 76th percentile · Home value ÷ income: 73rd percentile

    3,007 people · Young County · median home $95,100 · income $36,250 · Jan low 30°F · 1 in snow

  12. 39Redstone, Pennsylvania

    Retirement: 89th percentile · January average low (°F): 53rd percentile · Home value ÷ income: 97th percentile

    5,079 people · Fayette County · median home $90,800 · income $59,954 · Jan low 21°F · 28 in snow

  13. 38Balm, Florida

    Retirement: 85th percentile · January average low (°F): 98th percentile · Home value ÷ income: 58th percentile

    6,541 people · Hillsborough County · median home $345,300 · income $114,659 · Jan low 51°F · 0 in snow

  14. 37Benton, Kentucky

    Retirement: 87th percentile · January average low (°F): 72nd percentile · Home value ÷ income: 82nd percentile

    4,756 people · Marshall County · median home $157,000 · income $66,827 · Jan low 27°F · 4 in snow

  15. 36Reidland, Kentucky

    Retirement: 93rd percentile · January average low (°F): 66th percentile · Home value ÷ income: 82nd percentile

    4,526 people · McCracken County · median home $228,000 · income $99,423 · Jan low 25°F · 4 in snow

  16. 35Hopkins, South Carolina

    Retirement: 65th percentile · January average low (°F): 87th percentile · Home value ÷ income: 90th percentile

    2,514 people · Richland County · median home $99,300 · income $50,063 · Jan low 37°F · 1 in snow

  17. 34Soperton, Georgia

    Retirement: 73rd percentile · January average low (°F): 82nd percentile · Home value ÷ income: 87th percentile

    2,889 people · Treutlen County · median home $69,900 · income $33,146 · Jan low 34°F · 0 in snow

  18. 33Vienna, Georgia

    Retirement: 70th percentile · January average low (°F): 86th percentile · Home value ÷ income: 87th percentile

    2,928 people · Dooly County · median home $120,300 · income $57,736 · Jan low 37°F · 0 in snow

  19. 32Lebanon, Illinois

    Retirement: 88th percentile · January average low (°F): 63rd percentile · Home value ÷ income: 92nd percentile

    4,691 people · St. Clair County · median home $170,700 · income $88,750 · Jan low 24°F · 11 in snow

  20. 31Edna, Texas

    Retirement: 59th percentile · January average low (°F): 94th percentile · Home value ÷ income: 90th percentile

    5,987 people · Jackson County · median home $117,800 · income $59,600 · Jan low 44°F · 0 in snow

  21. 30Pilesgrove, New Jersey

    Retirement: 94th percentile · January average low (°F): 70th percentile · Home value ÷ income: 79th percentile

    4,183 people · Salem County · median home $383,300 · income $158,281 · Jan low 27°F · 17 in snow

  22. 29Williamstown, West Virginia

    Retirement: 99th percentile · January average low (°F): 58th percentile · Home value ÷ income: 87th percentile

    2,997 people · Wood County · median home $182,500 · income $89,013 · Jan low 23°F · 22 in snow

  23. 28Houston, Mississippi

    Retirement: 99th percentile · January average low (°F): 80th percentile · Home value ÷ income: 66th percentile

    3,797 people · Chickasaw County · median home $122,800 · income $44,023 · Jan low 32°F · 1 in snow

  24. 27Hamilton, Alabama

    Retirement: 81st percentile · January average low (°F): 73rd percentile · Home value ÷ income: 92nd percentile

    7,042 people · Marion County · median home $106,300 · income $54,871 · Jan low 28°F · 1 in snow

  25. 26Hallettsville, Texas

    Retirement: 89th percentile · January average low (°F): 95th percentile · Home value ÷ income: 62nd percentile

    2,731 people · Lavaca County · median home $163,000 · income $55,718 · Jan low 45°F · 0 in snow

  26. 25Karnes City, Texas

    Retirement: 61st percentile · January average low (°F): 90th percentile · Home value ÷ income: 95th percentile

    3,111 people · Karnes County · median home $93,400 · income $55,354 · Jan low 39°F · 0 in snow

  27. 24San Saba, Texas

    Retirement: 89th percentile · January average low (°F): 81st percentile · Home value ÷ income: 76th percentile

    3,117 people · San Saba County · median home $124,000 · income $50,373 · Jan low 33°F · 0 in snow

  28. 23Ruleville, Mississippi

    Retirement: 93rd percentile · January average low (°F): 81st percentile · Home value ÷ income: 76th percentile

    2,642 people · Sunflower County · median home $85,000 · income $33,480 · Jan low 33°F · 1 in snow

  29. 22Stamford, Texas

    Retirement: 78th percentile · January average low (°F): 74th percentile · Home value ÷ income: 98th percentile

    2,907 people · Jones County · median home $64,700 · income $46,940 · Jan low 29°F · 3 in snow

  30. 21Clifton, Texas

    Retirement: 93rd percentile · January average low (°F): 83rd percentile · Home value ÷ income: 76th percentile

    3,465 people · Bosque County · median home $160,000 · income $64,653 · Jan low 34°F · 0 in snow

  31. 20Richland, Mississippi

    Retirement: 75th percentile · January average low (°F): 86th percentile · Home value ÷ income: 92nd percentile

    7,137 people · Rankin County · median home $125,800 · income $66,558 · Jan low 37°F · 1 in snow

  32. 19Seymour, Texas

    Retirement: 97th percentile · January average low (°F): 74th percentile · Home value ÷ income: 82nd percentile

    2,575 people · Baylor County · median home $93,200 · income $40,212 · Jan low 28°F · 2 in snow

  33. 18Campbell, Florida

    Retirement: 64th percentile · January average low (°F): 97th percentile · Home value ÷ income: 92nd percentile

    2,610 people · Osceola County · median home $77,200 · income $40,411 · Jan low 48°F · 0 in snow

  34. 17Ozona, Texas

    Retirement: 78th percentile · January average low (°F): 76th percentile · Home value ÷ income: 100th percentile

    2,663 people · Crockett County · median home $66,900 · income $81,622 · Jan low 30°F

  35. 16Jourdanton, Texas

    Retirement: 74th percentile · January average low (°F): 91st percentile · Home value ÷ income: 90th percentile

    4,094 people · Atascosa County · median home $171,000 · income $83,512 · Jan low 40°F · 0 in snow

  36. 15Corning, Arkansas

    Retirement: 89th percentile · January average low (°F): 73rd percentile · Home value ÷ income: 94th percentile

    3,227 people · Clay County · median home $89,500 · income $50,408 · Jan low 28°F · 5 in snow

  37. 14Taylor Lake Village, Texas

    Retirement: 79th percentile · January average low (°F): 96th percentile · Home value ÷ income: 82nd percentile

    3,704 people · Harris County · median home $388,900 · income $165,875 · Jan low 46°F · 0 in snow

  38. 13Philadelphia, Mississippi

    Retirement: 84th percentile · January average low (°F): 82nd percentile · Home value ÷ income: 92nd percentile

    7,118 people · Neshoba County · median home $97,300 · income $50,788 · Jan low 34°F · 0 in snow

  39. 12Providence, Kentucky

    Retirement: 93rd percentile · January average low (°F): 65th percentile · Home value ÷ income: 100th percentile

    2,892 people · Webster County · median home $60,300 · income $55,121 · Jan low 25°F · 9 in snow

  40. 11Silver Springs, Florida

    Retirement: 63rd percentile · January average low (°F): 96th percentile · Home value ÷ income: 100th percentile

    2,844 people · Marion County · median home $30,800 · income $32,074 · Jan low 46°F · 0 in snow

  41. 10Bushnell, Florida

    Retirement: 67th percentile · January average low (°F): 93rd percentile · Home value ÷ income: 99th percentile

    3,047 people · Sumter County · median home $67,600 · income $52,717 · Jan low 43°F · 0 in snow

  42. 9Jena, Louisiana

    Retirement: 82nd percentile · January average low (°F): 86th percentile · Home value ÷ income: 92nd percentile

    4,155 people · LaSalle Parish · median home $139,700 · income $71,730 · Jan low 36°F · 1 in snow

  43. 8Jonesboro, Louisiana

    Retirement: 86th percentile · January average low (°F): 85th percentile · Home value ÷ income: 92nd percentile

    4,106 people · Jackson Parish · median home $80,300 · income $41,786 · Jan low 36°F · 0 in snow

  44. 7Chattahoochee, Florida

    Retirement: 83rd percentile · January average low (°F): 91st percentile · Home value ÷ income: 90th percentile

    2,955 people · Gadsden County · median home $101,700 · income $51,964 · Jan low 40°F

  45. 6Clarksville, Texas

    Retirement: 89th percentile · January average low (°F): 79th percentile · Home value ÷ income: 96th percentile

    2,857 people · Red River County · median home $53,700 · income $33,014 · Jan low 32°F · 2 in snow

  46. 5Unadilla, Georgia

    Retirement: 85th percentile · January average low (°F): 84th percentile · Home value ÷ income: 96th percentile

    3,118 people · Dooly County · median home $60,600 · income $36,875 · Jan low 35°F · 0 in snow

  47. 4Coleman, Texas

    Retirement: 94th percentile · January average low (°F): 84th percentile · Home value ÷ income: 87th percentile

    3,912 people · Coleman County · median home $71,900 · income $34,613 · Jan low 35°F · 2 in snow

  48. 3Ajo, Arizona

    Retirement: 89th percentile · January average low (°F): 95th percentile · Home value ÷ income: 82nd percentile

    3,039 people · Pima County · median home $124,400 · income $53,958 · Jan low 45°F · 0 in snow

  49. 2Haskell, Texas

    Retirement: 99th percentile · January average low (°F): 74th percentile · Home value ÷ income: 95th percentile

    3,089 people · Haskell County · median home $104,500 · income $62,378 · Jan low 29°F · 3 in snow

  50. 1Falfurrias, Texas

    Retirement: 86th percentile · January average low (°F): 94th percentile · Home value ÷ income: 96th percentile

    4,609 people · Brooks County · median home $79,900 · income $49,167 · Jan low 43°F · 0 in snow

Price vs ranking

Median home value vs ranking, U.S. towns0255075100$37K$341K$645K$948K$1252KMedian home valuePercentile
Orange squares are the 50 towns on this list; green dots are other towns on The Town Files in the U.S..

More U.S. rankings

Same ranking, other places

Methodology. We ranked 7,696 towns of 2,500–10,000 people in the U.S. (2020 Census population; towns with 2,500+ people have pages so far). Lifestyle measures are The Town Files lifestyle rankings, built from federal demographic, school, crime and housing data (2025), shown as percentiles. The combined score is the average of the percentiles shown for each town; a town must be above the middle on every one. Only towns better than 60% of their peers on this measure qualify, so lists can be shorter than 25. Sources: