New Harmony is a historic town on the Wabash River in Harmony Township, Posey County, Indiana. It lies 15 miles north of Mount Vernon, the county seat, and is part of the Evansville metropolitan area. The town's population was 690 at the 2020 census.