W latach 2002–2006 zasiadał w radzie miasta Bydgoszcz. Od 23 stycznia 2006 do 23 lipca 2007 zajmował stanowisko podsekretarza stanu w Ministerstwie Sportu, od 23 lipca 2007 do 26 listopada 2007 podsekretarza stanu w Ministerstwie Sportu i Turystyki. W 2006 został także radnym Sejmiku Województwa Kujawsko-Pomorskiego, objął w nim stanowisko wiceprzewodniczącego. Bez powodzenia ponownie startował do Sejmu w przedterminowych wyborach w 2007 z listy PiS (otrzymał 5364 głosy). W 2010 ponownie wybrano go do sejmiku.

W 2011 kandydował w wyborach parlamentarnych z 1. miejsca na liście komitetu wyborczego Prawa i Sprawiedliwości w okręgu wyborczym nr 11 w Sieradzu i uzyskał mandat poselski. Oddano na niego 17 808 głosów (5,24% głosów oddanych w okręgu). W 2015 z powodzeniem ubiegał się o poselską reelekcję (dostał 15 948 głosów). 28 września 2016 został sekretarzem stanu w KPRM.