The river originates in the Spirit Ridge, 25 kilometers (16 mi) southwest from the town of Spirit River, at an elevation of 920 meters (3,020 ft). It flows eastwards through the Municipal District of Spirit River No. 133, then by Rycroft, south of the Birch Hills into Birch Hills County. There it flows into the Saddle River (AKA Burnt River), at an elevation of 440 meters (1,440 ft); the Saddle River empties after 25 kilometers (16 mi) into the Peace River east of Dunvegan.