W wyborach w 1991 i 1993 bez powodzenia ubiegał się o mandat poselski z ramienia Konfederacji Polski Niepodległej w województwie gdańskim. Był przewodniczącym KPN w okręgu gdańskim. Później należał do Ruchu Stu, a w 2001 dołączył do PO. W wyborach parlamentarnych w 2005 bez powodzenia kandydował z jej ramienia do Sejmu, a w wyborach w 2007 uzyskał mandat poselski, otrzymując w okręgu gdańskim 11 742 głosy. W 2009 został członkiem sejmowej komisji śledczej ds. zbadania nielegalnych nacisków na kształt ustawy o grach i zakładach wzajemnych. W wyborach w 2011 z powodzeniem ubiegał się o reelekcję, dostał 14 346 głosów. 6 sierpnia 2012 został powołany na stanowisko sekretarza stanu w Ministerstwie Zdrowia.

W 2015 został przewodniczącym PO w województwie pomorskim, wygrywając z ówczesnym marszałkiem Senatu Bogdanem Borusewiczem, funkcję tę pełnił do 2021. W 2015 ponownie uzyskał mandat poselski, otrzymując 20 514 głosów. W Sejmie VIII kadencji został przewodniczącym klubu parlamentarnego PO, a także zastępcą przewodniczącego Komisji Odpowiedzialności Konstytucyjnej, pracował też w Komisji Zdrowia (2015) oraz Komisji Finansów Publicznych (2015–2017).