Cosmetic skins aren't a problem but the purchasable ones in COD are because they are MORE than skins - they have altered back-end stats to inflate performance to make them an attractive purchase, which then get subsequently nerfed before the next bundle is released. Players then see their gun isn't as effective post-nerf and simply move onto the next bundle. They wouldn't even sell a tenth of these skins if there weren't performance boosters in place especially when the core game has almost 200 skins already available which can be comfortably earned by playing. If these skins were just cosmetics then they wouldn't need to be nerfed on queue regular as clockwork.
Skins in games like Overwatch 2016 were fine as they were outright cosmetics paid or earned but this is not how Activision operates this aspect - they literally have patents in place for monetised matchmaking purposes placing users against premium gun owners in a bid to entice a purchase and this has been in place and enforced for a few years now as well as the shills that further push this concept. If you buy a bundle for whatever reason, you are paying for an advantage whether intentional or not and also irrespective of ability. This is the same way people were buying the LA Thieves skin to gain a visible advantage. Once sales peaked, Activision then nerfed the appearance of the skin despite plenty of warnings prior and having had the same charade during Warzone 1 with a very similar skin. This wasn't a mistake - this was a deliberate and calculated money-grab from Activision in selling something that provided a clear advantage and then appeasing the complaints after the money was banked. Same applies to skins basically.
If Activision opened up a store selling 1000 cosmetic-only skins for £100 each tomorrow then it wouldn't be an issue but just one skin that has vastly improved stats (mined, not in-game) then that puts the game in the P2W category.