Setting up and configuring a server GTM container
The server container is the piece that actually runs on Measurebase: your own endpoint that receives tracking requests on your subdomain, decides what they mean, and forwards them to Google and other vendors from Amsterdam. This guide creates one, makes the provisioning choice that connects it to Measurebase, and sets up the two clients every setup needs. It assumes the GA4 property and web container from earlier in the series.
Create the container
In Google Tag Manager, add a new container to your account and choose Server as the target platform. Web and server containers look similar but behave differently: a server container doesn't run in anyone's browser; it runs on infrastructure, and the next question is whose.
Choose manual provisioning
Right after creation, GTM asks how to provision the tagging server and preselects Automatically provision tagging server, which deploys to Google Cloud's App Engine, on Google's US-centric infrastructure, on your own Cloud billing account. Choose Manually provision tagging server instead. GTM shows a Container Config string: copy it. That string is what you paste into Measurebase when adding your domain; it's how your EU-hosted tagging server knows which container it runs. You can find it again any time under Admin → Container Settings.
Understand clients: the container's front door
Where a web container has triggers, a server container starts with clients: they claim incoming requests and turn them into events tags can use. Two clients carry a standard setup:
- Google Tag Manager: Web Container. Serves your web container's code through your tagging subdomain, which is what makes the loader on your site first-party. Add this client and list your web container's ID (
GTM-XXXXXXX) under Allowed Container IDs. Skip it and your script loads fine while every event is silently rejected server-side, the most common reason a fresh setup shows zero data. - GA4. Present by default; claims the GA4 events your Google tag now sends to
server_container_url.
Add the GA4 tag
Clients receive; tags forward. Create a Google Analytics: GA4 tag, leave its default settings (it inherits the event from the GA4 client), and give it the trigger All events with a Client Name of GA4. From that moment the flow is complete: browser → your subdomain → server container → Google. Vendor tags (Meta Conversions API, Google Ads) follow the same pattern later, each one a separate tag on the same incoming events.
Preview the whole chain
Server containers have their own preview: it shows every incoming request on the left: which client claimed it, which tags fired, what went out to Google. Run it side by side with the web container's preview and you can watch one click travel the full route. Fire a test event from your site and check it arrives here before publishing.
Publish both containers
Publish the server container, and if you changed the web container along the way (the server_container_url setting from the previous guide), publish that too. A half-published pair (one side live, the other still in draft) is the classic reason a setup works in preview and silently doesn't in production.
Verify it on Measurebase
With both containers live and your domain active, open the domain's request logs in the Measurebase dashboard: real hits should appear within moments, with an Active status. The complete setup guide walks the full verification checklist from here.