O municipio está situado no nordés do landskap de Västergötland, tendo unha pequena parte no sueste de Värmland (o distrito de Södra Råda), na ribeira leste do lago Vänern. O concello de Gullspång limita ao norte co de Kristinehamn no condado de Värmland, ao leste cos de Degerfors e Laxå no condado de Örebro, ao sur co de Töreboda e ao suroeste co de Mariestad. Ao oeste o municipio ten unha fronteira marítima co concello de Säffle en Värmland.