{"id":12886,"date":"2022-04-27T00:00:00","date_gmt":"2022-04-27T00:00:00","guid":{"rendered":"https:\/\/e-dialog.group\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/"},"modified":"2026-02-26T13:38:15","modified_gmt":"2026-02-26T13:38:15","slug":"hosting-a-google-server-side-gtm-container-on-a-vps","status":"publish","type":"post","link":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/","title":{"rendered":"Hosting A Google Server Side Gtm Container On A Vps"},"content":{"rendered":"<h2>Server side tagging<\/h2>\n<h3>Introduction<\/h3>\n<h4>What is Server Side Tagging?<\/h4>\n<p>With server side tagging (or tracking), data is redirected via its own server instead of being sent directly from the user to the processing servers (e.g. Google Analytics).<\/p>\n<h4>Why is it important, who needs it?<\/h4>\n<p>Until now, the tracking data has been sent directly from the web visitor&rsquo;s browser to various other platforms. With SST, the information is now sent to its own domain or server, which then sends the information to various other platforms.<\/p>\n<p>This has several<b>Advantages<\/b>:<\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\">Relieving the burden on the resources of the website or the website visitor&rsquo;s device<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">Clear and structured data flow<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">Granular control over all routed data<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">Better options for anonymizing and pseudonymizing data<\/li>\n<\/ul>\n<p>The<b>Disadvantage<\/b>is the increased effort of implementation and maintenance because you control the server yourself and are responsible for it. There are additional costs for hosting the tracking server.<\/p>\n<h3>Implementation options<\/h3>\n<p>They exist<a href=\"https:\/\/e-dialog.group\/at\/blog\/digital-analytics\/server-side-tagging-gtm-vs-tealium-iq-vs-tagcommander\/\">various options and different providers<\/a>to send tracking data via its own server. We focus on the Google Suite because Google offers a lot of experience and quality solutions in this area.<\/p>\n<p>Google Server Side Tagging can be done on<b>three different variants<\/b>be implemented:<\/p>\n<h4>Google Managed in Google Cloud<\/h4>\n<p>This is the easiest and fastest way to implement it<b>Deploy and manage<\/b>of the server directly from Google. In practice, however, this does not make sense, as Google currently only allows server locations in America.<\/p>\n<h4>Self-managed in the Google Cloud<\/h4>\n<p><b>The most common solution<\/b>is to host the tracking server via the Google Cloud. You use this<a href=\"https:\/\/cloud.google.com\/run\/\">Google Cloud Run<\/a>or<a href=\"https:\/\/cloud.google.com\/appengine\/\">Google App Engine<\/a>to host the Docker image provided by Google. The<a href=\"https:\/\/developers.google.com\/tag-platform\/tag-manager\/server-side\/script-user-guide\">Instructions can be found here<\/a>become.<\/p>\n<h4>Self-managed on your own server<\/h4>\n<p>The server side Docker image provided by Google can also be self-hosted on your own server. This variant involves more work because you have to manage the network infrastructure and the servers (failure security, load balancing) yourself.<\/p>\n<h3>The technical overview<\/h3>\n<h4>How does the data flow?<\/h4>\n<p>In current tracking solutions, the data flows between a client (web browser, smartphone, PC) and a service provider (Google Analytics, Meta, TikTok).<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/1_classic_tracking_structure.jpg\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/1_classic_tracking_structure.jpg 929w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/1_classic_tracking_structure-300x245.jpg 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/1_classic_tracking_structure-768x627.jpg 768w\" alt=\"Blog Serverside Tagging - Classic Tracking Structure\" width=\"800\" height=\"654\">With server side tagging, there is a separate server between the website visitor and the service. This server receives the requests from the user, can process, modify and prepare them and then forward them to various third-party providers.<\/p>\n<p>The following graphics show the performance advantage, since in the case without server side tagging the client (e.g. the cell phone) has to set up three of its own connections to the different providers, whereas with SST only one connection is necessary and the server takes care of the distribution. This reduces the load on the user&rsquo;s device and the website loads and responds more quickly.<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/2_serverside_tracking_structure.jpg\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/2_serverside_tracking_structure.jpg 935w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/2_serverside_tracking_structure-300x176.jpg 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/2_serverside_tracking_structure-768x452.jpg 768w\" alt=\"Blog Serverside Tagging - Serverside Tracking Structure\" width=\"800\" height=\"471\"><\/p>\n<h4>What exactly is the tagging server?<\/h4>\n<p>The tagging server is provided by Google<a href=\"http:\/\/gcr.io\/cloud-tagging-10302018\/gtm-cloud-image:stable\">Docker Image<\/a>. This is a technology to run virtual servers. Inside this Docker image there is a<a href=\"https:\/\/nodejs.org\/en\/\">nodeJS<\/a>Server that a<a href=\"https:\/\/www.googletagmanager.com\/static\/serverjs\/server_bootstrap.js\">Script from Google<\/a>loads. This script loads a Google Tag Manager (GTM) container in which the data processing rules can be configured.<\/p>\n<p>The Docker image can be used to host a server side GTM container on your server.<b>As with client GTM containers, the server side container is managed via the tag manager interface<\/b>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/3_serverside_gtm_interface-1024x525.jpg\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/3_serverside_gtm_interface-1024x525.jpg 1024w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/3_serverside_gtm_interface-300x154.jpg 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/3_serverside_gtm_interface-768x394.jpg 768w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/3_serverside_gtm_interface.jpg 1238w\" alt=\"Blog Serverside Tagging - Serverside GTM Interface\" width=\"800\" height=\"410\">&ldquo;Clients&rdquo; can be defined via the GTM interface. These are basically Javascript-based request handlers with which incoming requests can be processed or routed.<\/p>\n<h4>Preview and production environment<\/h4>\n<p>As with client side GTM containers, there is the option to start the server side container in a preview mode. This allows changes that have not yet been published to be tested locally.<\/p>\n<p>If you start the server container in preview mode, a browser window opens in which you can see your incoming requests and also which tags are triggered by the requests. This is particularly useful for testing new versions without releasing them to production.<b>Danger:<\/b>In order to use the preview mode, you need your own Docker container or server as well as your own subdomain.<\/p>\n<h2>Self-managed self-hosted server side tagging<\/h2>\n<p>We recommend hosting the Server Side Tagging Container on Google Cloud. This offers clear administration and control of the container and abstracts technical details.<\/p>\n<p>The solution described here is used by us for debugging and development and should not be adopted on productive systems. However, it gives a basic overview of how self-hosting an SST GTM container can work.<\/p>\n<h3>The basic components<\/h3>\n<h4>The Docker containers<\/h4>\n<p>Google provides<a href=\"https:\/\/developers.google.com\/tag-platform\/tag-manager\/server-side\/manual-setup-guide#view_all_available_settings_for_the_docker_image\">Docker Images<\/a>ready to use the GTM container. These containers can be used both in the Google Cloud and on your own server.<\/p>\n<h4>The proxy<\/h4>\n<p>In contrast to Google hosted server side tagging, on which the<a href=\"https:\/\/cloud.google.com\/\">Google Cloud Platform<\/a>the routing and<a href=\"https:\/\/cloud.google.com\/load-balancing\/\">Load Balancing<\/a>With self-hosted SST you also have to take care of providing the network and proxies. In this example we use the common one<a href=\"https:\/\/nginx.org\/en\/\">Nginx Proxy.<\/a><\/p>\n<h4>Load balancers<\/h4>\n<p>Depending on the traffic, one server is not enough. While you can easily use scalable services with the Google Cloud, this is your own responsibility with the private server. This topic is technically challenging and beyond the scope of this article.<\/p>\n<h3>What is required to run the server?<\/h3>\n<h4>The client container<\/h4>\n<p>In addition to the SST container, a client container must also be present as usual. This will be integrated on the website. The HTTP requests coming from the client are configured via this container.<\/p>\n<p>As an example, we will send Google Analytics 4 (GA4) events via a server. That&rsquo;s why we need a GA4 configuration tag on the client. The trigger should be &ldquo;All Pages&rdquo; so that it fires on every page.<\/p>\n<p>The tag requires a valid measurement ID, which is included in the<a href=\"https:\/\/support.google.com\/analytics\/answer\/9539598?hl=en\">Google Analytics settings<\/a>can be found. Additionally, we need a server container URL, e.g. tracking.e-dialog.group<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/4_serversside_ga4_config_tag-1024x879.jpg\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/4_serversside_ga4_config_tag-1024x879.jpg 1024w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/4_serversside_ga4_config_tag-300x258.jpg 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/4_serversside_ga4_config_tag-768x660.jpg 768w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/4_serversside_ga4_config_tag.jpg 1183w\" alt=\"Blog Serverside Tagging - Serverside GA4 Config Tag\" width=\"800\" height=\"687\">In this example we leave it at the page view event, which is also fired on this day. Of course, various other events can be created in this container.<\/p>\n<h4>The server container<\/h4>\n<p>You can easily select the server-side container using the &ldquo;Server&rdquo; selection when creating the container:<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/5_serverside_container_creation-1024x979.jpg\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/5_serverside_container_creation-1024x979.jpg 1024w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/5_serverside_container_creation-300x287.jpg 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/5_serverside_container_creation-768x734.jpg 768w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/5_serverside_container_creation.jpg 1050w\" alt=\"Blog Serverside Tagging - Serverside Container Creation\" width=\"800\" height=\"765\">After clicking on Create, a popup opens:<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/6_serverside_tagging_server_creation.jpg\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/6_serverside_tagging_server_creation.jpg 998w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/6_serverside_tagging_server_creation-300x223.jpg 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/6_serverside_tagging_server_creation-768x571.jpg 768w\" alt=\"Blog Serverside Tagging - Serverside Tagging Server Creation\" width=\"800\" height=\"595\">For tracking on your own server, the manual option must be selected. We will need the container config shown here later in the Docker configuration. It can be accessed at any time via the settings.<\/p>\n<p>With the server side container creation, two server side clients are automatically created, one for Universal Analytics and one for GA4. This means analytics requests can be processed immediately. You don&rsquo;t have to change anything here.<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/7_serverside_request_handling_clients-1024x187.jpg\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/7_serverside_request_handling_clients-1024x187.jpg 1024w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/7_serverside_request_handling_clients-300x55.jpg 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/7_serverside_request_handling_clients-768x140.jpg 768w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/7_serverside_request_handling_clients.jpg 1246w\" alt=\"Blog Serverside Tagging - Serverside Request Handling Clients\" width=\"800\" height=\"146\">A tag is also required that processes the Google Analytics events:<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/8_serverside_pageview_tag-930x1024.jpg\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/8_serverside_pageview_tag-930x1024.jpg 930w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/8_serverside_pageview_tag-272x300.jpg 272w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/8_serverside_pageview_tag-768x846.jpg 768w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/8_serverside_pageview_tag.jpg 935w\" alt=\"Blog Serverside Tagging - Serverside Pageview Tag\" width=\"800\" height=\"881\">The measurement ID can remain empty; it will then be taken over by the request sent by the client container.<b>Anonymizing the IP address is an important tool for data protection and a major advantage of server side tracking.<\/b><\/p>\n<h4>The tracking server<\/h4>\n<p>Here you have free rein to choose a server. It is an advantage if you think about expandability when selecting the server, for example to position your tagging server behind a load balancer.<\/p>\n<p>Basically, any server can be used on which you can host Docker containers &ndash; i.e. practically any common operating system as well as common cloud solutions.<\/p>\n<p>I have one for this article<a href=\"https:\/\/www.hetzner.com\/cloud#pricing\">CPX 21 instance from Hetzner<\/a>used and installed the provided Docker Ubuntu image on it in order to then make further settings via SSH.<\/p>\n<h4>Domain\/DNS settings<\/h4>\n<p>Since the tracking server is under your control and should also be accessible under the same domain as your website, appropriate DNS settings must be made.<\/p>\n<p>To do this, a DNS entry must be created which points to the IP of the tracking server.<\/p>\n<p>The server&rsquo;s IP address can be easily accessed in the Hetzner Cloud:<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/9_hetzner_vps_overview-1024x229.jpg\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/9_hetzner_vps_overview-1024x229.jpg 1024w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/9_hetzner_vps_overview-300x67.jpg 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/9_hetzner_vps_overview-768x172.jpg 768w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/9_hetzner_vps_overview.jpg 1250w\" alt=\"Blog Serverside Tagging - Hetzner VPS Overview\" width=\"800\" height=\"179\">A subdomain is required for normal operation. In order to use the preview mode you need a second subdomain. In this example, the tracking server has the subdomain &ldquo;gtm&rdquo; and the preview server has the subdomain &ldquo;preview&rdquo;:<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/10_hetzner_dns_settings-1024x609.jpg\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/10_hetzner_dns_settings-1024x609.jpg 1024w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/10_hetzner_dns_settings-300x178.jpg 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/10_hetzner_dns_settings-768x457.jpg 768w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/10_hetzner_dns_settings.jpg 1251w\" alt=\"Blog Serverside Tagging - Hetzner DNS Settings\" width=\"800\" height=\"476\"><\/p>\n<h4>Nginx and the SSL\/TLS Certificate<\/h4>\n<p>Since we use Nginx as a proxy, the service must first be installed on the server. One<a href=\"https:\/\/ubuntu.com\/tutorials\/install-and-configure-nginx#1-overview\">Instructions for Ubuntu can be found at this link<\/a>be found.<\/p>\n<p>After Nginx has been installed, it is important to check whether the server is publicly accessible. The<a href=\"https:\/\/www.nginx.com\/resources\/wiki\/start\/topics\/examples\/full\/\">Default Nginx configuration<\/a>hosts static web files, making testing easy. If you access the IP of the server, you should see the Nginx welcome page.<\/p>\n<p>For Google Server Side Tagging to work, a valid SSL certificate is required. How you install one depends on the server you use. For this example we have the<a href=\"https:\/\/certbot.eff.org\/instructions\">Certbot with Let&rsquo;s Encrypt<\/a>used.<\/p>\n<h4>Edit and deploy your configuration<\/h4>\n<p>All configuration files needed for this example can<a href=\"https:\/\/github.com\/e-dialog\/VPS-Server-Side-Tag-Manager-Config-with-Nginx\">here<\/a>be found.<\/p>\n<p>To stay clear, we use two<a href=\"https:\/\/docs.docker.com\/compose\/\">docker-compose files<\/a>.<\/p>\n<p>A Docker-Compose to start the proxy and a Docker-Compose for the GTM containers.<\/p>\n<p>docker-compose.proxy.yml<\/p>\n<pre data-line=\"\"><code><\/code><\/pre>\n<p>Ports 80, 443 and 8080 are mapped for the proxy container. A network for the required Docker containers is created. gtm_production and gtm_preview are references to the respective Docker containers.<\/p>\n<p>Likewise, folders are shared with the host:<\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\">Log files and the webroot for testing &amp; Debugging<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">Nginx Config for all proxy settings<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">The TLS certificates<\/li>\n<\/ul>\n<p>docker-compose.gtm.yml<\/p>\n<pre data-line=\"\"><code><\/code><\/pre>\n<p>The proxy server&rsquo;s docker-compose does not necessarily need to be adjusted. Depending on your setup, other ports or volume bindings may be necessary.<\/p>\n<h4>Step 6: Start the Docker containers<\/h4>\n<p>To start the containers, you have to upload your config files to the server. The containers can be started with the following commands:<\/p>\n<p>docker-compose -f docker-compose.gtm.yml up -d<\/p>\n<p>docker-compose -f docker-compose.proxy.yml up -d<\/p>\n<p>Using docker ps, the currently running containers can be listed.<\/p>\n<p>There should now be 3 containers running; the proxy, the tracking server and the preview server.<\/p>\n<p>If everything is configured correctly, events will now start running and the website or the current GTM container can be tested in preview mode via the GTM.<\/p>\n<p>Attention: These instructions show a simple example of the operation of a tracking server. For real operation, the Nginx configuration, the network structure and the server management must be well thought out and adapted to your specific needs.<b>Debugging<\/b>:<\/p>\n<p>If something doesn&rsquo;t work, you can check the Nginx Access Log to see whether connections are being established. In addition, the error log can be used to check whether there are connection errors.<\/p>\n<h2>CONCLUSION &ndash; Server Side offers full GDPR compliance<\/h2>\n<p>It is possible to host the Side GTM server completely independently of Google servers. However, this requires significantly more effort and know-how. Alternatively, Google Cloud can be used as a host. Since the SST GTM runs in a Docker container, switching between self-hosted and Google-hosted solutions is easy.<\/p>\n<p>There is currently a lot of discussion about GDPR compliance. Google&rsquo;s SST GTM is flexible enough to map any data flow scenario. The challenge is to use the technology provided correctly.<\/p>\n<h3>Do you have anymore questions? We will be happy to support you with any questions you may have about server side tracking. Please send a contact request to<a>kontakt@e-dialog.group&lt;mailto:kontakt@e-dialog.group&gt;<\/a><\/h3>\n","protected":false},"excerpt":{"rendered":"<p>Server Side Tagging (SST) means sending tracking data via a dedicated server with full control over what data is sent where. This control and greater visibility into data flow improves the enforceability of GDPR policies. In addition, the data sent can be enriched. Likewise, more efficient data streams reduce the load on end devices. The Google SST server is provided as a Docker image and can be used on various hosting providers. Hosting on your own VPS (Virtual Private Server) is explained using an example.<\/p>\n","protected":false},"author":1,"featured_media":4804,"comment_status":"closed","ping_status":"open","sticky":false,"template":"post-old.php","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[5,445],"channel":[],"goal":[463],"technology":[38],"c-year":[48],"class_list":{"0":"post-12886","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","6":"hentry","7":"category-analytics","9":"goal-digital-strategy","10":"technology-google-tag-manager","11":"c-year-48"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.5 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Hosting A Google Server Side Gtm Container On A Vps - e-dialog<\/title>\n<meta name=\"description\" content=\"Server Side Tagging (SST) means sending tracking data via a dedicated server with full control over what data is sent where. This control and greater visibility into data flow improves the enforceability of GDPR policies. In addition, the data sent can be enriched. Likewise, more efficient data streams reduce the load on end devices. The Google SST server is provided as a Docker image and can be used on various hosting providers. Hosting on your own VPS (Virtual Private Server) is explained using an example.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Hosting A Google Server Side Gtm Container On A Vps\" \/>\n<meta property=\"og:description\" content=\"Server Side Tagging (SST) means sending tracking data via a dedicated server with full control over what data is sent where. This control and greater visibility into data flow improves the enforceability of GDPR policies. In addition, the data sent can be enriched. Likewise, more efficient data streams reduce the load on end devices. The Google SST server is provided as a Docker image and can be used on various hosting providers. Hosting on your own VPS (Virtual Private Server) is explained using an example.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/\" \/>\n<meta property=\"og:site_name\" content=\"e-dialog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/edialog.group\" \/>\n<meta property=\"article:published_time\" content=\"2022-04-27T00:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-26T13:38:15+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/cookie-banner-ch.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2200\" \/>\n\t<meta property=\"og:image:height\" content=\"1180\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"digitalists\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"digitalists\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/\"},\"author\":{\"name\":\"digitalists\",\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#\\\/schema\\\/person\\\/7b481e2ac90c21e4dc393821d35bb518\"},\"headline\":\"Hosting A Google Server Side Gtm Container On A Vps\",\"datePublished\":\"2022-04-27T00:00:00+00:00\",\"dateModified\":\"2026-02-26T13:38:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/\"},\"wordCount\":1812,\"publisher\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/e-dialog.group\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/cookie-banner-ch.png\",\"articleSection\":[\"Analytics\",\"Analytics\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/\",\"url\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/\",\"name\":\"Hosting A Google Server Side Gtm Container On A Vps - e-dialog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/e-dialog.group\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/cookie-banner-ch.png\",\"datePublished\":\"2022-04-27T00:00:00+00:00\",\"dateModified\":\"2026-02-26T13:38:15+00:00\",\"description\":\"Server Side Tagging (SST) means sending tracking data via a dedicated server with full control over what data is sent where. This control and greater visibility into data flow improves the enforceability of GDPR policies. In addition, the data sent can be enriched. Likewise, more efficient data streams reduce the load on end devices. The Google SST server is provided as a Docker image and can be used on various hosting providers. Hosting on your own VPS (Virtual Private Server) is explained using an example.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/#primaryimage\",\"url\":\"https:\\\/\\\/e-dialog.group\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/cookie-banner-ch.png\",\"contentUrl\":\"https:\\\/\\\/e-dialog.group\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/cookie-banner-ch.png\",\"width\":2200,\"height\":1180,\"caption\":\"|\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/hosting-a-google-server-side-gtm-container-on-a-vps\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Hosting A Google Server Side Gtm Container On A Vps\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/\",\"name\":\"e-dialog\",\"description\":\"Data-driven Marketing &amp; Strategie\",\"publisher\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#organization\",\"name\":\"e-dialog\",\"url\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/e-dialog.group\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/e-dialog-logo.svg\",\"contentUrl\":\"https:\\\/\\\/e-dialog.group\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/e-dialog-logo.svg\",\"width\":1,\"height\":1,\"caption\":\"e-dialog\"},\"image\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/edialog.group\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/e-dialog-gmbh\\\/\",\"https:\\\/\\\/www.instagram.com\\\/e_dialog\\\/\",\"https:\\\/\\\/www.tiktok.com\\\/@e_dialog\"],\"description\":\"Bei e-dialog gestalteten wir gemeinsam die Zukunft des data-driven Marketings - mit einem gro\u00dfartigen Team aus passionierten Expert*innen.\",\"email\":\"kontakt@e-dialog.group\",\"telephone\":\"+43 1 309 09 09\",\"legalName\":\"e-dialog GmbH\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#\\\/schema\\\/person\\\/7b481e2ac90c21e4dc393821d35bb518\",\"name\":\"digitalists\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/8acd1abfb5ef9f78793e3164334d4533968653b26cbd89b6cf0eb4e5483434e4?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/8acd1abfb5ef9f78793e3164334d4533968653b26cbd89b6cf0eb4e5483434e4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/8acd1abfb5ef9f78793e3164334d4533968653b26cbd89b6cf0eb4e5483434e4?s=96&d=mm&r=g\",\"caption\":\"digitalists\"},\"sameAs\":[\"https:\\\/\\\/e-dialog.group\"],\"url\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/author\\\/digitalists\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Hosting A Google Server Side Gtm Container On A Vps - e-dialog","description":"Server Side Tagging (SST) means sending tracking data via a dedicated server with full control over what data is sent where. This control and greater visibility into data flow improves the enforceability of GDPR policies. In addition, the data sent can be enriched. Likewise, more efficient data streams reduce the load on end devices. The Google SST server is provided as a Docker image and can be used on various hosting providers. Hosting on your own VPS (Virtual Private Server) is explained using an example.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/","og_locale":"en_US","og_type":"article","og_title":"Hosting A Google Server Side Gtm Container On A Vps","og_description":"Server Side Tagging (SST) means sending tracking data via a dedicated server with full control over what data is sent where. This control and greater visibility into data flow improves the enforceability of GDPR policies. In addition, the data sent can be enriched. Likewise, more efficient data streams reduce the load on end devices. The Google SST server is provided as a Docker image and can be used on various hosting providers. Hosting on your own VPS (Virtual Private Server) is explained using an example.","og_url":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/","og_site_name":"e-dialog","article_publisher":"https:\/\/www.facebook.com\/edialog.group","article_published_time":"2022-04-27T00:00:00+00:00","article_modified_time":"2026-02-26T13:38:15+00:00","og_image":[{"width":2200,"height":1180,"url":"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/cookie-banner-ch.png","type":"image\/png"}],"author":"digitalists","twitter_card":"summary_large_image","twitter_misc":{"Written by":"digitalists","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/#article","isPartOf":{"@id":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/"},"author":{"name":"digitalists","@id":"https:\/\/e-dialog.group\/en\/#\/schema\/person\/7b481e2ac90c21e4dc393821d35bb518"},"headline":"Hosting A Google Server Side Gtm Container On A Vps","datePublished":"2022-04-27T00:00:00+00:00","dateModified":"2026-02-26T13:38:15+00:00","mainEntityOfPage":{"@id":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/"},"wordCount":1812,"publisher":{"@id":"https:\/\/e-dialog.group\/en\/#organization"},"image":{"@id":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/#primaryimage"},"thumbnailUrl":"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/cookie-banner-ch.png","articleSection":["Analytics","Analytics"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/","url":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/","name":"Hosting A Google Server Side Gtm Container On A Vps - e-dialog","isPartOf":{"@id":"https:\/\/e-dialog.group\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/#primaryimage"},"image":{"@id":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/#primaryimage"},"thumbnailUrl":"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/cookie-banner-ch.png","datePublished":"2022-04-27T00:00:00+00:00","dateModified":"2026-02-26T13:38:15+00:00","description":"Server Side Tagging (SST) means sending tracking data via a dedicated server with full control over what data is sent where. This control and greater visibility into data flow improves the enforceability of GDPR policies. In addition, the data sent can be enriched. Likewise, more efficient data streams reduce the load on end devices. The Google SST server is provided as a Docker image and can be used on various hosting providers. Hosting on your own VPS (Virtual Private Server) is explained using an example.","breadcrumb":{"@id":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/#primaryimage","url":"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/cookie-banner-ch.png","contentUrl":"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/cookie-banner-ch.png","width":2200,"height":1180,"caption":"|"},{"@type":"BreadcrumbList","@id":"https:\/\/e-dialog.group\/en\/blog\/hosting-a-google-server-side-gtm-container-on-a-vps\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/e-dialog.group\/en\/"},{"@type":"ListItem","position":2,"name":"Hosting A Google Server Side Gtm Container On A Vps"}]},{"@type":"WebSite","@id":"https:\/\/e-dialog.group\/en\/#website","url":"https:\/\/e-dialog.group\/en\/","name":"e-dialog","description":"Data-driven Marketing &amp; Strategie","publisher":{"@id":"https:\/\/e-dialog.group\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/e-dialog.group\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/e-dialog.group\/en\/#organization","name":"e-dialog","url":"https:\/\/e-dialog.group\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/e-dialog.group\/en\/#\/schema\/logo\/image\/","url":"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/06\/e-dialog-logo.svg","contentUrl":"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/06\/e-dialog-logo.svg","width":1,"height":1,"caption":"e-dialog"},"image":{"@id":"https:\/\/e-dialog.group\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/edialog.group","https:\/\/www.linkedin.com\/company\/e-dialog-gmbh\/","https:\/\/www.instagram.com\/e_dialog\/","https:\/\/www.tiktok.com\/@e_dialog"],"description":"Bei e-dialog gestalteten wir gemeinsam die Zukunft des data-driven Marketings - mit einem gro\u00dfartigen Team aus passionierten Expert*innen.","email":"kontakt@e-dialog.group","telephone":"+43 1 309 09 09","legalName":"e-dialog GmbH"},{"@type":"Person","@id":"https:\/\/e-dialog.group\/en\/#\/schema\/person\/7b481e2ac90c21e4dc393821d35bb518","name":"digitalists","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/8acd1abfb5ef9f78793e3164334d4533968653b26cbd89b6cf0eb4e5483434e4?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/8acd1abfb5ef9f78793e3164334d4533968653b26cbd89b6cf0eb4e5483434e4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/8acd1abfb5ef9f78793e3164334d4533968653b26cbd89b6cf0eb4e5483434e4?s=96&d=mm&r=g","caption":"digitalists"},"sameAs":["https:\/\/e-dialog.group"],"url":"https:\/\/e-dialog.group\/en\/blog\/author\/digitalists\/"}]}},"_links":{"self":[{"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/posts\/12886","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/comments?post=12886"}],"version-history":[{"count":1,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/posts\/12886\/revisions"}],"predecessor-version":[{"id":13332,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/posts\/12886\/revisions\/13332"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/media\/4804"}],"wp:attachment":[{"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/media?parent=12886"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/categories?post=12886"},{"taxonomy":"channel","embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/channel?post=12886"},{"taxonomy":"goal","embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/goal?post=12886"},{"taxonomy":"technology","embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/technology?post=12886"},{"taxonomy":"c-year","embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/c-year?post=12886"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}