Šventosios ištakos yra Dūkšto ežeras, telkšantis Gražutės regioniniame parke. Šventosios aukštupys, esantis Ignalinos, Zarasų ir Rokiškio rajonuose yra labai ežeringas. Už aukštupio upė teka į pietvakarius lygesniu kraštovaizdžiu. Prateka Utenos, Anykščių, Ukmergės, Jonavos rajonais. Įteka į Nerį netoli Jonavos ties „Achema“.