Cossogno borders the following municipalities: Malesco, Miazzina, Premosello-Chiovenda, San Bernardino Verbano, Trontano, Valle Cannobina, Verbania. Part of its territory is included in the Val Grande National Park.