Clarksville is a city in Butler County, Iowa, United States, along the Shell Rock River. The population was 1,264 at the 2020 census. A post office opened in Clarksville in 1861. According to the United States Census Bureau, the city has a total area of 1.37 square miles, of which 1.33 square miles is land and 0.04 square miles is water.