W latach 1998–2007 zasiadał w radzie powiatu kaliskiego, pełniąc przez dwie kadencje (od 1998 do 2006) funkcję starosty. W 2001 i 2005 bez powodzenia kandydował do Sejmu. W wyborach parlamentarnych w 2007 uzyskał mandat poselski z listy koalicji Lewica i Demokraci, otrzymując w okręgu kaliskim 16 508 głosów. W kwietniu 2008 został członkiem Klubu Poselskiego Lewica (we wrześniu 2010 przekształconego w KP SLD). W wyborach w 2011 z powodzeniem ubiegał się o reelekcję, dostał 9941 głosów. W 2014 bezskutecznie startował do Parlamentu Europejskiego, a w wyborach w 2015 nie został ponownie wybrany do Sejmu.
W latach 2011–2015 był wiceprzewodniczącym Sojuszu Lewicy Demokratycznej. Pełnił funkcję przewodniczącego struktur tej partii w województwie wielkopolskim, został też przewodniczącym powstałej na bazie SLD Nowej Lewicy w powiecie kaliskim. W wyborach samorządowych w 2018 bezskutecznie kandydował do sejmiku wielkopolskiego. Został wicedyrektorem spółki wodno-ściekowej Prosna działającej w Kaliszu i ościennych gminach. W 2023 wystartował do Sejmu z ramienia Nowej Lewicy. W 2024 bez powodzenia ubiegał się o urząd burmistrza Opatówka.