According to the United States Census Bureau, the town has a total area of 64.0 square miles (165.8 km²), of which, 57.4 square miles (148.7 km²) of it is land and 6.6 square miles (17.0 km²) of it (10.27%) is water.
Hayward is located 71 miles southeast of Superior, 27 miles northeast of Spooner, and 57 miles southwest of Ashland.