W-wow, the replies are logical and actually take into account Xbox which really did push a lot of online features way ahead of its time... lol
But yea, to reiterate what's been already said: other services offer things that require maintenance on a server side of things. Example: Xbox lets you set whatever profile pic you want which is visible to all people on all devices, so they have to store your profile pic on their servers. They do cloud saves for ALL games (though PS requires PS+ for this), they have system party/voice chat, messaging, invites, achievements, and Xbox even has communities for each game where people can post LFG if a game has no matchmaking (or if they're trying to find certain types of players for raids) etc. on top of monthly free games (some of which are not so great, but both offer a minimum of two free games per month, or 24 free games a year!).
When Nintendo COULD have justified NSO was when they had Miiverse. Sadly, they ditched Miiverse which was something I and many people enjoyed, and more importantly, enjoyed the artwork on. Instead, NSO offers literally nothing towards the functionality of "online" except gatekeeping multiplayer in which games like Smash are still peer hosted using older netcode which means many matches play like molasses. It's boiled down to simply a retro sub service, and in all truth, they really SHOULD have just marketed/themed a retro sub service. Like "Retro Pass" or something, then it might even make more sense. As it stands, what it offers in terms of "online" is a fraction and quite frankly an embarrassment next to the other two, and the mobile app also pales in comparison to the Xbox mobile app which DIRECTLY allows me to save screenshots and video captures to my phone if I want to just send it to friends privately. Yea, that means Xbox's servers also host your screenshots and video captures...
In summary, NSO and especially NSO+ are rightfully downvoted to hell because anyone with any sense of "online" functionality or is a multi-platform user is going to have a good laugh at what Nintendo is offering. I specifically only subbed to NSO so I could play MHRise multiplayer, and will let it lapse depending on when Sunbreak and Splatoon 3 release. Basically, I only play to pay for NSO when its gatekeeping a multiplayer game I want to play, otherwise it's literally useless to me as someone who had a LOT of Virtual Console titles I lost when I traded in my Wii U for a Switch. That still burns... :(