I see all these people saying “not your keys, not your coins” and making such a big deal about how keeping your crypto on exchanges is the worst thing ever. Yes, because I’m willing to pay a 60$ transfer fee to move my Bitcoin onto some wallet where I pose a risk of losing my keys (like many people you’ve heard of on news stories). Keyword is TRUSTWORTHY exchange. Obviously don’t keep your crypto on some shady exchange which will most likely exit scam in 3 months. But if you keep your crypto on a good exchange like Coinbase Pro or Kraken, you are fine. Coinbase insures your crypto up to $250,000 in case of loss (I think). Also, Coinbase/Kraken have world-class engineers working on it so it’s not some 2014 shit exchange like Mt. Gox. Crypto has evolved a lot from those times. Coinbase is literally a public company subject to certain regulations (which help protect you). The odds of Coinbase or Kraken getting compromised (and not insured) is much lower than the chance of you losing your keys.
Edit: Some people pointed out that Coinbase just insures the USD and not the actual crypto (not entirely sure how it works/ if these people are correct). Still being a public/reputable company I think they would provide some level of compensation if in the highly unlikely chance they get breached to protect their image (similar to what Binance did when they got hacked in 2019). Regardless, all my other points still stand (including on Kraken).