Bagley is a city in Guthrie County, Iowa, United States. The population was 303 in the 2010 census, a decline from 354 in 2000 census. It is part of the Des Moines–West Des Moines Metropolitan Statistical Area.
Bagley is located at 41°50′48″N 94°25′44″W / 41.84667°N 94.42889°W / 41.84667; -94.42889 (41.846675, -94.428814).
According to the United States Census Bureau, the city has a total area of 0.3 square miles (0.8 km²), all of it land.