That checklist matches how I keep deciding. If the service is just request-driven, Cloud Run is the honest start. The moment I need a worker sitting on a queue all day, the cluster stops being optional.
The idle-cost comparison is the part most Cloud Run vs GKE writeups skip: a low-traffic service on GKE bills for the node whether requests arrive or not, while Cloud Run bills per request. Starting on Cloud Run and moving only when a real requirement forces it keeps that bill honest.
Mahdi Jabinpour
Building WordPress plugins and AI tools at LumoWP. Practical notes on WooCommerce, performance and multilingual websites.
The workload-first framework is useful. One branch needs an update, though: Cloud Run now supports GPUs, so a GPU requirement alone no longer makes GKE the default answer. Google’s “GPU support for services” documentation covers the available configurations. I would make that decision depend on the accelerator, runtime and operational constraints rather than GPU versus no GPU.