Yes.
I was part of a larger marketing / design agency where they charged standard vendor markup (15%) on hosting (which was a reseller account with cpanel), which was cheap for the clients but did not cover the costs of passing along support requests to the actual hosting company.
That agency went out of business 5 years ago and I absorbed the hosting business. All of the sites are WordPress and I had built an optimized stack along with automation for backups, updates, security scans, etc. For the changeover I set 3 levels of hosting power and rolled in the automated maintenance, domain name renewal and storage of backups. Email and SSL are add-ons provided by 3rd parties and marked up at least 100%.
Prices are $50, $150 and $500/mo.
The stack has changed over the years from a shared VPS to individual VPSs to docker containers. Everything is behind a load balancer / caching proxy so changing out the platform as needed was/is pretty painless when we find new ways of doing things.
All clients were required to enter into a new contract with monthly recurring CC billing or they were provided with their files and thank you for your past business letter. Every new site proposal includes the first year of hosting and maintenance, and is a hard requirement. I won't support a site that's on some $5/mo hosting plan running PHP 5.3 or who knows what. I can tell horror stories for hours, which just reminds me how much I don't want to live through them again.
We lost 1/3 of the customers, but I think we only needed 3 clients to equal the revenue of the previous system. For example, there's one client that we're charging $650/mo (with emails and multiple SSL domains) that was NEVER charged for hosting by the previous company. I was sure they were going to bail, but their support load previously was so large that we needed SOMETHING to justify keeping them on. Amazingly now that they know that when they break things there is an actual cost to picking up the phone to call us. They do have X hours per month of "free" support but then they have to start paying $100/hr. The new stack almost guarantees that breaks don't occur from our end and if we do, it's 30 seconds to flip over to a previous backup.
We've also gotten a few redesign jobs simply because they see our name on their credit card statements every month. I've personally never worked with these clients during the time of the previous company, but they came along way back when and would've gone with someone else if we weren't already in a relationship, no matter how loose.