2018 m. rugsėjo 13 d. Karlssonas (kartu su Francis Perron) buvo perkeistas į "San Jose Sharks" mainais į Chris Tierney, Dylan DeMelo, Josh Norris, Rūdolfs Balcers, "Sharks" pirmąjį ratą 2020 m., antrąjį ratą 2019 m.
ir antrosios atrankos pasirinkimas 2021-aisiais. Savo pirmąjį "Sharks" golą jis įmušė lapkričio 18 d. pergalėje 4:0 prieš "St. Louis Blues". Po lėto sezono pradžios, 2019 m. Sausio 8 d. po 7 prieš 2 pergalės prieš Edmontono "Oilersi" Karlssonas tapo penktuoju gynėju, kuris per 14 rungtynių iš eilės gavo bent vieną asistą. Gruodžio 23 d. Karlssonas pirmą kartą per savo karjerą buvo nušalintas iš žaidimo dvi rungtynes už neteisėtą čekį Los Andželo "Kings" žaidėjui Austinui Wagnerui. Dėl žaizdos į žarnyną Karlssonas praleido daug žaidimų sezono pabaigoje, o vėliau grįžo į paskutinę sezono rungtynes prieš "Colorado Avalanche". Jis baigė sezoną su 45 taškais iš 53 rungtynių, tai buvo mažiausias taškų skaičius nuo 2012-13 metų sezono. Karlssonas padėjo San Jose pasiekti Vakarų konferencijos finalą per 2019 m. Plojofą, nors jis patyrė dar vieną žarnyno traumą per žaidimą prieš "St. Louis Blues", dėl kurio praleido San Jose paskutinį žaidimą, kai komanda pralaimėjo 5<unk>1 6 žaidime. Playoff žaidimą jis baigė su 16 taškais iš 19 rungtynių. Gegužės 31 d. jam buvo atlikta šlaunikaulio operacija.