Horton Bay is located in the southwest corner of Bay Township, on the bay of the same name in Lake Charlevoix. Boyne City Road leads 6 miles (10 km) southeast to Boyne City and 9 miles (14 km) northwest to U.S. Route 31 near Charlevoix. Horton Bay Road leads north 5 miles (8 km) to US 31 near Bay Shore.