{"id":12994,"date":"2023-12-13T00:00:00","date_gmt":"2023-12-13T00:00:00","guid":{"rendered":"https:\/\/e-dialog.group\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/"},"modified":"2026-02-26T13:38:24","modified_gmt":"2026-02-26T13:38:24","slug":"gtm-advanced-techniques-for-simplifying-tracking-setups","status":"publish","type":"post","link":"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/","title":{"rendered":"Gtm Advanced Techniques For Simplifying Tracking Setups"},"content":{"rendered":"<p>In this article, discover advanced JavaScript techniques that you can use for your tracking setup in Google Tag Manager and thus simplify your setup! This blog article presents two methods that are particularly helpful for more complex tracking setups in a variety of applications and collaborating teams.<\/p>\n<h2>Currying functions<\/h2>\n<p>Currying is a JavaScript technique that allows functions with multiple arguments to be transformed into a chain of functions with one argument each. The result is a nested function structure with inner and outer functions, where the output value of an inner function represents the parameter of the outer function. This allows functions to be dynamically created and reused by configuring parts of their logic separately. In a complex tracking setup that involves many variable parameters, currying can provide an elegant solution to simplify DRY (Don&rsquo;t repeat yourself) functions and avoid redundant code blocks.<\/p>\n<p>In Google Tag Manager you implement such reusable functions by returning a function in a custom JS:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"477\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img1-1024x611.png\" alt=\"Custom JS Funktion\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img1-1024x611.png 1024w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img1-300x179.png 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img1-768x458.png 768w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img1.png 1056w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img1.png 1259w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\"><\/p>\n<p>Variable Configuration, source: e-dialog<\/p>\n<p>In practice, currying is particularly helpful when implementing processing functions, for example when cleaning PII from URL-based parameters. In this case, the first function in the currying chain could take the original URL variable as an argument and start a process to extract the relevant (not whitelisted) query parameters (see previous image). The result can then be passed on to the next function in the currying chain, which then takes care of the path and processes it accordingly. This function could look like this:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"477\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img2-1-1024x611.png\" alt=\"Added Variable Configuration\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img2-1-1024x611.png 1024w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img2-1-300x179.png 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img2-1-768x458.png 768w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img2-1.png 1056w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img2-1.png 1259w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\"><\/p>\n<p>Added Variable Configuration, source: e-dialog<\/p>\n<p>This approach allows you to break URL parameter processing into separate, easy-to-understand functions, and extend or change behavior as needed by simply adding more functions into the currying chain.<\/p>\n<p>Applied to the Page URL variable it looks like this:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"477\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img3-1-1024x611.png\" alt=\"\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img3-1-1024x611.png 1024w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img3-1-300x179.png 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img3-1-768x458.png 768w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img3-1.png 1056w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img3-1.png 1264w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\"><\/p>\n<p>Page URL &ndash; Processed, source: e-dialog<\/p>\n<p>First, the Query Param Whitelist function is called, which contains the page URL as a parameter. The output value of this function is in turn fed into the outer Path IDs Processing function. The result is a unique definition of logic using multiple functions that can be called as needed in different scenarios. To stick with this example: Instead of setting up the processing twice for the page location and the referrer and thus working on two different variables, you define a series of currying functions that you only call for the page URL and referrer. This means that work and maintenance only has to be done in one place, which saves code and reduces the risk of errors.<\/p>\n<p>In addition, currying can also be used for general data processing in a complex tracking setup. For example, if you have a set of tracking data that requires specific filtering or transformation logic, you can create a currying chain of functions that are applied to the data sequentially. This allows you to clearly structure the processing logic and simplify the code by splitting and reusing the individual steps.<\/p>\n<h2>Targeted tracking through the use of zones (360 feature)<\/h2>\n<p>In a complex tracking setup, it is common to have different tags, triggers and variables working on different parts of a website. However, it is not always necessary to run these elements site-wide as this could potentially impact site performance. Zones in Google Tag Manager offer a solution to this challenge by allowing specific limits to be set on the execution of these elements to enable targeted and efficient tracking. Parts of the tracking can be excluded or included based on various criteria such as certain URLs, page names or variables. Zones also provide the ability to link different containers together. If you use multiple Google Tag Manager containers on your website, you can specifically control the collaboration and data exchange between the containers. In summary, it allows you to implement unified tracking strategies and synchronize analysis across different containers.<\/p>\n<p>Zones are implemented through the integrated interface in the GTM. This looks like this and offers the configuration options mentioned above:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"267\" src=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img4-1024x342.png\" alt=\"\" srcset=\"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img4-1024x342.png 1024w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img4-300x100.png 300w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img4-768x257.png 768w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img4.png 1200w, https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/img4.png 1486w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\"><\/p>\n<p>Zone Configuration, source: e-dialog<\/p>\n<h2>Conclusion:<\/h2>\n<p>Overall, Currying and Zones in JavaScript and Google Tag Manager enable targeted and efficient processing of tracking data, resulting in leaner, more precise and more maintainable tracking setups and optimizing site performance.<\/p>\n<h3>Our team is familiar with the implementation of complex tracking situations. Please feel free to contact us at<a href=\"mailto:kontakt@e-dialog.group\">kontakt@e-dialog.group<\/a>for advice and support!<\/h3>\n","protected":false},"excerpt":{"rendered":"<p>Currying and Zones are a Javascript technique and GTM feature that are great for optimizing complex tracking setups. Currying simplifies functions and reduces redundancies, especially when processing different variables repeatedly. Zones in Google Tag Manager enable targeted data collection, improve tracking accuracy, and link containers for unified tracking strategies. Using these techniques results in leaner, more efficient, and more maintainable code that delivers accurate insights and improves website performance.<\/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":[47],"class_list":{"0":"post-12994","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-47"},"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>Gtm Advanced Techniques For Simplifying Tracking Setups - e-dialog<\/title>\n<meta name=\"description\" content=\"Currying and Zones are a Javascript technique and GTM feature that are great for optimizing complex tracking setups. Currying simplifies functions and reduces redundancies, especially when processing different variables repeatedly. Zones in Google Tag Manager enable targeted data collection, improve tracking accuracy, and link containers for unified tracking strategies. Using these techniques results in leaner, more efficient, and more maintainable code that delivers accurate insights and improves website performance.\" \/>\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\/gtm-advanced-techniques-for-simplifying-tracking-setups\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Gtm Advanced Techniques For Simplifying Tracking Setups\" \/>\n<meta property=\"og:description\" content=\"Currying and Zones are a Javascript technique and GTM feature that are great for optimizing complex tracking setups. Currying simplifies functions and reduces redundancies, especially when processing different variables repeatedly. Zones in Google Tag Manager enable targeted data collection, improve tracking accuracy, and link containers for unified tracking strategies. Using these techniques results in leaner, more efficient, and more maintainable code that delivers accurate insights and improves website performance.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/\" \/>\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=\"2023-12-13T00:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-26T13:38:24+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=\"4 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\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/\"},\"author\":{\"name\":\"digitalists\",\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#\\\/schema\\\/person\\\/7b481e2ac90c21e4dc393821d35bb518\"},\"headline\":\"Gtm Advanced Techniques For Simplifying Tracking Setups\",\"datePublished\":\"2023-12-13T00:00:00+00:00\",\"dateModified\":\"2026-02-26T13:38:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/\"},\"wordCount\":722,\"publisher\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/#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\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/\",\"url\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/\",\"name\":\"Gtm Advanced Techniques For Simplifying Tracking Setups - e-dialog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/e-dialog.group\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/cookie-banner-ch.png\",\"datePublished\":\"2023-12-13T00:00:00+00:00\",\"dateModified\":\"2026-02-26T13:38:24+00:00\",\"description\":\"Currying and Zones are a Javascript technique and GTM feature that are great for optimizing complex tracking setups. Currying simplifies functions and reduces redundancies, especially when processing different variables repeatedly. Zones in Google Tag Manager enable targeted data collection, improve tracking accuracy, and link containers for unified tracking strategies. Using these techniques results in leaner, more efficient, and more maintainable code that delivers accurate insights and improves website performance.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/blog\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/#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\\\/gtm-advanced-techniques-for-simplifying-tracking-setups\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/e-dialog.group\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Gtm Advanced Techniques For Simplifying Tracking Setups\"}]},{\"@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":"Gtm Advanced Techniques For Simplifying Tracking Setups - e-dialog","description":"Currying and Zones are a Javascript technique and GTM feature that are great for optimizing complex tracking setups. Currying simplifies functions and reduces redundancies, especially when processing different variables repeatedly. Zones in Google Tag Manager enable targeted data collection, improve tracking accuracy, and link containers for unified tracking strategies. Using these techniques results in leaner, more efficient, and more maintainable code that delivers accurate insights and improves website performance.","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\/gtm-advanced-techniques-for-simplifying-tracking-setups\/","og_locale":"en_US","og_type":"article","og_title":"Gtm Advanced Techniques For Simplifying Tracking Setups","og_description":"Currying and Zones are a Javascript technique and GTM feature that are great for optimizing complex tracking setups. Currying simplifies functions and reduces redundancies, especially when processing different variables repeatedly. Zones in Google Tag Manager enable targeted data collection, improve tracking accuracy, and link containers for unified tracking strategies. Using these techniques results in leaner, more efficient, and more maintainable code that delivers accurate insights and improves website performance.","og_url":"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/","og_site_name":"e-dialog","article_publisher":"https:\/\/www.facebook.com\/edialog.group","article_published_time":"2023-12-13T00:00:00+00:00","article_modified_time":"2026-02-26T13:38:24+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":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/#article","isPartOf":{"@id":"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/"},"author":{"name":"digitalists","@id":"https:\/\/e-dialog.group\/en\/#\/schema\/person\/7b481e2ac90c21e4dc393821d35bb518"},"headline":"Gtm Advanced Techniques For Simplifying Tracking Setups","datePublished":"2023-12-13T00:00:00+00:00","dateModified":"2026-02-26T13:38:24+00:00","mainEntityOfPage":{"@id":"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/"},"wordCount":722,"publisher":{"@id":"https:\/\/e-dialog.group\/en\/#organization"},"image":{"@id":"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/#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\/gtm-advanced-techniques-for-simplifying-tracking-setups\/","url":"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/","name":"Gtm Advanced Techniques For Simplifying Tracking Setups - e-dialog","isPartOf":{"@id":"https:\/\/e-dialog.group\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/#primaryimage"},"image":{"@id":"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/#primaryimage"},"thumbnailUrl":"https:\/\/e-dialog.group\/wp-content\/uploads\/2025\/08\/cookie-banner-ch.png","datePublished":"2023-12-13T00:00:00+00:00","dateModified":"2026-02-26T13:38:24+00:00","description":"Currying and Zones are a Javascript technique and GTM feature that are great for optimizing complex tracking setups. Currying simplifies functions and reduces redundancies, especially when processing different variables repeatedly. Zones in Google Tag Manager enable targeted data collection, improve tracking accuracy, and link containers for unified tracking strategies. Using these techniques results in leaner, more efficient, and more maintainable code that delivers accurate insights and improves website performance.","breadcrumb":{"@id":"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/e-dialog.group\/en\/blog\/gtm-advanced-techniques-for-simplifying-tracking-setups\/#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\/gtm-advanced-techniques-for-simplifying-tracking-setups\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/e-dialog.group\/en\/"},{"@type":"ListItem","position":2,"name":"Gtm Advanced Techniques For Simplifying Tracking Setups"}]},{"@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\/12994","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=12994"}],"version-history":[{"count":1,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/posts\/12994\/revisions"}],"predecessor-version":[{"id":13439,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/posts\/12994\/revisions\/13439"}],"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=12994"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/categories?post=12994"},{"taxonomy":"channel","embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/channel?post=12994"},{"taxonomy":"goal","embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/goal?post=12994"},{"taxonomy":"technology","embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/technology?post=12994"},{"taxonomy":"c-year","embeddable":true,"href":"https:\/\/e-dialog.group\/en\/wp-json\/wp\/v2\/c-year?post=12994"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}