W 2000 roku obrany liderem opozycyjnej wówczas Szkockiej Partii Narodowej, uzyskał 547 głosów wobec 268 oddanych na Alexa Neila. Mimo porażki SNP w wyborach do Izby Gmin w 2001 i do Parlamentu Szkockiego w 2003, pozostał liderem partii, zdobywając we wrześniu 2003 roku 577 z 688 głosów delegatów. Jednak po kolejnej przegranej w wyborach do Parlamentu Europejskiego w 2004 roku zrezygnował z przewodzenia ugrupowaniu.
W 2005 roku został rzecznikiem partii ds. finansów w gabinecie cieni Alexa Salmonda. Po wygranej SNP w wyborach w 2007 powołano go na stanowisko sekretarza ds. finansów. 21 listopada 2014 pierwsza minister Nicola Sturgeon mianowała Swinneya swoim zastępcą. W 2016 przeniesiony z funkcji sekretarza ds. finansów na urząd sekretarza ds. edukacji. W 2020 i 2021 przeprowadzono głosowania nad wnioskami o wotum nieufności wobec Swinneya, które nie uzyskały większości dzięki sprzeciwowi posłów Szkockiej Partii Zielonych. 18 maja 2021 odwołany ze stanowiska sekretarza ds. edukacji i mianowany sekretarzem ds. naprawy skutków COVID-19. Po dymisji Nicoli Sturgeon w marcu 2023 odszedł z funkcji rządowych.