{"id":749,"date":"2022-06-21T13:30:00","date_gmt":"2022-06-21T17:30:00","guid":{"rendered":"https:\/\/www.digitaldatatactics.com\/?p=749"},"modified":"2022-06-21T11:09:37","modified_gmt":"2022-06-21T15:09:37","slug":"tmsbp-extensions-or-code","status":"publish","type":"post","link":"https:\/\/www.digitaldatatactics.com\/index.php\/2022\/06\/21\/tmsbp-extensions-or-code\/","title":{"rendered":"Should I use my TMS&#8217;s Extensions to deploy tags, or copy-and-paste as custom code?"},"content":{"rendered":"\n<p>This is a question I get asked a lot: should I use my Tag Management System&#8217;s Extensions (or Plugins, or Tag Templates, depending on which TMS), or should I just copy-and-paste tags as custom code? The true consultant answer is: it depends. <\/p>\n\n\n\n<ul><li>Extensions do have some inherent weight. In GTM, adding a single AdWords conversion event using the Tag Template can add 10-20KB to the weight of my container. Extensions can be heavier than a simple code deployment, but lighter than a messy code deployment. <\/li><li>Extensions are less flexible. If you have conditions around your tags, such as &#8220;in the US, add these variables to our Doubleclick conversion event, but in the UK, leave those out&#8221;, that can be really hard to implement using an extension, but fairly simple in code.<\/li><li>Extensions are less likely to cause JS errors. They get load order correct (eg, Launch&#8217;s Target extension ensures the Target script has loaded before it add params, which it does before it fires an mbox). They&#8217;re more likely to stay updated, which means they&#8217;ll work best in current browsers and be more compliant with regulations. <\/li><\/ul>\n\n\n\n<p>The main thing I want folks to think about is what they&#8217;d be willing to give up in order to avoid code. A lot of companies set forth with the goal of having a code-free implementation, thinking that that is the best practice worth achieving. But in many cases, that goal isn&#8217;t worth the cost. Vendors\/agencies often send their tag requests AS CODE, intended to be copied-and-pasted:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2022\/06\/image-40.png\"><img loading=\"lazy\" decoding=\"async\" width=\"632\" height=\"334\" src=\"https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2022\/06\/image-40.png\" alt=\"\" class=\"wp-image-805\" srcset=\"https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2022\/06\/image-40.png 632w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2022\/06\/image-40-300x159.png 300w\" sizes=\"(max-width: 632px) 100vw, 632px\" \/><\/a><\/figure>\n\n\n\n<p>So someone is going to have to interpret that code into the friendly UI of the extension, which does introduce room for error&#8230; perhaps more error than merely copying-and-pasting. <\/p>\n\n\n\n<p>I know code can be scary if you don&#8217;t have a lot of technical resources working on your implementation. Do what you think you can sustain. But don&#8217;t assume that code-free is the ideal you must fight to achieve. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is a question I get asked a lot: should I use my Tag Management System&#8217;s Extensions (or Plugins, or Tag Templates, depending on which TMS), or should I just copy-and-paste tags as custom code? The true consultant answer is: it depends. Extensions do have some inherent weight. In GTM, adding a single AdWords conversion &#8230; <a title=\"Should I use my TMS&#8217;s Extensions to deploy tags, or copy-and-paste as custom code?\" class=\"read-more\" href=\"https:\/\/www.digitaldatatactics.com\/index.php\/2022\/06\/21\/tmsbp-extensions-or-code\/\" aria-label=\"Read more about Should I use my TMS&#8217;s Extensions to deploy tags, or copy-and-paste as custom code?\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[23],"tags":[],"_links":{"self":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/749"}],"collection":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/comments?post=749"}],"version-history":[{"count":2,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/749\/revisions"}],"predecessor-version":[{"id":806,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/749\/revisions\/806"}],"wp:attachment":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/media?parent=749"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/categories?post=749"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/tags?post=749"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}