 It lies north of the Missouri border, and approximately 40 miles south of Des Moines.According to the United States Census Bureau, the city has a total area of , of which is land and is water.Osceola was named after a Seminole Indian leader of the same name.