Skip to content
inetGeek

Google Cloud Run vs Heroku

SEPT 2026 audit

A comparison of Google Cloud Run and Heroku built from values read directly from each provider's own documentation, with the source recorded against every figure.

Updated 26 criteria comparedSources last checked

The short answer

Choose Google Cloud Run if…

A container you already build, that should cost nothing when nobody is using it. Scales to zero by default and back up on request volume, with a 60-minute ceiling per request that most request-driven platforms do not offer.

Editorial · Palash Bagchi · approved

Choose Heroku if…

Teams that want to deploy by pushing to Git and let the platform handle the runtime, with Postgres, a scheduler and Docker deploys available on the same platform.

Editorial · Palash Bagchi · approved

Consider something else if…

  • Google Cloud Run: You need a process that stays running between requests, or a disk that survives a deploy.
  • Heroku: The dyno filesystem is ephemeral, and a web process must respond within 30 seconds of receiving a request.

6 sourced criteria separate them — see where, with sources, below.

No affiliate links, sponsored placements or paid rankings appear on this site. Ordering follows the sourced data and the stated criteria.

01.

At a glance.

CriterionGoogle Cloud RunHeroku
Pricing
Pricing modelMetered by resource, billed in 100 ms increments, with no monthly minimum. Two billing settings change what is counted: request-based charges CPU only while a request is being processed, instance-based charges for the whole instance lifecycle. Prices vary by region — the location list is split into Tier 1 and Tier 2 pricing — and the free tier is applied as a spending-based discount at Tier 1 rates.Usage-based on wall-clock time, prorated to the second
Limits
Max request duration
5 minutes by default, extendable to 60 minutes per request.
30 seconds (initial window for the web process to return response data)
Deployment
Git deploymentSupportedSupported
Docker deploymentSupportedSupported
ContainersSupportedSupported
Infrastructure
Persistent processes
Limited — instance-based billing keeps CPU allocated
Supported
Scales to zero
Supported
Limited
Autoscaling
Supported
Limited
Regions
41 regions, counted from Cloud Run's own locations list — Google publishes the list rather than a total. They are split into Tier 1 and Tier 2 pricing, so the region chosen changes the bill as well as the latency.
2 regions on the Common Runtime, which is what a standard dyno runs in: eu (Europe) and us (United States). A further 10 — Dublin, Frankfurt, London, Montreal, Mumbai, Oregon, Singapore, Sydney, Tokyo and Virginia — exist only in Private Spaces, an Enterprise product.

Only criteria both providers publish appear here; a tinted cell marks a real difference. Criteria only one of them documents are listed below, and an absence there means we found no source — not that the feature is missing. How we source this.

The small bar above a value is inetGeek's own lean toward that side — computed from the same facts shown, never a number the provider published. See the picker below "The short answer" to weigh only the criteria you care about.

02.

Where they differ.

Pricing model

Google Cloud Run
Metered by resource, billed in 100 ms increments, with no monthly minimum. Two billing settings change what is counted: request-based charges CPU only while a request is being processed, instance-based charges for the whole instance lifecycle. Prices vary by region — the location list is split into Tier 1 and Tier 2 pricing — and the free tier is applied as a spending-based discount at Tier 1 rates.
Heroku
Usage-based on wall-clock time, prorated to the second
Sources (2) →
  • Cloud Run pricing — Google Cloud ↗

    “Cloud Run charges you only for the resources you use, rounded up to the nearest 100 millisecond. Your total Cloud Run bill will be the sum of the resource usage in the pricing table after the free tier is applied. [...] Cloud Run pricing depends on the selected region. Pricing for Cloud Run services also depends on the billing configuration. [...] The free tier is applied as a spending based discount using Tier 1 pricing.”

    Read 2026-09-09 · official pricing

  • Usage & Billing | Heroku Dev Center ↗

    “Heroku computes usage from wall-clock time, not CPU time. Any dynos scaled above 0 accrue usage, regardless of traffic or activity. Heroku prorates all costs to the second.”

    Read 2026-09-05 · official docs

Max request duration

Google Cloud Run

5 minutes by default, extendable to 60 minutes per request.

Heroku

30 seconds (initial window for the web process to return response data)

Sources (2) →
  • Configure request timeout for services — Google Cloud Documentation ↗

    “The timeout is set by default to 5 minutes (300 seconds) and can be extended up to 60 minutes (3600 seconds).”

    Read 2026-09-09 · official docs

  • Limits | Heroku Dev Center ↗

    “HTTP requests have an initial 30 second window for the web process to return response data. It can be either the completed response or some amount of response data to indicate that the process is active. Processes that fail to send response data within the initial 30-second window see an H12 error in their logs.”

    Read 2026-09-05 · official docs

Persistent processes

