Mattsson ylsi ensimmäisen kerran aikuisten tason SM-mitaleille 15-vuotiaana kesällä 2009, jolloin hän saavutti pronssia 100 metrin rintauinnissa. Samana kesänä Tampereella järjestetyillä nuorten olympiafestivaaleilla hän saavutti hopeamitalin samalla matkalla. Vuonna 2010 Mattsson sijoittui Singaporessa järjestetyissä nuorten kesäolympialaisissa 200 metrin rintauinnissa kahdeksanneksi. Tammikuussa 2011 Mattsson voitti lyhyen radan Suomen mestaruuden 200 metrin rintauinnissa yli viiden sekunnin erolla hopeamitalistiin. Myöhemmin keväällä Mattsson rikkoi OST-rajan Lontoon vuoden 2012 kesäolympialaisiin, millä perusteella hänelle jaettiin myöhemmin olympiapaikka FINA-pisteiden perusteella. Kesällä Mattsson saavutti SM-hopeaa 100 metrin rintauinnista. Heinäkuun alussa hän ui nuorten EM-kilpailujen välierässä 200 metrin rintauinnin Suomen ennätyksen 2.13,28. Edellinen, Jarno Pihlavan vuonna 2002 tekemä ennätys parani noin puoli sekuntia. Loppukilpailussa hän paransi SE:tään yli 0,6 sekunnilla aikaan 2.12,65 ja sai nuorten EM-hopeaa.