Affton is a census-designated place (CDP) in St. Louis County, Missouri, United States, near St. Louis. The population was 20,307 at the 2010 census.