Crystal Lake is located near Lake Michigan in Benzie County about 25 miles (40 km) southwest of Traverse City and about 2 miles (3 km) northeast of Frankfort at 44°39′N 86°09′W.
It measures approximately 2.5 by 8 miles (4 by 13 km), and has a maximum depth of 165 feet (50 m). At 9,854 acres (40 km2), it is Michigan’s ninth largest inland lake. Up to and through the American Civil War years Crystal Lake was known as “Cap Lake” due to the frequent whitecaps visible on its surface. Crystal Lake is adjacent to the southern reaches of the Sleeping Bear Dunes National Lakeshore.
In 1873, an effort was made to connect Crystal Lake with Lake Michigan via a channel. The lake level of Crystal Lake was higher than that of Lake Michigan and when the channel was opened, the water level in Crystal Lake dropped about 20 ft (6.1 m). Although the project was a failure, the lowering of the lake level uncovered sandy beaches, including the current public beach at Beulah.
The watershed that feeds Crystal Lake is very small, and fertilizer and sewage outflows are minimal, leading to the exceptionally clear and beautiful water that gives it its current name. The surface area of the lake is 35% of the total area of the drainage basin (land and water combined).