That one can be complex. My home server does mainly private stuff so external bandwidth/latency isn't a big issue. Even accounting for cycling drives out¹² and other involuntary maintenance³ the cost of putting the machine together and keeping it running is lower than I'd have spent on the monthly costs of a similarly specced machine with a good provider.
Power costs have made me reconsider that a bit in recent months, but hosting providers are putting up prices as they are subject to similar cost increases too so I'll wait a bit and see how that settles before making major changes.
----
[1] I've had a few failures over the years, though thanks to RAID I've never actually lost data due to that⁴.
[2] Also for space upgrades, but that is an issue for externally hosted options too.
[3] The PSU went fzzzt early last year.
[4] Actual (temporary) data loss due to human error has occurred, but backups resolved those occurrences.
I am confident that my VPS provider (DigitalOcean) can maintain VPSs' better than I can (or want to), for example: automigrate for hadrware faults, cheap daily/weekly backup, and making sure it's up & running after power cycling the home (which is an infrequent but not unheard of situation where I live).
Even for beefier setups, Hetzner (my go to provider for dedicated hw) still looks more appealing than setting it up at home, when I calculate hardware cost. If you have spare hardware sitting unused anyways, I'd agree.
But on the main point we agree - if you know how to administer a server, it's easy to host, either home or on a VPS.
The main drawback I see for common people is that they aren't gonna read up on nginx and postgres configs or set up minikube locally. That requires one-click setup for local use.