2012 verpasste er über 3000 Meter mit 7:38,13 min nur knapp den deutschen Hallenrekord von Dieter Baumann. Kurz danach blieb er bei einem Hallenrennen über zwei Meilen mit 8:10,78 min ebenso wie der Brite Mo Farah (8:08,07 min) unter der 29 Jahre alten Europa-Bestzeit des Belgiers Emiel Puttemans (8:13,2 min). Bei den Hallenweltmeisterschaften in Istanbul wurde er über 3000 Meter Achter. Bei den Leichtathletik-Europameisterschaften 2012 in Helsinki gewann er hinter Mo Farah die Silbermedaille über 5000 Meter. Über 3000 Meter lief er am 17. August in Stockholm in 7:35,43 min die bis dahin zweitbeste Zeit eines deutschen Läufers. Bei den Olympischen Spielen in London schied er im Vorlauf aus.