It flows 338 kilometers in a southerly direction from its headwaters at Spanish Lake (west branch) and Duke Lake (east branch) to its mouth at the North Channel on Georgian Bay, Lake Huron just outside the community of Spanish.