De Savinja ontspringt bij Logarska Dolina, hoog in de Karavanken, het gebergte op de grens van Oostenrijk en Slovenië, waarna ze zich via 90 m hoge watervallen naar beneden stort. Vervolgens mondt ze uit in de Sava, een rivier die even onder Villach in Oostenrijk ontspringt en aanvankelijk door het grensgebied met Slovenië stroomt. Na lange tijd de grens tussen Bosnië en het noordelijk deel van Kroatië gevormd te hebben, mondt de Sava tenslotte in de stad Belgrado uit in de Donau.