{"id":163,"date":"2016-05-27T20:15:13","date_gmt":"2016-05-27T20:15:13","guid":{"rendered":"http:\/\/www.digitaldatatactics.com\/?p=163"},"modified":"2019-10-15T18:35:36","modified_gmt":"2019-10-15T18:35:36","slug":"how-to-approach-product-finding-methods","status":"publish","type":"post","link":"https:\/\/www.digitaldatatactics.com\/index.php\/2016\/05\/27\/how-to-approach-product-finding-methods\/","title":{"rendered":"How to approach Product Finding Methods"},"content":{"rendered":"<p>Product Finding Method (PFM) is a valuable custom report used by online retailers to tie Cart Adds and eventual Revenue to how users found the product. Unfortunately, these reports are often poorly configured or misunderstood. It is one of the best use cases for using the Merchandising setting on an eVar, but Merchandising, as a concept, is one of the more complicated topics in implementation.<\/p>\n<h3>Primer on Merchandising<\/h3>\n<p>In order to tie that PFM value to an individual\u00a0product, and not the overall visit or visitor, we need to use Merchandising. And since we may not know the eventual product at the time that we know the finding method (for instance, if a user is using internal search, at the time we know they are searching, we don&#8217;t know what product they&#8217;ll eventually land on), we need to use Conversion Syntax- meaning we set it like a typical eVar (instead of in the products string) but have to configure at what point that eVar should be tied (or &#8220;bound&#8221;) to a product. Take the following user experience into consideration, where eVar5 is used for Product Finding Methods:<\/p>\n<p><a href=\"http:\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMflow.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-169\" src=\"\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMflow.png\" alt=\"PFMflow\" width=\"792\" height=\"923\" srcset=\"https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMflow.png 792w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMflow-257x300.png 257w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMflow-768x895.png 768w\" sizes=\"(max-width: 792px) 100vw, 792px\" \/><\/a><\/p>\n<p>In the above, if I did NOT use Merchandising, my report might look like this, where <em>External\u00a0Campaign<\/em>\u00a0gets credit for everything up until it gets overwritten by <em>Internal Search<\/em>&#8211; at which point<em> Internal Search<\/em> gets credit for everything, including the entire Purchase event.<\/p>\n<p><a href=\"http:\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMnoMerchReport-1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-167\" src=\"\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMnoMerchReport-1Fixed.png\" alt=\"PFMnoMerchReport\" width=\"783\" height=\"99\" \/><\/a>If I DO use Merchandising, the <em>External Campaign\u00a0<\/em>gets credit for whatever happens to the product it was bound to- in this case, the Blue Wug. Then <em>Internal Search<\/em> gets bound to the Red Wug, and gets credit for whatever happens to the Red Wug product:<\/p>\n<p><a href=\"http:\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMwMerchReport-1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-168\" src=\"\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMwMerchReport-1.jpg\" alt=\"PFMwMerchReport\" width=\"789\" height=\"96\" srcset=\"https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMwMerchReport-1.jpg 789w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMwMerchReport-1-300x37.jpg 300w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/PFMwMerchReport-1-768x93.jpg 768w\" sizes=\"(max-width: 789px) 100vw, 789px\" \/><\/a><\/p>\n<p>We have to be very careful with the binding events (the event that tells Adobe to take whatever value we currently have floating around for that eVar and stick it to the current product), though- merchandising eVars won&#8217;t get credit for anything that happens if they are not bound to any product, or if that product isn&#8217;t currently present. For instance, in the example above, if you pulled in Internal Searches as a metric in that report, you&#8217;d see no PFMs were getting credit for the Internal Search event- even though eVar5 is set <strong>on the same page as our search event<\/strong>. That&#8217;s because that &#8220;Internal Search&#8221; value for eVar5 is <strong>waiting until a &#8220;binding event&#8221; to attach it to a product<\/strong> before it will get credit for any metrics, and the &#8220;External Campaign&#8221; value for eVar5 only gets visibility into things that happen to the product it&#8217;s bound to (Blue Wug). No products on the Internal Search page means Conversion-Syntax Merchandising eVars get no credit for the Search event.<\/p>\n<h3>How to Plan Your Product Finding Methods<\/h3>\n<p>To design your PFM solution, start by thinking of the different ways a client can add an item to their cart.\u00a0<span class=\"s1\">We&#8217;ll call these &#8220;add to cart location&#8221; and give that its own eVar. Typical scenarios are:<\/span><\/p>\n<ul class=\"ul1\">\n<li class=\"li1\"><span class=\"s1\">product details page<\/span><\/li>\n<li class=\"li1\"><span class=\"s1\">quick view<\/span><\/li>\n<li class=\"li1\"><span class=\"s1\">from wishlist<\/span><\/li>\n<li class=\"li1\"><span class=\"s1\">from order history<\/span><\/li>\n<li class=\"li1\">recommendation\/cross sell modules<\/li>\n<\/ul>\n<p>Next, figure out\u00a0<span class=\"s1\">all the ways a user could get to any of those above scenarios. These are Product Finding Methods and should get their own eVar. Typical PFMs include:<\/span><\/p>\n<ul class=\"ul1\">\n<li class=\"li1\"><span class=\"s1\">internal search<\/span><\/li>\n<li class=\"li1\"><span class=\"s1\">external\u00a0site (referrerss and natural search)<\/span><\/li>\n<li class=\"li1\"><span class=\"s1\">external campaigns (that take the user directly to the PDP)<\/span><\/li>\n<li class=\"li1\"><span class=\"s1\">internal promotion (eg, homepage hero banner)<\/span><\/li>\n<li class=\"li1\">browse (naturally navigating through the menu or breadcrumbs)<\/li>\n<li class=\"li1\"><span class=\"s1\">cross-sell<\/span><\/li>\n<li class=\"li1\"><span class=\"s1\">recommendations<\/span><\/li>\n<li class=\"li1\"><span class=\"s1\">wishlist<\/span><\/li>\n<li class=\"li1\"><span class=\"s1\">order history\u00a0<\/span><\/li>\n<\/ul>\n<p>You&#8217;ll notice some of your cart add locations may also be product finding methods- that&#8217;s ok. Note that Products Detail Page is NOT a PFM- the Product Details page is specific to the product, which is\u00a0<em>the thing being found<\/em> not\u00a0<em>the thing doing the finding<\/em>.<\/p>\n<p class=\"p1\"><span class=\"s1\">Both of these eVars will need to be set up for Merchandising (this is set in the Admin console&gt;Report Suites&gt;Edit Settings&gt;Conversion&gt;Conversion Variables). For the Add to Cart Location eVar, since we know the product at the time we know the add to cart location, you can use &#8220;product syntax&#8221;. <\/span><\/p>\n<p class=\"p1\"><a href=\"http:\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/eVar4PFM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-171\" src=\"\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/eVar4PFM.png\" alt=\"eVar4PFM\" width=\"922\" height=\"182\" srcset=\"https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/eVar4PFM.png 922w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/eVar4PFM-300x59.png 300w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/eVar4PFM-768x152.png 768w\" sizes=\"(max-width: 922px) 100vw, 922px\" \/><\/a><\/p>\n<p class=\"p1\"><span class=\"s1\">This is preferable because it leaves little room for error and has the easiest configuration. Let&#8217;s say I&#8217;ve set eVar4 to be my &#8220;Add to Cart location&#8221; eVar. At the time my user adds any item to their cart, I would set eVar4 (often, you can just set it to the current page&#8217;s page type):<\/span><\/p>\n<pre class=\"p1\"><span class=\"s1\">s.products=\";sku1;;;;eVar4=PDP\"\r\n<\/span><span class=\"s1\">s.events=\"scAdd\"<\/span><\/pre>\n<p class=\"p1\"><span class=\"s1\">But for Product Finding Method, you often don&#8217;t know what product the value for our eVar will eventually bind to, so we need to set it to conversion syntax, and we need to carefully consider which events should bind the current PFM value to the current product. Generally, Product View (ideally a custom event, not prodView) and Cart Add suffice as binding events. <\/span><\/p>\n<p class=\"p1\"><a href=\"http:\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/eVar5pfm.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-172\" src=\"\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/eVar5pfm.png\" alt=\"eVar5pfm\" width=\"906\" height=\"234\" srcset=\"https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/eVar5pfm.png 906w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/eVar5pfm-300x77.png 300w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2016\/05\/eVar5pfm-768x198.png 768w\" sizes=\"(max-width: 906px) 100vw, 906px\" \/><\/a><\/p>\n<p class=\"p1\"><span class=\"s1\">DO NOT set to bind on ALL events, as many events happen on your site where your PFM eVar doesn&#8217;t have a desirable value.<\/span><\/p>\n<p class=\"p1\"><span class=\"s1\">Next, to implement, we need to figure out where to set each of our PFM values. If you&#8217;re using a tag management system like DTM, you can often just piggy back on existing rules for many of your finding methods, but others may need to live in global logic (like in your s_code). See below for a possible configuration.<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td>internal search<\/td>\n<td>Set on internal search results page<\/td>\n<\/tr>\n<tr>\n<td>external\u00a0site<\/td>\n<td>Set in global logic-\u00a0if no other PFM is present, and the user came from a domain other than your own<\/td>\n<\/tr>\n<tr>\n<td>external campaigns<\/td>\n<td>Set in global logic, if s.campaign is set<\/td>\n<\/tr>\n<tr>\n<td>internal promotion<\/td>\n<td>Set in global logic, if internal campaign eVar is set (or internal campaign query string parameter is present).<\/td>\n<\/tr>\n<tr>\n<td>browse<\/td>\n<td>Set on all Product List Pages and Category pages<\/td>\n<\/tr>\n<tr>\n<td>cross-sell<\/td>\n<td>Set when user clicks or clicks through on\u00a0a cross-sell module<\/td>\n<\/tr>\n<tr>\n<td>recommendations<\/td>\n<td>Set when user clicks or clicks through on a recommendation module<\/td>\n<\/tr>\n<tr>\n<td>wishlist<\/td>\n<td>Set on Wish List page<\/td>\n<\/tr>\n<tr>\n<td>order history<\/td>\n<td>Set on Order History page<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Some folks manage PFM entirely in their s_code or in their (global DTM tool settings) based on whether other variables have been set (&#8220;if internal search term eVar has a value, set eVar5 to &#8216;internal search&#8221;&#8216;).\u00a0For instance, one client has something similar to this, in addition to setting their PFM eVar directly on certain pages (like their List Pages and Category pages, or certain microsites):<\/p>\n<pre><em>\/\/easy way to get just the hostname of the referring site\r\n   <\/em>var a=document.createElement('a');\r\n   a.href=document.referrer;\r\n   s.refDomain=a.hostname;\r\n\r\nif(!s.eVar5){ <em>\/\/if PFM not currently set on the page<\/em>\r\n   if(s.campaign){s.eVar5=\"campaign\"} \r\n   else if(s.eVar10){s.eVar5=\"internal search\"}\r\n   else if(s.eVar23){s.eVar5=\"recommended product\"} \r\n   else if(s.pageName==\"My Account&gt;Wishlist\"){s.eVar5=\"my wishlist\"}\r\n   else if(document.referrer==\"\"){s.eVar5=\"direct or bookmarked\"}\r\n   else if(s.refDomain.indexOf(\"mydomain.com\")==-1){s.eVar5=\"external site\"} \r\n }\r\n   else if(s.eVar15){s.eVar26=\"internal campaign\"} \r\n}<\/pre>\n<h3>Conclusion<\/h3>\n<p>Hopefully, this gives some ideas and examples for how to get valuable reporting on how users are finding and purchasing products on your site. I&#8217;d love to hear about potential scenarios or solutions I&#8217;ve missed!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Product Finding Method (PFM) is a valuable custom report used by online retailers to tie Cart Adds and eventual Revenue to how users found the product. Unfortunately, these reports are often poorly configured or misunderstood. It is one of the best use cases for using the Merchandising setting on an eVar, but Merchandising, as a &#8230; <a title=\"How to approach Product Finding Methods\" class=\"read-more\" href=\"https:\/\/www.digitaldatatactics.com\/index.php\/2016\/05\/27\/how-to-approach-product-finding-methods\/\" aria-label=\"Read more about How to approach Product Finding Methods\">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":[4,22,23],"tags":[19,3,30,32,31,2],"_links":{"self":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/163"}],"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=163"}],"version-history":[{"count":7,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/163\/revisions"}],"predecessor-version":[{"id":513,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/163\/revisions\/513"}],"wp:attachment":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/media?parent=163"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/categories?post=163"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/tags?post=163"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}