Como internacional absoluto, Pedro sumó 65 internacionalidades y 17 goles. Representó a , de la que es el duodécimo máximo goleador con 12 goles, en las fases finales de las Eurocopas de 2012 y 2016, en las de las Copas del Mundo de Sudáfrica 2010 y Brasil 2014, y en la Copa Confederaciones de 2013. Su debut internacional se produjo el 29 de mayo de 2010 en el Tivoli Neu de Austria, en un partido amistoso en el que España ganó por 3 a 2 a . Entró en el minuto 59 en sustitución de David Silva y lució el dorsal 18.