Magento was badly designed- infinite levels of directories. Good luck on upgrade. There’s plenty of self hosted online stores. That’s hardly the problem.
I did a single contract for a Magento site and decided never again.
It was like a group of Java developers decided to write PHP code and it was horrific. I would estimate 80% of the classes in that codebase didn't have any implementing code in them.
Literally the only thing I liked about Magento was it's ability to outline everything that was being rendered to make it easier for you to identify the changes to templates you needed to make.