W reprezentacji Polski zadebiutował 6 grudnia 2006 w spotkaniu przeciwko Zjednoczonym Emiratom Arabskim, wygranym przez Polskę 5:2. 28 maja 2008 został powołany na Mistrzostwa Europy w Austrii i Szwajcarii. Na turnieju zagrał jeden raz – 16 czerwca 2008 w przegranym meczu z Chorwacją. Został powołany przez selekcjonera kadry Franciszka Smudę na Euro 2012, jednak w samym turnieju nie wystąpił w żadnym meczu. Swoją pierwszą bramkę w reprezentacji zdobył 11 września 2012 w meczu z Mołdawią. 30 maja 2016 roku znalazł się w prowadzonej przez selekcjonera Adama Nawałkę kadrze reprezentacji Polski na Mistrzostwa Europy we Francji, stając się w ten sposób pierwszym polskim piłkarzem (obok Łukasza Piszczka) powołanym na Euro trzykrotnie.