Im Januar 2005 kam Olsson als Zehnter in Nové Město (15 Kilometer) erstmals unter die Top Ten in einem Weltcuprennen. 2005 startete Olsson in Oberstdorf zum ersten Mal bei Nordischen Skiweltmeisterschaften. Der Debütant wurde in vier Rennen eingesetzt, beste Ergebnisse waren der siebte Rang mit der Staffel und ein 19. Platz über 50 Kilometer. Ein Jahr später trat er bei den Rennen in Pragelato auch erstmals bei Olympischen Spielen an. Das beste seiner drei Ergebnisse auf Einzelstrecken war ein sechster Rang im 15-Kilometer-Rennen. Mit der Staffel um Mathias Fredriksson, Anders Södergren und Mats Larsson gewann er überraschend die Bronzemedaille. Anschließend gewann Olsson bei den schwedischen Meisterschaften Bronzemedaillen in der Verfolgung und über 50 Kilometer. Die Nordischen Skiweltmeisterschaften 2007 in Sapporo war auch erfolgreich, er belegte über 15 Kilometer den siebenten Platz.