If you have $50million+ you can deploy on capex in one shot (economies of scale negotiation doesn't work well at lower numbers), and you can hire systems engineers (C/C++/Go/Rust 5+ years systems experience x 20 engineers), you can put together a single tenant compute cloud needed to run a typical Internet facing web/mobile application with all the bells and whistles (lots of app server clusters, db clusters, big data clusters, GPU clusters etc with HA, scalability, security, DR etc). At this point, capex/opex cost will be easily 30% lower than the best negotiated bulk price from public cloud.
It is worth doing this if your in-house engineering team is at least 100+ app service developers and have high feature churn rate.
But be warned, your systems engineering / shared technology team should be level-headed and mature and rest of your app service engineering should be good too to pull this off well. If not, you will be in serious developer productivity pain and there won't be quick and easy fixes once you have put down the capex.
It is worth doing this if your in-house engineering team is at least 100+ app service developers and have high feature churn rate.
But be warned, your systems engineering / shared technology team should be level-headed and mature and rest of your app service engineering should be good too to pull this off well. If not, you will be in serious developer productivity pain and there won't be quick and easy fixes once you have put down the capex.