Stay organized with collections
Save and categorize content based on your preferences.
This page provides details to help you choose your Knative serving platform.
Knative serving gives you the flexibility to run services on a fully managed
environment or on GKE Enterprise. If you're already using
GKE Enterprise, Knative serving can easily deploy into
your GKE Enterprise GKE cluster or on-premises
workloads. Plus, you can easily switch from Cloud Run to
Knative serving or vice versa; all without changing your
application code.
One way to visualize the differences in platform at a high-level architectural
view:
Cloud Run
The Cloud Run platform allows you to deploy stateless
containers without having to worry about the underlying infrastructure. Your
workloads are automatically scaled out or in to zero depending on the traffic
to your app. You only pay when your app is running, billed to the nearest 100
milliseconds.
Knative serving
Knative serving abstracts away complex Kubernetes concepts,
allowing developers to easily leverage the benefits of Kubernetes and serverless
together. It provides access to custom machine types, additional networking
support, and Cloud Accelerators. It allows you to run your workloads on-premises
or on Google Cloud.
Comparison table
The follow table shows some key differences between the platforms:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eKnative serving allows deployment on a fully managed environment or GKE Enterprise, including on-premises workloads, with the flexibility to switch between it and Cloud Run without altering application code.\u003c/p\u003e\n"],["\u003cp\u003eCloud Run is a fully managed platform for deploying stateless containers, automatically scaling based on traffic and only charging when the app is running, whereas Knative Serving abstracts Kubernetes for easier serverless development on-premises or in the cloud.\u003c/p\u003e\n"],["\u003cp\u003eCloud Run offers pay-per-use pricing, limited machine types, and up to 1,000 container instances, while Knative serving is part of GKE or GKE Enterprise, with custom machine types and scaling limited by cluster capacity.\u003c/p\u003e\n"],["\u003cp\u003eCloud Run provides strict container isolation via gVisor and automatic service URLs, while Knative serving uses default Kubernetes isolation and requires custom domains with manual SSL certificates.\u003c/p\u003e\n"],["\u003cp\u003eKnative serving supports integration with the Istio service mesh and allows publishing to the internet, cluster, or VPC, whereas Cloud Run does not participate in the Istio service mesh, but offers access to VPC via Serverless VPC Access.\u003c/p\u003e\n"]]],[],null,[]]