{"id":1363,"date":"2024-09-17T23:21:00","date_gmt":"2024-09-17T21:21:00","guid":{"rendered":"https:\/\/nilsrooijmans.com\/daily\/?p=1363"},"modified":"2025-08-20T10:50:30","modified_gmt":"2025-08-20T08:50:30","slug":"ga4-duplicate-utms-which-one-wins","status":"publish","type":"post","link":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins","title":{"rendered":"[GA4] Duplicate UTMs&#8230; which one wins?"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Today was about conversion tracking for me.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I <em>hate<\/em> it.\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Why?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I hate it because conversion tracking is always messy, and I hate it because tracking pretends to present some absolute &#8220;truth&#8221; (which, as we know, doesn&#8217;t exist).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But mostly because it is messy.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The mess I found myself in today was duplicate UTM parameters in the expanded landing page report.\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Yes. You&#8217;ve read that right, I&#8217;ve been analyzing UTM parameters in an expanded landing page report!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Boy, I love my job.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here&#8217;s an example of what I am talking about:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"521\" height=\"203\" src=\"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png\" alt=\"\" class=\"wp-image-1364\" srcset=\"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png 521w, https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1-300x117.png 300w\" sizes=\"auto, (max-width: 521px) 85vw, 521px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><em>(Notice the duplicate utm_source and utm_medium in green and red.)<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Again&#8230; messy!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So my questions were:<br><em>1. &#8220;How the F did this happen, and how do I fix this ASAP?&#8221;<br>2. &#8220;What does GA4 do when it sees duplicate UTM parameters in a URL?&#8221;<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Number 1 was easy. I needed to fix the account-level tracking template and some tracking templates at the campaign and ad group level.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Number 2 was not so easy.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It took me 1.5 hours of searching the web to finally land on a LinkedIn post with the answer by Michele Pisani:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><em>&#8220;I have carried out tests and in both GA4 and BigQuery, the last (duplicate) parameter is the one defining the value.&#8221;<\/em><\/p>\n<\/blockquote>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"370\" src=\"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-2-1024x370.png\" alt=\"\" class=\"wp-image-1365\" srcset=\"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-2-1024x370.png 1024w, https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-2-300x108.png 300w, https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-2-768x278.png 768w, https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-2-1200x434.png 1200w, https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-2.png 1389w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So, now I know. Thanks to Michele, the OCD-PPC-Geek in me can finally sleep.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Have a good night.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&#8211; Nils<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today was about conversion tracking for me. I hate it.\u00a0 Why? I hate it because conversion tracking is always messy, and I hate it because tracking pretends to present some absolute &#8220;truth&#8221; (which, as we know, doesn&#8217;t exist). But mostly because it is messy. The mess I found myself in today was duplicate UTM parameters &hellip; <a href=\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;[GA4] Duplicate UTMs&#8230; which one wins?&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-1363","post","type-post","status-publish","format-standard","hentry","category-google-ads"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>[GA4] Duplicate UTMs... which one wins? - Nils Rooijmans<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[GA4] Duplicate UTMs... which one wins? - Nils Rooijmans\" \/>\n<meta property=\"og:description\" content=\"Today was about conversion tracking for me. I hate it.\u00a0 Why? I hate it because conversion tracking is always messy, and I hate it because tracking pretends to present some absolute &#8220;truth&#8221; (which, as we know, doesn&#8217;t exist). But mostly because it is messy. The mess I found myself in today was duplicate UTM parameters &hellip; Continue reading &quot;[GA4] Duplicate UTMs&#8230; which one wins?&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins\" \/>\n<meta property=\"og:site_name\" content=\"Nils Rooijmans\" \/>\n<meta property=\"article:published_time\" content=\"2024-09-17T21:21:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-20T08:50:30+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png\" \/>\n<meta name=\"author\" content=\"Nils Rooijmans\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nils Rooijmans\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#article\",\"isPartOf\":{\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins\"},\"author\":{\"name\":\"Nils Rooijmans\",\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/645ba0bda90c1467f9d23d332d1f3aa0\"},\"headline\":\"[GA4] Duplicate UTMs&#8230; which one wins?\",\"datePublished\":\"2024-09-17T21:21:00+00:00\",\"dateModified\":\"2025-08-20T08:50:30+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins\"},\"wordCount\":235,\"publisher\":{\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/645ba0bda90c1467f9d23d332d1f3aa0\"},\"image\":{\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#primaryimage\"},\"thumbnailUrl\":\"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png\",\"articleSection\":[\"Google Ads\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins\",\"url\":\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins\",\"name\":\"[GA4] Duplicate UTMs... which one wins? - Nils Rooijmans\",\"isPartOf\":{\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#primaryimage\"},\"image\":{\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#primaryimage\"},\"thumbnailUrl\":\"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png\",\"datePublished\":\"2024-09-17T21:21:00+00:00\",\"dateModified\":\"2025-08-20T08:50:30+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#primaryimage\",\"url\":\"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png\",\"contentUrl\":\"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png\",\"width\":521,\"height\":203},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/nilsrooijmans.com\/daily\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[GA4] Duplicate UTMs&#8230; which one wins?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/#website\",\"url\":\"https:\/\/nilsrooijmans.com\/daily\/\",\"name\":\"Nils Rooijmans Daily Newsletter - Google Ads\",\"description\":\"Daily emails to boost your Google Ads Performance\",\"publisher\":{\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/645ba0bda90c1467f9d23d332d1f3aa0\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/nilsrooijmans.com\/daily\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/645ba0bda90c1467f9d23d332d1f3aa0\",\"name\":\"Nils Rooijmans\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2024\/05\/NilsRooijmans_Green_Background_300x300.jpg\",\"contentUrl\":\"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2024\/05\/NilsRooijmans_Green_Background_300x300.jpg\",\"width\":300,\"height\":300,\"caption\":\"Nils Rooijmans\"},\"logo\":{\"@id\":\"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/image\/\"},\"description\":\"Google Ads Performance Architect with a passion for PPC Automation &amp; AI, in particular via Google Ads Scripts.\",\"sameAs\":[\"https:\/\/nilsrooijmans.com\/\",\"https:\/\/www.linkedin.com\/in\/nilsrooijmans\/\"],\"url\":\"https:\/\/nilsrooijmans.com\/daily\/author\/nils\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[GA4] Duplicate UTMs... which one wins? - Nils Rooijmans","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:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins","og_locale":"en_US","og_type":"article","og_title":"[GA4] Duplicate UTMs... which one wins? - Nils Rooijmans","og_description":"Today was about conversion tracking for me. I hate it.\u00a0 Why? I hate it because conversion tracking is always messy, and I hate it because tracking pretends to present some absolute &#8220;truth&#8221; (which, as we know, doesn&#8217;t exist). But mostly because it is messy. The mess I found myself in today was duplicate UTM parameters &hellip; Continue reading \"[GA4] Duplicate UTMs&#8230; which one wins?\"","og_url":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins","og_site_name":"Nils Rooijmans","article_published_time":"2024-09-17T21:21:00+00:00","article_modified_time":"2025-08-20T08:50:30+00:00","og_image":[{"url":"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png","type":"","width":"","height":""}],"author":"Nils Rooijmans","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Nils Rooijmans","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#article","isPartOf":{"@id":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins"},"author":{"name":"Nils Rooijmans","@id":"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/645ba0bda90c1467f9d23d332d1f3aa0"},"headline":"[GA4] Duplicate UTMs&#8230; which one wins?","datePublished":"2024-09-17T21:21:00+00:00","dateModified":"2025-08-20T08:50:30+00:00","mainEntityOfPage":{"@id":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins"},"wordCount":235,"publisher":{"@id":"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/645ba0bda90c1467f9d23d332d1f3aa0"},"image":{"@id":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#primaryimage"},"thumbnailUrl":"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png","articleSection":["Google Ads"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins","url":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins","name":"[GA4] Duplicate UTMs... which one wins? - Nils Rooijmans","isPartOf":{"@id":"https:\/\/nilsrooijmans.com\/daily\/#website"},"primaryImageOfPage":{"@id":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#primaryimage"},"image":{"@id":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#primaryimage"},"thumbnailUrl":"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png","datePublished":"2024-09-17T21:21:00+00:00","dateModified":"2025-08-20T08:50:30+00:00","breadcrumb":{"@id":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#primaryimage","url":"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png","contentUrl":"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2025\/08\/image-1.png","width":521,"height":203},{"@type":"BreadcrumbList","@id":"https:\/\/nilsrooijmans.com\/daily\/ga4-duplicate-utms-which-one-wins#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/nilsrooijmans.com\/daily"},{"@type":"ListItem","position":2,"name":"[GA4] Duplicate UTMs&#8230; which one wins?"}]},{"@type":"WebSite","@id":"https:\/\/nilsrooijmans.com\/daily\/#website","url":"https:\/\/nilsrooijmans.com\/daily\/","name":"Nils Rooijmans Daily Newsletter - Google Ads","description":"Daily emails to boost your Google Ads Performance","publisher":{"@id":"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/645ba0bda90c1467f9d23d332d1f3aa0"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/nilsrooijmans.com\/daily\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/645ba0bda90c1467f9d23d332d1f3aa0","name":"Nils Rooijmans","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/image\/","url":"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2024\/05\/NilsRooijmans_Green_Background_300x300.jpg","contentUrl":"https:\/\/nilsrooijmans.com\/daily\/wp-content\/uploads\/2024\/05\/NilsRooijmans_Green_Background_300x300.jpg","width":300,"height":300,"caption":"Nils Rooijmans"},"logo":{"@id":"https:\/\/nilsrooijmans.com\/daily\/#\/schema\/person\/image\/"},"description":"Google Ads Performance Architect with a passion for PPC Automation &amp; AI, in particular via Google Ads Scripts.","sameAs":["https:\/\/nilsrooijmans.com\/","https:\/\/www.linkedin.com\/in\/nilsrooijmans\/"],"url":"https:\/\/nilsrooijmans.com\/daily\/author\/nils"}]}},"_links":{"self":[{"href":"https:\/\/nilsrooijmans.com\/daily\/wp-json\/wp\/v2\/posts\/1363","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nilsrooijmans.com\/daily\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nilsrooijmans.com\/daily\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nilsrooijmans.com\/daily\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nilsrooijmans.com\/daily\/wp-json\/wp\/v2\/comments?post=1363"}],"version-history":[{"count":1,"href":"https:\/\/nilsrooijmans.com\/daily\/wp-json\/wp\/v2\/posts\/1363\/revisions"}],"predecessor-version":[{"id":1366,"href":"https:\/\/nilsrooijmans.com\/daily\/wp-json\/wp\/v2\/posts\/1363\/revisions\/1366"}],"wp:attachment":[{"href":"https:\/\/nilsrooijmans.com\/daily\/wp-json\/wp\/v2\/media?parent=1363"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nilsrooijmans.com\/daily\/wp-json\/wp\/v2\/categories?post=1363"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nilsrooijmans.com\/daily\/wp-json\/wp\/v2\/tags?post=1363"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}