In my experience there is using PaaS and there's using PaaS cost effectively.
I think a lot of companies have got a nasty shock when the 1st cloud bills came rolling in.
Getting the scaling and sizing right and making sure you have the necessary alerts and everything that acts on those alerts is still a challenge.
Keeping an eye on changes to your particular PaaS is an important part of cost management.
Recently I wanted to run PyArrow in an Alpine Linux container. This required building PyArrow from source code. We discovered that the speed of compilation depends on which chip you compile for and on what chip is doing the compilation.
For compiling on ARM for ARM or AMD for AMD it takes 30 minutes.
For ARM for AMD or vice versa it takes 18hours. Big cost differential if you are trying to do it using Github runners and you aren't using self-hosted runners. GitHub will terminate any process after 6 hours anyway so you'll have nothing to show for an 8 hour bill