Początkowo zawodnik RKS Ursus, następnie gracz Legii Warszawa. 18 kwietnia 1998 roku zadebiutował w jej barwach w I lidze w meczu z Pogonią Szczecin, w którym strzelił także swojego pierwszego gola[1]. W sezonie 1999/2000 rozegrał dwa spotkania w Pucharze UEFA – wystąpił w pojedynkach z Wardarem Skopje (5:0) i Udinese Calcio (1:1)[2]. W latach 2000–2001 przebywał na wypożyczeniu w Stomilu Olsztyn, w którym był podstawowym zawodnikiem. Po powrocie do warszawskiego klubu został odesłany do rezerw[3]. W rundzie wiosennej sezonu 2002/2003 reprezentował barwy trzecioligowej Korony Kielce (strzelił sześć goli[4]). W lipcu 2003 roku rozwiązał z nią kontrakt ze względu na kontuzję[5].
Po wyborach w Polskim Związku Piłki Nożnej w 2012 został wybrany sekretarzem generalnym tej organizacji. Pracę rozpoczął 15 listopada[7]. Pracę na tym stanowisku zakończył 2 września 2021[8].
Do 2013 rekreacyjnie występował w A-klasowym Anprelu Nowa Wieś[7].