Buffalo is a town located in Harding County, South Dakota. Buffalo has a 2026 population of 353. Buffalo is currently growing at a rate of 0.28% annually and its population has increased by 1.73% since the most recent census, which recorded a population of 347 in 2020.