Highland Lake is a town in Blount County, Alabama, United States. At the 2010 census the population was 412.
Highland Lake is located in eastern Blount County at 33°53'3.376" North, 86°25'19.744" West (33.884271, -86.422151). The town consists of homes built around Highland Lake, a reservoir on the Blackburn Fork of the Little Warrior River. The lake, at an elevation of 895 feet (273 m) above sea level, is in a valley between Blount Mountain to the southeast and Straight Mountain to the northwest. The town is 7 miles (11 km) southwest of Oneonta, the county seat, along County Road 29.
According to the U.S. Census Bureau, the town of Highland Lake has a total area of 2.0 square miles (5.2 km2), of which 1.6 square miles (4.2 km2) is land and 0.35 square miles (0.9 km2), or 17.97%, is water.
As of the census of 2000, there were 408 people, 164 households, and 129 families residing in the town. The population density was 250.5 people per square mile (96.6/km2). There were 226 housing units at an average density of 138.8 per square mile (53.5/km2). The racial makeup of the town was 97.30% White, 0.25% Black or African American, 1.23% Native American, 0.74% Asian, and 0.49% from two or more races. 0.74% of the population were Hispanic or Latino of any race.