St. Henry is a village located in Mercer County, Ohio. St. Henry has a 2026 population of 2,608. St. Henry is currently growing at a rate of 0.23% annually and its population has increased by 0.23% since the most recent census, which recorded a population of 2,602 in 2020.