Balsam Lake is located at 45°27'6" North, 92°27'15" West (45.451944, -92.454444).
According to the United States Census Bureau, the village has a total area of 3.27 mi2 (8.47 km2). 2.03 mi2 (5.25 km2) of it is land and 1.25 mi2 (3.23 km2) of it is covered by water. The total area is 38.09% water.
Balsam Lake is located in the Central Standard Time (CST) timezone, GMT-06:00. It observes Daylight Saving Time (DST).