A server-side Google Tag Manager container needs somewhere to run. The usual choice is between Google Cloud Run, which you set up and pay for in your own Google Cloud project, and a managed host that runs the container for a monthly fee. Price lists for these options use different units, so they cannot be compared directly. This article shows how to put them on equal terms and estimate the monthly cost for a hypothetical site. It compares conditions, not winners. All prices below were read on 6 November 2026 and can change.
Why the price lists do not compare directly
Cloud Run bills for compute time. A managed host bills for a monthly plan with a request limit. Even the managed hosts count different things.
- Cloud Run charges for the time instances run. Google's Cloud Run setup guide uses a configuration where CPU is always allocated, so you pay for each running instance whether or not traffic arrives.
- Stape says in its help article What is a request that a request is "every incoming hit your server container receives", including script loads such as gtm.js and gtag.js.
- TAGGRS says on its pricing page that "a request is every event that happens on your website", such as a page view or a click.
The same month of traffic can therefore produce different counts under each provider. Before comparing prices, convert your traffic into each provider's unit.
What Google's Cloud Run guide sets up
Google's guide recommends at least 2 instances to reduce the risk of data loss during an outage. Each server has 1 vCPU and 0.5 GB of memory, and the guide says "each server costs approximately $45 /month (USD)". Its example command sets a minimum of 2 and a maximum of 10 instances. Google expects 2 to 10 servers to handle 35 to 350 requests per second, though performance varies with the number of tags. The guide also says that the maximum instance setting is your worst case for cost, and it advises setting a billing alert.
