St. Charles, IA has a population of 765 and is the 16,907th largest city in the United States. The population density is 1,424 per sq mi which is 2506% higher than the Iowa average and 1471% higher than the national average. The median age in St. Charles is 38 which is approximately 1% lower than the Iowa average of 38. In St. Charles, 75% of the population over 15 years of age are married, 100% speak English and 0% speak Spanish. 87% of St. Charles residents were born in Iowa, 12% were born out of state, 0% were born outside of the United States and 0% were foreign born.