El jugador disputó sus primeros partidos como profesional durante la temporada 2008-09 con el Celta de Vigo, en la segunda división. Durante esa temporada, combinó partidos con el primer equipo, el filial y el Juvenil de División de Honor.[cita requerida]
Altos registros en Madrid
El 31 de agosto de 2009 el Real Madrid se hizo con el fichaje de esta joven promesa por 1,5 millones de euros, pero decidió dejarle cedido durante un año en el Celta de Vigo.[11] Tras una temporada en la que sólo consiguió anotar 4 goles en 24 encuentros, se fue a Madrid para jugar en el filial del equipo blanco, el Real Madrid Castilla Club de Fútbol.
En la temporada 2010-11, jugó con en el filial blanco, el Real Madrid Castilla, siendo el máximo goleador del equipo con 14 goles junto a Álvaro Morata. Debutó en el primer equipo el 21 de mayo de 2011 ante la Unión Deportiva Almería, entrando en el minuto 85 por el delantero Karim Benzema y marcando el octavo gol del cuadro merengue apenas un par de minutos después.[12] El 20 de diciembre de 2011, disputó su segundo partido oficial con el Real Madrid en la Copa del Rey contra la S. D. Ponferradina. Saltó al campo, con el dorsal 29, en el minuto 76 en sustitución de Benzema y marcó el cuarto gol de su equipo a pase de Callejón. Finalmente los blancos ganaron el partido por 5-1.[13]
La temporada siguiente, el Real Madrid Castilla quedó primero en el grupo I, lo que les otorgó el derecho a jugar la fase de ascenso de campeones. En ella el filial conseguiría regresar a la Segunda División después de 5 años tras derrotar al Cádiz C. F. por un resultado global de 8-1. En la ida el equipo blanco logró una victoria de 0-3, en dicho partido anotó dos goles, uno solo frente al portero, el otro sería rematando de tacón un centro raso de Daniel Carvajal, la vuelta se jugó en el Estadio Alfredo Di Stéfano con otra victoria por 5-1, en este partido marcó también un gol.[14] El 1 de junio de 2012, en la ida del partido final de la Segunda División B de España que jugaban contra el C. D. Mirandés, anotó 2 goles, el primero de penalti, después de que su compañero Álvaro Morata cayera dentro del área después de una entrada del portero, que se llevaría la tarjeta roja. El segundo llegaría con el centro de Álvaro Morata, que Joselu remató. El partido terminó con un resultado de 3-0 a favor de los madridistas. En el segundo partido de la final, marcó 2 goles, el primero tras un centro de Daniel Carvajal y el otro de penalti. El resultado del partido fue otro 3-0 que daba el Campeonato de la Segunda División B a su equipo. Además del Campeonato, el jugador se llevó el trofeo de Pichichi de la Segunda División B por haber marcado 24 goles.
Etapa en Alemania
En el verano de 2012, el jugador fue traspasado al club alemán del TSG 1899 Hoffenheim por 6 millones de euros. El Real Madrid se reservó una opción de recompra válida por dos años.[15] Anotó su primer gol con el TSG 1899 Hoffenheim contra el VfB Stuttgart. Volvió a marcar, esta vez por partida doble, contra el SpVgg Greuther Fürth. En el partido contra el Fortuna Düsseldorf anotó de cabeza un tanto que supuso el 1-1 en el marcador, siendo esté el resultado final del encuentro.[16]
Debido al cambio de entrenador pasó a ser suplente y contar con pocos minutos,a pesar de esto logró marcar su quinto gol de la temporada, la que finalizó con 25 partidos y 5 goles en total. Para la temporada 2013-2014 pasó en calidad de cedido al Eintracht Frankfurt, equipo con el que jugaría la Europa League.[17] Su primer partido oficial con el Eintracht Frankfurt fue contra el FV Illertissen en la copa alemana, en este partido no solo debutó oficialmente sino que también marcó su primer gol oficial[18]
Al final de su primera temporada con Hoffenhiem, admitió que tuvo problemas para adaptarse a su nuevo entorno y fue cedido al Eintracht Frankfurt para la temporada 2013-14. Recuperó su forma bajo las órdenes de Armin Veh en el Commerzbank Arena, anotando 14 goles en 33 partidos, ya que terminó en la posición 13 y llegaron a la fase eliminatoria de la Liga Europa de la UEFA 2013-14.
El 9 de junio de 2014 se unió al Hannover 96 en un contrato por cuatro años por 5 millones de euros.[19] En su única temporada allí hizo 32 apariciones, anotando 10 goles.
Periplo en Inglaterra
El 16 de junio de 2015 jugó en la Premier League al fichar por el Stoke City por 5,75 millones de libras. Debutó el 15 de agosto contra el Tottenham Hotspur en el minuto 59 como sustituto por Jonathan Walters. Jugó 27 partidos para el Stoke en la temporada 2015-16, anotando cuatro goles. Su equipo terminó en la novena posición.
El 31 de agosto de 2016 regresó a Galicia, uniéndose a las filas del Deportivo de La Coruña en un acuerdo de cesión durante toda la temporada.[20] Al finalizar la misma recaló por dos años en el Newcastle United Football Club, donde tampoco logró continuidad y decidió regresar nuevamente a España.
Consolidación en Vitoria
En julio de 2019 se oficializó su traspaso al Deportivo Alavés con un contrato de tres temporadas.[21][22] Pasado ese tiempo se marchó siendo, con 36 goles, el máximo goleador del club en Primera División.[23]
R. C. D. Espanyol
El 27 de junio de 2022 inició una nueva etapa deportiva en el R. C. D. Espanyol firmando para los siguientes tres años.[24] En el primero de ellos consiguió el Trofeo Zarra gracias a sus 16 goles, pero no pudo ayudar al equipo a evitar el descenso a Segunda División.[25]
Vuelta al Real Madrid
El 19 de junio de 2023 anunciaría su marcha en calidad de cedido al Real Madrid C. F. por una temporada volviendo así al club merengue 11 años después.[26] Este fue clave en la vuelta de las semifinales de la Liga de Campeones, donde anotó un doblete saliendo desde el banquillo en tres minutos, que sirvió al Madrid para clasificarse a la final,[27] que terminaría ganando el Real Madrid por 2-0 frente al Borussia Dortmund, dándole al conjunto merengue su 15.º título de la Liga de Campeones y a Joselu su 1.ª Liga de Campeones con 34 años.[28] Al terminar la temporada, el club de Chamartín decidió pagar su cláusula de 1,5 millones de euros, pero sin embargo, unos días más tarde, el jugador decidió fichar por el Al-Gharafa.[1]
Selección nacional
Ha sido internacional con las categorías inferiores de la selección española, marcando tres goles con la sub-19 y uno con la sub-21. Comentó que a él le encantaría jugar con la selección española porque se siente español, pero que también es futbolista y quiere ganar títulos, por lo tanto si no le llama España, no le importaría ir con la selección alemana.[29][30]
El 17 de marzo de 2023 fue convocado con la selección de España para los partidos de clasificación para la Eurocopa 2024 ante Noruega y Escocia.[32] El 25 de marzo debutó ante Noruega, saliendo como suplente en el minuto 81 y anotando dos goles en tres minutos.[33] España logró la clasificación para el torneo y fue incluido en la lista de 26 que acudieron a Alemania,[34] donde ganaron el título tras derrotar a Inglaterra en la final.[35]