{"id":542,"date":"2018-10-29T20:17:00","date_gmt":"2018-10-29T20:17:00","guid":{"rendered":"https:\/\/www.digitaldatatactics.com\/?p=542"},"modified":"2020-09-17T21:15:19","modified_gmt":"2020-09-17T21:15:19","slug":"dtm-to-launch-migration-series-1-options-and-considerations","status":"publish","type":"post","link":"https:\/\/www.digitaldatatactics.com\/index.php\/2018\/10\/29\/dtm-to-launch-migration-series-1-options-and-considerations\/","title":{"rendered":"DTM-to-Launch Migration Series #1: Options and Considerations"},"content":{"rendered":"\n<div class=\"wp-block-image\"><figure class=\"alignright size-thumbnail is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2020\/09\/33sticks_logo-150x150.png\" alt=\"33 Sticks Logo- Orange Circle with 3|3 in it\" class=\"wp-image-538\" width=\"75\" height=\"75\" srcset=\"https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2020\/09\/33sticks_logo-150x150.png 150w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2020\/09\/33sticks_logo-300x300.png 300w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2020\/09\/33sticks_logo.png 441w\" sizes=\"(max-width: 75px) 100vw, 75px\" \/><\/figure><\/div>\n\n\n\n<p>(cross-posted from <a href=\"https:\/\/33sticks.com\/dtm-launch-migration-series-1-options-considerations\/\">the 33 Sticks Blog<\/a>)<\/p>\n\n\n\n<p>Adobe\u2019s Launch is really building momentum (they just announced&nbsp;<a href=\"https:\/\/medium.com\/launch-by-adobe\/dtm-plans-for-a-sunset-3c6aab003a6f\" target=\"_blank\" rel=\"noreferrer noopener\">the plan to sunset DTM<\/a>\u2013 editing abilities end&nbsp;<del>December 31st, 2019<\/del>&nbsp;July 1st, 2020; read-only access dies&nbsp;<del>June 2020<\/del>&nbsp;December 31st, 2020 (dates updated to reflect Adobe\u2019s change)), and in the past few months, it feels like almost every day, I get asked \u201cwhat does a launch migration look like?\u201d<\/p>\n\n\n\n<p>And I\u2019m afraid I have a very unhelpful answer:&nbsp;<strong>it totally depends<\/strong>.<\/p>\n\n\n\n<p>We\u2019ve had visibility into about a dozen migrations now, and each one has been a completely unique case. But I figured I can at least defend my answer of \u201cit depends\u201d by clarifying what it depends on, what the options are, and what considerations should you make.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">WHAT YOU NEED TO KNOW<\/h3>\n\n\n\n<p><strong>Preparing to Migrate<\/strong><br><a href=\"https:\/\/33sticks.com\/dtm-launch-migration-series-1-options-considerations\/#options\">&nbsp;Adobe DTM to Launch Migration Options<\/a><br><a href=\"https:\/\/33sticks.com\/differences-dtm-launch-aware\/\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Things to be aware when moving from DTM to Launch<\/a><\/p>\n\n\n\n<p><strong>Using the Migration as an Opportunity<\/strong><br><a href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/#properties\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Redo your property structure<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/#standards\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Define standards within Launch<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/#cleanUp\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Clean up redundant\/unused items<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/#conditions\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Best practices for Rule scope\/conditions<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/#naming\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Institute a Naming Schema<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/#dataLayer\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Fix up your data layer<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/#tags\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Optimize your third party tags<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/#document\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Document everything<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/#deployment\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Change your deployment method<\/a><br><a href=\"https:\/\/33sticks.com\/how-to-self-host-a-launch-library\/\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;How to use the download option<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/#libraries\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Update your visitorID\/appMeasurement libraries<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/#adobeTools\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Update cross-Adobe Tool integrations<\/a><\/p>\n\n\n\n<p><strong>The Migration Process<\/strong><br><a href=\"https:\/\/33sticks.com\/dtm-launch-migration-series-3-migration-process\/#rollOut\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;How to roll out Launch<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-launch-migration-series-3-migration-process\/#validation\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Validation<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-launch-migration-series-3-migration-process\/#audit\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Audit what you have (and figure out what you want)<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-launch-migration-series-3-migration-process\/#publishing\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Decide on a publishing flow that works for your org<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-launch-migration-series-3-migration-process\/#projectPlan\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Create a Migration Project Plan<\/a><br><a href=\"https:\/\/33sticks.com\/dtm-launch-migration-series-3-migration-process\/#resources\" target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;Other Resources and Next Steps<\/a><\/p>\n\n\n\n<p><em><strong>Disclaimer:<\/strong>&nbsp;Info in this series is accurate as of, October 29, 2018. We will try to update it as it makes sense to do so, but things can change quickly in the world of TMSes and iterative product releases.<\/em><\/p>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"options\">You\u2019ve Got Options<\/h1>\n\n\n\n<p>As far as we see it, if you\u2019re considering a move from Adobe DTM to Launch, you have a few options:<\/p>\n\n\n\n<ol><li><strong>Use the DTM-to-Launch Migration tool<\/strong>&nbsp;(SEE:&nbsp;<a href=\"https:\/\/docs.adobe.com\/content\/help\/en\/launch\/using\/reference\/upgrade\/upgrade-faq.html\" target=\"_blank\" rel=\"noreferrer noopener\">Adobe\u2019s documentation<\/a>), essentially just doing a lift-and-shift of your current DTM implementation.<\/li><li><strong>Use the DTM-to-Launch migration tool<\/strong>, but do a fair amount of clean up before\/after.<\/li><li><strong>Use a tool like&nbsp;<a href=\"https:\/\/jimalytics.com\/tag-management\/export-dtm-rules-with-tagtician\/\" target=\"_blank\" rel=\"noreferrer noopener\">Tagtician<\/a><\/strong>&nbsp;to audit what you currently have, decide what you want to carry over, and set it up \u201cfresh\u201d in Launch (have Launch accomplish the same thing as DTM, but perhaps accomplish it in different ways).<\/li><li>Use this as a chance to&nbsp;<strong>rebuild your solution from the ground up<\/strong>.<\/li><\/ol>\n\n\n\n<p>Most folks we\u2019ve talked to or worked with are looking at somewhere in that 2-3 range. In most cases, we\u2019d strongly discourage going with option #1, that straight-up lift-and-shift. I PROMISE there is some room for review and improvement in your DTM implementation.<\/p>\n\n\n\n<p>First, not everything in DTM will work in Launch. Our friends at Search Discovery have&nbsp;<a href=\"https:\/\/www.searchdiscovery.com\/solutions\/partners\/adobe\/adobe-launch\/dtm-launch-assessment\/\" target=\"_blank\" rel=\"noreferrer noopener\">a great tool<\/a>&nbsp;for detecting places within DTM that you may be using code that will no longer work (goodbye, _satellite.getQueryParam).&nbsp;<em>(<strong>NOTE:<\/strong>&nbsp;this detects places in your DTM library you are using those \u201cforbidden\u201d functions- if you are using something like _satellite.getQueryParam in your own javascript outside of DTM, it will not detect it.)<\/em><\/p>\n\n\n\n<p>Technically, aside from the things that that tool will flag, everything that worked in DTM should work in Launch (actually,&nbsp;<a href=\"https:\/\/33sticks.com\/differences-dtm-launch-aware\/\" target=\"_blank\" rel=\"noreferrer noopener\">there are a few major differences you should be aware of<\/a>). BUT, many of the workarounds you may have resorted to in DTM are no longer needed, so you can definitely optimize things. There are some broader differences between DTM and Launch that open the door for some changes to your implementation that could be really valuable.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Consider the following questions:<\/h3>\n\n\n\n<p>Are you currently using&nbsp;<strong>DTM for Single Page Apps<\/strong>? (if so, you\u2019ve almost certainly had to use some workarounds that are no longer needed)<\/p>\n\n\n\n<p>Do you have any&nbsp;<strong>repeated global logic<\/strong>&nbsp;(all of your DCRs or EBRs might be setting \u201ceVar5=%auth status%\u201d because you didn\u2019t have a way to get that eVar included on all beacons otherwise)<\/p>\n\n\n\n<p>Do you use&nbsp;<strong>Direct Call Rules heavily<\/strong>?<\/p>\n\n\n\n<p>Do you have&nbsp;<strong>s.clearVars<\/strong>&nbsp;running in odd places?<\/p>\n\n\n\n<p>Are a large portion of your Analytics variables being set in<strong>&nbsp;custom code blocks<\/strong>&nbsp;instead of in the interface?<\/p>\n\n\n\n<p>Do you&nbsp;<strong>fire any Direct Call Rules from within your DTM implementation<\/strong>&nbsp;(eg, DCRs calling other DCRs to get around timing\/scope issues?)<\/p>\n\n\n\n<p>Are you currently&nbsp;<strong>firing Adobe Analytics beacons from outside of the Analytics Tool<\/strong>&nbsp;(eg, are you using a third party tag box to fire s.t or s.tl because of timing issues?)<\/p>\n\n\n\n<p><strong>If you answered yes to any of the above questions (and perhaps even if not), then you absolutely should be considering moving to Launch ASAP, for all the reasons discussed on these other blog posts:<\/strong><\/p>\n\n\n\n<ul><li>Launch allows you to pass\u00a0<a rel=\"noreferrer noopener\" href=\"https:\/\/33sticks.com\/direct-call-rules-launch-new-power-passing-additional-info-_satellite-track\/\" target=\"_blank\">extra parameters in Direct Call Rules<\/a>\u00a0(eg\u00a0<em>_satellite.track(\u201cadd to cart\u201d,{name:\u201dwug\u201d,price:\u201d12.99\u2033,color:\u201dred\u201d})<\/em>)<\/li><li>In Launch, you can control the order that rules fire in, and which rules fire an analytics beacon, which\u00a0<a rel=\"noreferrer noopener\" href=\"http:\/\/www.digitaldatatactics.com\/index.php\/2018\/01\/30\/dtm-launchs-rule-ordering-is-a-big-deal-for-single-page-apps\/\" target=\"_blank\">has a huge impact for Single Page Apps<\/a>.<\/li><li>Launch has<a rel=\"noreferrer noopener\" href=\"http:\/\/www.digitaldatatactics.com\/index.php\/2018\/01\/30\/dtm-launchs-rule-ordering-is-a-big-deal-for-single-page-apps\/\" target=\"_blank\">\u00a0other improvements for Single Page Apps<\/a>\u00a0(clearVars, conditions on Direct Call Rules, etc)<\/li><li>Launch\u00a0is engineered\u00a0for better\u00a0<a rel=\"noreferrer noopener\" href=\"https:\/\/theblog.adobe.com\/better-launch-performance\/\" target=\"_blank\">Page Performance<\/a><\/li><li>Launch\u2019s\u00a0<a rel=\"noreferrer noopener\" href=\"https:\/\/docs.adobelaunch.com\/publishing\/approval-workflow\" target=\"_blank\">publication flow<\/a>\u00a0is much more flexible, making it easier to publish only what you want to publish to either Dev (as many environments as you want), Staging or Production<\/li><li>Even if you don\u2019t have a Single Page App, or you are currently using any weird work-arounds to get DTM to work for you, you should\u00a0<strong>use a migration as an opportunity to improve your implementation (which leads us to\u00a0<a rel=\"noreferrer noopener\" href=\"https:\/\/33sticks.com\/dtm-to-launch-migration2-a-golden-opportunity\/\" target=\"_blank\">post 2 in the series: A Golden Opportunity<\/a>)<\/strong>.<\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>(cross-posted from the 33 Sticks Blog) Adobe\u2019s Launch is really building momentum (they just announced&nbsp;the plan to sunset DTM\u2013 editing abilities end&nbsp;December 31st, 2019&nbsp;July 1st, 2020; read-only access dies&nbsp;June 2020&nbsp;December 31st, 2020 (dates updated to reflect Adobe\u2019s change)), and in the past few months, it feels like almost every day, I get asked \u201cwhat does &#8230; <a title=\"DTM-to-Launch Migration Series #1: Options and Considerations\" class=\"read-more\" href=\"https:\/\/www.digitaldatatactics.com\/index.php\/2018\/10\/29\/dtm-to-launch-migration-series-1-options-and-considerations\/\" aria-label=\"Read more about DTM-to-Launch Migration Series #1: Options and Considerations\">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":[57,8,45,51,42],"_links":{"self":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/542"}],"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=542"}],"version-history":[{"count":1,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/542\/revisions"}],"predecessor-version":[{"id":543,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/542\/revisions\/543"}],"wp:attachment":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/media?parent=542"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/categories?post=542"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/tags?post=542"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}