Pod koniec lat 90. wstąpił do Ruchu Społecznego AWS, potem przez kilka miesięcy należał do Stronnictwa Konserwatywno-Ludowego. W 2001 przystąpił do Platformy Obywatelskiej. W 2002 z jej listy bez powodzenia kandydował na radnego warszawskiej dzielnicy Mokotów. W latach 2005–2010 był przewodniczącym koła PO w Wilanowie, następnie objął tę funkcję na Ursynowie. W 2006 zasiadł w radzie krajowej partii, a w 2007 został sekretarzem regionu mazowieckiego. W wyborach w 2006 został wybrany do rady m.st. Warszawy, gdzie stanął na czele klubu radnych PO. Rok później bez powodzenia kandydował do Sejmu. W 2010 zastąpił Stefana Kotlewskiego na stanowisku wicemarszałka województwa mazowieckiego.

W wyborach w 2010 uzyskał mandat radnego sejmiku mazowieckiego IV kadencji. W tym samym roku po raz drugi wszedł w skład zarządu województwa w randze wicemarszałka. W wyborach parlamentarnych w 2011 uzyskał mandat posła na Sejm VII kadencji z okręgu stołecznego. W rezultacie zrezygnował z funkcji samorządowych. W 2013 wszedł z ramienia PO w skład Komisji do Spraw Służb Specjalnych w miejsce wycofanego z niej Konstantego Miodowicza.