Cottonwood is a town located in Houston County, Alabama. Cottonwood has a 2026 population of 1,093. Cottonwood is currently growing at a rate of 0.18% annually and its population has increased by 3.6% since the most recent census, which recorded a population of 1,055 in 2020.