Johan Olsson er født og oppvokst i Karlstad, og har studert på Musikkhøgskolen i Gøteborg og på Det Kongelige Danske Operaakademi i København, hvor han tok eksamen våren 2019.
Høsten 2016 tillbragte han i Freiburg im Breisgau i Tyskland, hvor han studerte tysk.
I løpet av sine studier har han sunget roller som Don Basilio i Figaros Bryllup og Ferrando i Così fan tutte, begge av Mozart, men også utdrag fra Rossinis operaer La Cenerentola og Italienerinnen i Algerie, samt The Rakes Progress av Stravinsky.
På Det Kongelige Teaters lille scene har han sunget Oronte i Händels Alcina og Arnalta i Monteverdis Poppeas Kroning, og debuterte på Det Kongelige Teaters hovedscene år 2017 i rollen som Postiglione i Puccinis La Fanciulla del West.
Siden sommeren 2019 har Johan bodd og freelancet i Oslo.Utenom opera er han aktiv som solist innen kirkemusikk, og har fremført tenorpartier i verker som Händels Messias, Bachs Juloratorium og Passioner, Orffs Carmina Burana, Mendelssohns Elias, Rossinis Stabat Mater samt Skapelsen av Haydn.