Google Cloud Run
Limited — instance-based billing keeps CPU allocated
Heroku
Supported
Sources (2) →
  • Billing settings for Cloud Run services — Google Cloud Documentation ↗

    “With request-based billing, CPU is only allocated during request processing. With instance-based billing, CPU is allocated for the entire container instance lifecycle. [...] Instance-based billing can be useful for running short-lived background tasks and other asynchronous processing tasks. This setting was previously called CPU always allocated.”

    Read 2026-09-09 · official docs

  • Dynos (App Containers) | Heroku Dev Center ↗

    “Worker dynos are typically used to run background jobs, queueing systems, and timed jobs. You can have multiple kinds of worker dynos in your application.”

    Read 2026-09-05 · official docs

Scales to zero

Google Cloud Run
Supported
Heroku
Limited
Sources (2) →

Autoscaling

Google Cloud Run
Supported
Heroku
Limited
Sources (2) →

Regions

Google Cloud Run

41 regions, counted from Cloud Run's own locations list — Google publishes the list rather than a total. They are split into Tier 1 and Tier 2 pricing, so the region chosen changes the bill as well as the latency.

Heroku

2 regions on the Common Runtime, which is what a standard dyno runs in: eu (Europe) and us (United States). A further 10 — Dublin, Frankfurt, London, Montreal, Mumbai, Oregon, Singapore, Sydney, Tokyo and Virginia — exist only in Private Spaces, an Enterprise product.

Sources (2) →
  • Cloud Run locations — Google Cloud Documentation ↗

    “Each Cloud Run resource resides in a region. [...] Subject to Tier 1 pricing asia-east1 (Taiwan) asia-northeast1 (Tokyo) asia-northeast2 (Osaka) asia-south1 (Mumbai, India) asia-southeast1 [...] northamerica-northeast2 (Toronto) southamerica-east1 (Sao Paulo, Brazil) southamerica-west1 (Santiago, Chile) us-west2 (Los Angeles) us-west3 (Salt Lake City) us-west4 (Las Vegas)”

    Read 2026-09-09 · official docs

  • Regions | Heroku Dev Center ↗

    “eu Europe Common Runtime us United States Common Runtime dublin Dublin, Ireland Private Spaces frankfurt Frankfurt, Germany Private Spaces london London, United Kingdom Private Spaces montreal Montreal, Canada Private Spaces mumbai Mumbai, India Private Spaces oregon Oregon, United States Private Spaces singapore Singapore Private Spaces sydney Sydney, Australia Private Spaces tokyo Tokyo, Japan Private Spaces virginia Virginia, United States Private Spaces”

    Read 2026-09-05 · official docs

When these numbers change, hear about it. Sources are re-checked monthly; a repricing goes out as a short note.

Confirm by email; unsubscribe from any issue. Your address goes to Kit and nowhere else — what we do with it.

03.

Documented by only one.

These criteria are published by one provider and not the other. An absence here means we have not found a source, not that the feature is missing.

Free tierGoogle Cloud Run: Yes
Entry paid planHeroku: $5 per month (Eco dynos plan, 1000 dyno hours shared across the account)
When you exceed a capHeroku: Service sleeps: on the Eco plan ($5/month for a 1000 dyno-hour pool, the cheapest paid tier) exhausting the pool forces every Eco dyno on the account to sleep for the rest of the month, and extra hours cannot be bought
Memory (entry plan)Heroku: 0.5 GB RAM on the Eco dyno ($5 flat/month, the cheapest paid dyno) and 0.5 GB on the Basic dyno ($7/month)
Sites or apps includedHeroku: 100 apps per account, platform-wide on all plans (Heroku Team 100, Enterprise Team 200)
File, inode or volume limitHeroku: 1000 MB maximum compressed slug size, platform-wide on all plans; raisable via support ticket
Concurrent buildsHeroku: 10 concurrent builds for verified users without an established payment history; 300 for verified users with one (platform-wide, all plans)
Streaming response limitHeroku: Platform-wide (router): 30 seconds to send the first byte, then a rolling 55-second idle window — if no data is sent for 55 seconds the connection is terminated
Managed connection poolingHeroku: Limited
Scheduled jobsHeroku: Supported
Persistent storageHeroku: Not supported
Managed databasesHeroku: Supported
Edge networkGoogle Cloud Run: Limited — deploy per region, add a load balancer
SOC 2Google Cloud Run: Covered under Google Cloud's core SOC 2 Type II reports, issued quarterly for Google Cloud and Google Workspace products generally.
ISO 27001Google Cloud Run: The Google Cloud Services ISMS holds an accredited ISO/IEC 27001 certification, audited by an independent third party.
HIPAAGoogle Cloud Run: Cloud Run is listed as a Covered Product under Google Cloud's HIPAA Business Associate Agreement.
PCI DSSGoogle Cloud Run: Cloud Run is listed among the individual Google Cloud products certified against PCI DSS via annual third-party audit.
04.

Questions this comparison answers.

Should I choose Google Cloud Run or Heroku?

Pick Google Cloud Run if A container you already build, that should cost nothing when nobody is using it. Scales to zero by default and back up on request volume, with a 60-minute ceiling per request that most request-driven platforms do not offer.

Pick Heroku if Teams that want to deploy by pushing to Git and let the platform handle the runtime, with Postgres, a scheduler and Docker deploys available on the same platform.

Provider pages

Related comparisons

Every page here is sourced and dated.