Ashton is a city located in Osceola County, Iowa. Ashton has a 2026 population of 434. Ashton is currently declining at a rate of -0.23% annually and its population has decreased by -3.56% since the most recent census, which recorded a population of 450 in 2020.