We've been on cloud run for the last six months. We run our monolith (Spring boot) as a Docker service. Cloud build for CI/CD. And Firestore as a not great but free database. We even increased the instance size (1GB, 2vcpus) to deal with memory issues & spring boot and it had no impact on our cost (we are still below the threshold).
It's an awesome deal for basically 0$ bills every month (we pay for a few other things though) and great for us as we are a small startup bootstrapping at the moment. It more than handles our development and early access traffic.
This 0$ setup gets us highly available docker + firestore for absolutely nothing until we hit the freemium threshold. We went over by a fraction of a dollar on a couple of occasions when we did big imports, etc. But we won't start paying until the point where we have recurring revenue and users basically causing increased traffic.
I also like not having to deal with devops for this. No faffing around with doing terraform, setting up CI, writing complex deploy scripts, etc. Frees up a lot of my time. If you have done any of that in the past years, this is shockingly easy in comparison. A simple wizard, couple of clicks and you have your docker container building and deploying straight from github. I was not expecting this to work and but then it did on the first try.
Switching the whole setup to using vms is super easy to do at any point since you can basically just tell it to run a docker container. It's nice to have that option. But then you need multiple vms, a load balancer, etc. and before you know it you are looking at more like 75/month. Add a decent database and it gets worse. High availability, worse still. And you need to do the devops to connect all these bits of infrastructure. You will blow more on staffing cost than hosting. Even a single day spend by a senior that can actually do this would cost you like 1000$. Lets be fair, it's never just a day.
IMHO this is what most deployments should be like: bog standard docker thing, go run it and take care of all the things that aren't optional like giving me some dashboards, alerting, etc. and just pay for what you actually use.