I think that Cloud Run is superior to App Engine, but the things that matter to me may not matter to you. Cloud Run lets you use containers, any programming language, any web framework, and include your own binaries. If these things sound useful to you, switch to Cloud Run. If not, stay with App Engine. Hope this helps! Answer from martin_omander on reddit.com
🌐
Google
docs.cloud.google.com › app engine › migration center › compare app engine and cloud run
Compare App Engine and Cloud Run | App Engine migration center | Google Cloud Documentation
Cloud Run is designed to improve ... environment. Cloud Run services can handle the same workloads as App Engine services, but Cloud Run offers customers much more flexibility in implementing these services....
🌐
Reddit
reddit.com › r/googlecloud › cloud run vs appengine?
r/googlecloud on Reddit: cloud run vs appengine?
December 11, 2022 -

I run a number of small websites on AppEngine. Mostly static files, occasionally a little bit of code.

I constantly hear that Cloud Run is superior to AppEngine... is it for my use case?

I don't think cloud run has a nice way to serve the static files, is that correct?

Top answer
1 of 10
13
I think that Cloud Run is superior to App Engine, but the things that matter to me may not matter to you. Cloud Run lets you use containers, any programming language, any web framework, and include your own binaries. If these things sound useful to you, switch to Cloud Run. If not, stay with App Engine. Hope this helps!
2 of 10
10
Disclosure: We have an App for Google App Engine (GAE) I think it depends on your purposes. GAE in my comments below refers to GAE Standard Environment - I think GAE is simpler to use/understand (especially for someone who isn't very technical or is still kind of new to programming). You just write code. You don't have to worry about 'containerizing or what it means'. When you're done writing code, you deploy (you don't have to worry about 'building' your App and stuff like that. It's also simpler/easier if you're hosting static sites. - GAE gives you access to a NoSQL DB (datastore) so you don't have to worry about setting up/configuring an SQL server. GAE also comes with bundled APIs which means you don't have to spin up servers or connect to some external services. Eg. you want users to sign in before accessing your site, just add login:required to your app.yaml, you want to restrict some page to only your admin, add login:admin to the route in app.yaml, you want your site to only be accessible via https, add 'secure:always' to your app.yaml file, you want to use memcache, just import the library (one liner) in your code and start using it, you want to save data to datastore, just import the library (one liner) and start using it - However, GAE runs your code in a sandbox which means you can't do stuff that GAE doesn't support. Cloud Run doesn't have that limitation. With Cloud Run, you have access to more programming languages (essentially any language), your code has a longer time out (i.e. the time it takes for your app to return a response is much longer), you can use stuff like Selenium (headless browsing), streaming, instant messaging (pub/sub), etc - Cloud Run also supports deploying to multiple regions. GAE only supports deploying to a single region and you can't change the region after it's set. Under normal circumstances, this wouldn't be a problem but once in a while Google Cloud has issues and some regions basically won't respond (this happened about 2 weeks ago or so; there were multiple complaints from folks that they were getting errors about a region being out of resource). When such happens, Cloud Run has the advantage in that your App could still be served from the other regions that you deployed
Discussions

What is the difference between Google App Engine and Google Compute Engine? - Stack Overflow
Google Compute Engine GCE is an ... of the GCP services use GCE instances (VMs) beneath the management layer (not sure which ones don't). This includes App Engine, Cloud Functions, Kubernetes Engine (Earlier Container Engine), Cloud SQL, etc. GCE instances are the most customizable unit there and thus should only be used when your application can't run on any other ... More on stackoverflow.com
🌐 stackoverflow.com
Google Cloud Function vs Run vs App Engine for stateless latex render? - Stack Overflow
I have been away from developing cloud based application for years and now I am confused by the many many options. I need to cloud provider (Google?) to fire up a virtual machine/container/process in More on stackoverflow.com
🌐 stackoverflow.com
What is the difference between Google App Engine and Google Cloud Run? - Stack Overflow
Does anyone know, difference between Google App Engine Flex and Google Cloud Run? Thanks More on stackoverflow.com
🌐 stackoverflow.com
Cloud run as compared to VM
Hi Team, I am thinking to create some rest APIs and some background jobs which is connecting to a Kafka to process some events. Would like to understand the difference between VM vs cloud run (which is always running on). In terms of costing, will it cost same or are there any difference between ... More on discuss.google.dev
🌐 discuss.google.dev
0
0
July 20, 2023
🌐
Free for Developers
free-for.dev
Free for Developers
Developers and Open Source authors now have a massive amount of services offering free tiers, but it can be hard to find them all to make informed decisions.
Top answer
1 of 12
579

App Engine is a Platform-as-a-Service. It means that you simply deploy your code, and the platform does everything else for you. For example, if your app becomes very successful, App Engine will automatically create more instances to handle the increased volume.

Read more about App Engine

Compute Engine is an Infrastructure-as-a-Service. You have to create and configure your own virtual machine instances. It gives you more flexibility and generally costs much less than App Engine. The drawback is that you have to manage your app and virtual machines yourself.

Read more about Compute Engine

You can mix both App Engine and Compute Engine, if necessary. They both work well with the other parts of the Google Cloud Platform.

EDIT (May 2016):

One more important distinction: projects running on App Engine can scale down to zero instances if no requests are coming in. This is extremely useful at the development stage as you can go for weeks without going over the generous free quota of instance-hours. Flexible runtime (i.e. "managed VMs") require at least one instance to run constantly.

EDIT (April 2017):

Cloud Functions (currently in beta) is the next level up from App Engine in terms of abstraction - no instances! It allows developers to deploy bite-size pieces of code that execute in response to different events, which may include HTTP requests, changes in Cloud Storage, etc.

The biggest difference with App Engine is that functions are priced per 100 milliseconds, while App Engine's instances shut down only after 15 minutes of inactivity. Another advantage is that Cloud Functions execute immediately, while a call to App Engine may require a new instance - and cold-starting a new instance may take a few seconds or longer (depending on runtime and your code).

This makes Cloud Functions ideal for (a) rare calls - no need to keep an instance live just in case something happens, (b) rapidly changing loads where instances are often spinning and shutting down, and possibly more use cases.

Read more about Cloud Functions

2 of 12
116

Basic difference is that Google App Engine (GAE) is a Platform as a Service (PaaS) whereas Google Compute Engine (GCE) is an Infrastructure as a Service (IaaS).

To run your application in GAE you just need to write your code and deploy it into GAE, no other headache. Since GAE is fully scalable, it will automatically acquire more instances in case the traffic goes higher and decrease the instances when traffic decreases. You will be charged for the resources you really use, I mean, you will be billed for the Instance-Hours, Transferred Data, Storage etc your app really used. But the restriction is, you can create your application in only Python, PHP, Java, NodeJS, .NET, Ruby and **Go.

On the other hand, GCE provides you full infrastructure in the form of Virtual Machine. You have complete control over those VMs' environment and runtime as you can write or install any program there. Actually GCE is the way to use Google Data Centers virtually. In GCE you have to manually configure your infrastructure to handle scalability by using Load Balancer.

Both GAE and GCE are part of Google Cloud Platform.

Update: In March 2014 Google announced a new service under App Engine named Managed Virtual Machine. Managed VMs offers app engine applications a bit more flexibility over app platform, CPU and memory options. Like GCE you can create a custom runtime environment in these VMs for app engine application. Actually Managed VMs of App Engine blurs the frontier between IAAS and PAAS to some extent.

🌐
Cloud Infrastructure Services
cloudinfrastructureservices.co.uk › home › blog › cloud run vs app engine vs cloud function (pros and cons)
Cloud Run vs App Engine vs Cloud Function (Pros and Cons)
July 13, 2023 - Let’s start with Cloud Run vs App Engine vs Cloud Function (Pros and Cons). ... Firstly, the is Cloud Run. is a serverless product that offers computing platform and is provided by Google Cloud Platform (GCP). It let’s developers to run stateless containers that scale automatically based ...
Find elsewhere
🌐
GeeksforGeeks
geeksforgeeks.org › devops › compute-engine-vs-cloud-run
Compute Engine vs Cloud Run - GeeksforGeeks
July 23, 2025 - Compute Engine is useful when you ... On the other hand, if the developers want to deploy the containerized applications swiftly without having infrastructure management, Cloud Run is right for them....
🌐
Stack Overflow
stackoverflow.com › questions › 77169143 › google-cloud-function-vs-run-vs-app-engine-for-stateless-latex-render
Google Cloud Function vs Run vs App Engine for stateless latex render? - Stack Overflow
My understanding is the Cloud Function can't run arbitrary applications like LaTeX, only supplied code snippets that match the provides runtimes (java, js, python, go..) ... Have you containerized your application? Have you benchmarked your app's requirements for CPU, memory, storage, and I/O? A good recommendation requires more details on your application's requirements. Suggestion: I think Cloud Run will meet your needs based on your listed requirements and goals.
🌐
Google
docs.cloud.google.com › app engine › choose an app engine environment
Choose an App Engine environment | Google Cloud Documentation
Important: For new Google Cloud users, we recommend using Cloud Run as the preferred alternative over App Engine. Cloud Run is a fully managed, modern application hosting platform that provides access to advanced capabilities, such as GPUs, ...
🌐
Google
docs.cloud.google.com › google kubernetes engine (gke) › gke and cloud run
GKE and Cloud Run | Google Kubernetes Engine (GKE) | Google Cloud Documentation
GKE is best suited for complex ... and scenarios where deep control over Kubernetes is essential. Cloud Run is best suited for event-driven apps....
🌐
SaaSHub
saashub.com › home › developer tools › cloud computing
Google Cloud Run VS Google App Engine - compare differences & reviews?
Configuration complexity Despite ... requiring a steep learning curve. Google Cloud Run is considered a strong choice for deploying containerized applications and services that require scalability and low operational overhead....
Top answer
1 of 4
20

The Cloud Run documentation is not yet very informative but the new video Where Should I Run My Code? Choosing From 5+ Compute Options (Cloud Next '19) compares Cloud Run with App Engine and also Cloud Functions, Google Kubernetes Engine, and Google Compute Engine.

  • You can choose to deploy your Cloud Run app on fully managed infrastructure ("serverless", pay per use, auto-scaling up rapidly and down to 0 depending on traffic) or on a Google Kubernetes Engine cluster. App Engine is always fully managed, with auto-scaling. App Engine Flex auto-scales gradually and down to 1. App Engine Second Generation auto-scales up rapidly and down to 0.
  • Cloud Run requires your app to run in a container. App Engine Flex runs your container for any language runtime. App Engine Second Generation provides a few language runtimes.
  • Cloud Run services can now respond to HTTPS requests (which don't have to be from web browsers), gRPC requests, Pub/Sub triggers, or scheduled triggers. It can be configured to allow up to 15 minutes to process a request. App Engine runs HTTP web apps. It has different request timeouts for App Engine Classic, Standard, and Flex, and it varies for Automatic scaling, Basic scaling, and Manual scaling.
  • Cloud Run is designed for teams that include both software developers and ops experts. App Engine is designed for developers.
  • Cloud Run is generally available (as of Nov. 14, 2019). App Engine has been battle tested for years and is serving many billions of requests per day.

Investigate Cloud Run's limitations before getting started. E.g. the payload container can be configured with up to 2GB RAM (more with a GKE cluster) with no disk space (only RAM disk). See the Cloud Run How-To Guides and the rest of the Cloud Run Documentation.

Also see the App Engine Documentation.

2 of 4
2

Google cloud runs utilizes stateless applications inside docker containers. The service can scale up and down automatically and will scale to 0 when not in use. From what I understand app engine flex cannot scale to 0 and is generally not considered a stateless architecture.

🌐
Dormoshe
dormoshe.io › trending-news › cloud-run-vs-app-engine-a-head-to-head-comparison-using-facts-and-science-1225-16867
Cloud Run vs App Engine: a head-to-head comparison using facts and science
I was hosting a small web app as a side-project and looking to spend less money. I started out using Heroku, then moved to Google’s Cloud Platform. Using rigorous methods and markdown tables, I per...
🌐
Happtiq
happtiq.com › blog › cloud-run-vs-gke
In Comparison: Cloud Run vs. Google Kubernetes Engine — happtiq
October 31, 2024 - Developers love containers because they enable them to rapidly deploy, patch, and scale applications. For this reason, Google Cloud has a number of services that you can use to run your containerized apps, but the top two are Cloud Run and Google Kubernetes Engine (GKE).
🌐
Google
discuss.google.dev › google cloud › serverless applications
Cloud run as compared to VM - Serverless Applications - Google Developer forums
July 20, 2023 - Hi Team, I am thinking to create some rest APIs and some background jobs which is connecting to a Kafka to process some events. Would like to understand the difference between VM vs cloud run (which is always running on). In terms of costing, will it cost same or are there any difference between ...
🌐
Northflank
northflank.com › blog › app-engine-vs-cloud-run
App Engine vs. Cloud Run: A real-world engineering comparison | Blog — Northflank
May 23, 2025 - Choosing between Google App Engine and Google Cloud Run is a surprisingly tough decision. At first glance, they seem to promise the same thing: serverless simplicity, automated scaling, and less infrastructure to worry about.
🌐
Stack Overflow
stackoverflow.com › questions › 71210260 › service-balancer-between-cloud-run-and-app-engine
service balancer between cloud run and app engine - Stack Overflow
I currently have two services in GCP, one is Google App Engine Flexible Environment and the other is Cloud Run and the idea is that through a service balancer I can distribute the traffic between t...
Top answer
1 of 2
38

App Engine is a Platform-as-a-Service. It means that you simply deploy your code, and the platform does everything else for you. For example, if your app becomes very successful, App Engine will automatically create more instances to handle the increased volume.

It auto scales from 0 to unlimited instances (It uses GCE underneath). It comes with 2 flavors Standard Environment and Flexible Environment. Standard Environment is really fast, scales down to 0 instances when no-one is using your app, scales up and down in seconds and has dedicated Google services and libraries for caching, authentication etc. The caveat with Standard environment is that it is very restrictive since it runs in a sandbox. The recent additions are Node.js (8.x) and Python 3.x. Flexible Environment is more open as it allows you to use custom runtimes as it uses docker containers. Thus if your runtime is not available in the provided runtimes, you can always create your own dockerfile for the execution environment. The caveat with it is, it requires having at least 1 instance running, even if no-one is using your app, plus the scaling up and down requires a few minutes.

Read more about App Engine

App Engine is for deploying code, Cloud Run for deploying containers, and containers are today’s requirements.Cloud Run runs containers, so for each release you have to build a container and push it to GCP.

Cloud Run, App Engine Flexible and Newer runtimes of App Engine Standard are designed for portability (you can use open-source libraries or standard libraries and not just Google Libraries). Cloud Run and App Engine Flexible allow for custom runtimes.

Cloud Run gives you the freedom to expand your infrastructure into hybrid and multi-cloud environments.

Read more about Cloud Run

Differences you should consider:

  • For a low-traffic application, Cloud Run or App Engine Standard which is set to automatic scaling are both cheaper than App Engine Standard which is set to manual/basic scaling or App Engine Flexible. Cloud Run only runs when it is serving requests. App Engine which is set to automatic scaling shuts down when it is not serving requests. This means for both types, you're not using resources when your application is not running and Google only bills you for resources that you consume. In addition, App Engine Standard provides a free daily quota of resources so you're only billed for consuming resources above the free quota. App Engine Flexible or App Engine Standard set to manual/basic scaling must have at least 1 instance running continuously, which means they run for a full month which in turn means you're going to pay more.

  • App Engine responds on average 56 ms faster than Cloud Run. The huge caveat here is that these times vary widely between runs, sometimes tripling or quadrupling The total request size from Cloud Run was larger because it doesn’t gzip files by default. The big difference between the two services is that Cloud Run doesn’t run your container unless it’s getting requests. When a request comes in, it does things: [i] boots up the container [ii] serves the request [iii] shuts down the container Of course, you also save a lot of money doing it this way, so the tradeoff here is whether you care more about optimizing your speed or your cost.

  • AppEngine can only be deployed to a single region. If you want an AppEngine app to be multi-regional then you need one project per region. Cloud run allows you to deploy a service to every region within a single project making your API truly global, all within a single project

  • Cloud Run also allows you to set up a static IP address, something you cannot get with AppEngine. This is helpful for situations where you need to relay mail or connect to some other service that restricts access by IP address. Also AppEngine still has some things Cloud Run doesn't (like Identity Aware Proxy) have.

  • The docker image support in Cloud Run is also more versatile than what you get from AppEngine Standard, and Cloud Run has more robust options to choose from (more ram, cpu, etc).



1https://cloud.google.com/appengine/docs/standard/nodejs/quickstart 2https://cloud.google.com/run/docs/quickstarts/build-and-deploy/deploy-nodejs-service

2 of 2
1

Google App Engine:
App Engine provides a fully managed platform-as-a-service (PaaS) environment. It offers automatic scaling, load balancing, and other infrastructure management tasks out of the box.

Google Cloud Run:
Cloud Run is a serverless container platform that runs stateless containers on demand. It provides a more flexible and customizable environment compared to App Engine. You can deploy your Django app as a containerized application using Docker. Cost efficient than App Engine

🌐
Firebase
firebase.google.com › products › firestore
Cloud Firestore | Store and sync app data at global scale | Firebase
Introducing a new query engine in Firestore Enterprise enabling expressive queries with pipelines! Learn more. Cloud Firestore is a NoSQL document database that lets you easily store, sync, and query data for your mobile and web apps - at global scale.
🌐
Medium
medium.com › google-cloud › no-cloud-run-is-not-better-than-google-cloud-functions-f34f46bd3545
No, Cloud Run is not better than Google Cloud Functions | by Beranger Natanelic | Google Cloud - Community | Medium
April 13, 2023 - With Cloud Run, deploy a python server takes only a few minutes. Frankly speaking, deploying an API using Cloud Functions only is a bit painful and a loss of time if the API has more than 3 endpoints.