<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Analytics &#8211; Kieran Christensen</title>
	<atom:link href="https://kieran.live/category/analytics/feed/" rel="self" type="application/rss+xml" />
	<link>https://kieran.live</link>
	<description>Product analytics champion 🦸 in the DTC world 🌎</description>
	<lastBuildDate>Wed, 17 Aug 2022 19:10:11 +0000</lastBuildDate>
	<language>en-CA</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.2</generator>

<image>
	<url>https://kieran.live/wp-content/uploads/2018/03/cropped-Asset-3-49x49.png</url>
	<title>Analytics &#8211; Kieran Christensen</title>
	<link>https://kieran.live</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Sales attribution: how to assign value to on site features</title>
		<link>https://kieran.live/sales-attribution-how-to-assign-value-to-on-site-features/</link>
					<comments>https://kieran.live/sales-attribution-how-to-assign-value-to-on-site-features/#respond</comments>
		
		<dc:creator><![CDATA[Kieran]]></dc:creator>
		<pubDate>Wed, 17 Aug 2022 18:59:59 +0000</pubDate>
				<category><![CDATA[Analytics]]></category>
		<category><![CDATA[adobe analytics]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[attribution]]></category>
		<category><![CDATA[google analytics]]></category>
		<guid isPermaLink="false">https://kieran.live/?p=122</guid>

					<description><![CDATA[It&#8217;s always exciting to make a sale &#8211; whether you&#8217;re a billion dollar retailer or it&#8217;s the official launch of the eCommerce site for your small business. There&#8217;s a lot that goes into every sale that we&#8217;ll never fully understand &#8211; and this blog post isn&#8217;t about those mysterious market forces. This post is about [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>It&#8217;s always exciting to make a sale &#8211; whether you&#8217;re a billion dollar retailer or it&#8217;s the official launch of the eCommerce site for your small business. There&#8217;s a lot that goes into every sale that we&#8217;ll never fully understand &#8211; and this blog post isn&#8217;t about those mysterious market forces. This post is about what you can track, what you can learn, and why you should care.</p>



<span id="more-122"></span>





<h2 class="wp-block-heading">What is sales attribution?</h2>



<p>In the digital analytics sphere, sales attribution usually refers to how you assign revenue to categories of attribution. Most often attribution refers to &#8220;off site&#8221; or marketing channel attribution &#8211; how the converting traffic arrived on your website or mobile application.</p>



<p>For the purpose of this article, we&#8217;ll be focused on two flavours of &#8220;attribution&#8221; &#8211; off site <em>and</em> on site. On site attribution can often be overlooked because we make the assumption that a website is a holistic experience, as opposed to many interlinking parts.</p>



<h4 class="wp-block-heading">What is off site attribution?</h4>



<p>Off site attribution for the purposes of this post refers to traffic driving activities and how you attribute conversions to them. A typical example of a marketing channel under this umbrella would be organic search. A visit is attributed to organic search when a user enters a query into a search engine like Google and ultimately arrives at your site from an organic placement (not through a paid advertisement, typically labeled as an &#8216;Ad&#8217;).</p>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="2220" height="1246" src="https://kieran.live/wp-content/uploads/2022/08/image.png" alt="This labeled screenshot features the Google search results (SERP) page for the term &quot;chess board&quot;. It features paid and organic results. Depending on how a user arrives at your site, their visit could be attributed to any of these categories." class="wp-image-126" srcset="https://kieran.live/wp-content/uploads/2022/08/image.png 2220w, https://kieran.live/wp-content/uploads/2022/08/image-300x168.png 300w, https://kieran.live/wp-content/uploads/2022/08/image-1024x575.png 1024w, https://kieran.live/wp-content/uploads/2022/08/image-768x431.png 768w, https://kieran.live/wp-content/uploads/2022/08/image-1536x862.png 1536w, https://kieran.live/wp-content/uploads/2022/08/image-2048x1149.png 2048w, https://kieran.live/wp-content/uploads/2022/08/image-1200x674.png 1200w, https://kieran.live/wp-content/uploads/2022/08/image-1980x1111.png 1980w" sizes="(max-width: 2220px) 100vw, 2220px" /><figcaption>This labeled screenshot features the Google search results (SERP) page for the term &#8220;chess board&#8221;. It features paid and organic results. Depending on how a user arrives at your site, their visit could be attributed to any of these categories.</figcaption></figure>



<h4 class="wp-block-heading">What is on site attribution?</h4>



<p>On site attribution for the purposes of this post refers to on site components that facilitate a user&#8217;s conversion journey and how you attribute conversions to them. The concept of on site attribution goes a bit beyond things like conversion funnel reports &#8211; it takes the pre-existing model of marketing attribution and assigns the same principles to web or mobile application features. </p>



<h4 class="wp-block-heading">Attribution models</h4>



<p>There are several &#8220;standard&#8221; Attribution Models. A lot of people have done excellent jobs of breaking down the nitty gritty details &#8211; I recommend <a href="https://zapier.com/blog/marketing-attribution/" target="_blank" rel="noopener">checking out Zapier&#8217;s post on attribution here</a>. But generally speaking, the most common are First Touch and Last Touch. This simply means you assign 100% of the value of a conversion to either the first engagement a user had with your site (i.e. they arrived from organic search and then visited again to convert two weeks later) or from the last engagement a user had with your site before converting (i.e. they visited several times from organic search and then clicked a paid advertisement before converting).</p>



<h2 class="wp-block-heading">A real world example</h2>



<p>Continuing my example from the section on off site attribution, I went through the entire shopping and purchase journey on Etsy starting with my keyword &#8220;chess board&#8221;.</p>



<p>After clicking on one of the Google Shopping results, I&#8217;m taken to a product detail page for a chess set. If I inspect the server calls to Etsy&#8217;s analytics provider I can see that details about my marketing channel attribution are recorded in the query parameter (AKA the stuff on the URL that comes after the &#8216;?&#8217;). These UTM values (originally<a href="https://en.wikipedia.org/wiki/UTM_parameters" target="_blank" rel="noopener"> Urchin Tracking Module</a>) tell me that my traffic source was Google, the medium was cost per click advertising (or CPC), and the campaign is called &#8220;Shopping Canadian English toys &amp; games&#8221;. There&#8217;s some additional information in there that isn&#8217;t &#8220;readable&#8221; to the outside eye, lots of strings that probably translate into things like creative used, ad position, bids, etc.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="375" src="https://kieran.live/wp-content/uploads/2022/08/image-1-1024x375.png" alt="" class="wp-image-127" srcset="https://kieran.live/wp-content/uploads/2022/08/image-1-1024x375.png 1024w, https://kieran.live/wp-content/uploads/2022/08/image-1-300x110.png 300w, https://kieran.live/wp-content/uploads/2022/08/image-1-768x281.png 768w, https://kieran.live/wp-content/uploads/2022/08/image-1-1200x439.png 1200w, https://kieran.live/wp-content/uploads/2022/08/image-1.png 1350w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>This screenshot shows a view of the Google Analytics server call on the Etsy website that records my UTM parameters.</figcaption></figure>



<p>Once I arrive on the Etsy website, off site attribution&#8217;s work is essentially completed. If I convert during this session, the revenue that is captured will be assigned to this CPC campaign. Although anyone who has ever worked in the web application or product space knows that this is the <em>very beginning</em> of the user&#8217;s journey.</p>



<figure class="wp-block-image size-large is-resized"><img decoding="async" src="https://kieran.live/wp-content/uploads/2022/08/image-2-1024x651.png" alt="" class="wp-image-128" width="610" height="387" srcset="https://kieran.live/wp-content/uploads/2022/08/image-2-1024x651.png 1024w, https://kieran.live/wp-content/uploads/2022/08/image-2-300x191.png 300w, https://kieran.live/wp-content/uploads/2022/08/image-2-768x489.png 768w, https://kieran.live/wp-content/uploads/2022/08/image-2-1536x977.png 1536w, https://kieran.live/wp-content/uploads/2022/08/image-2-1200x763.png 1200w, https://kieran.live/wp-content/uploads/2022/08/image-2-1980x1259.png 1980w, https://kieran.live/wp-content/uploads/2022/08/image-2.png 1984w" sizes="(max-width: 610px) 100vw, 610px" /><figcaption>This screenshot shows a labeled view of Etsy&#8217;s paid search product detail landing page, drawing a contrast between elements that support a shopping journey vs a purchase journey.</figcaption></figure>



<p>Now that I&#8217;m on the Etsy platform, I have lots of opportunities to explore similar products or continue with the purchase journey for the original item I viewed. The above screenshot divides these options visually into a &#8220;shopping&#8221; and &#8220;purchase&#8221; journey. </p>



<p>I see a variety of suggested similar items in the algorithmic recommender portion of the product detail page. I spot a 4 in 1 game set with a hinged lid and click it. </p>



<p>Google Analytics now records my interaction with this recommendations component with a few details, including the location of the component and the general recommendation type (&#8220;similar_listing&#8221;). Once again there are a variety of variables in the query parameter that would tell an internal Etsy employee more about the significance of this click, including any influence on real time, user-item recommendation algorithm(s). </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="520" src="https://kieran.live/wp-content/uploads/2022/08/image-5-1024x520.png" alt="" class="wp-image-131" srcset="https://kieran.live/wp-content/uploads/2022/08/image-5-1024x520.png 1024w, https://kieran.live/wp-content/uploads/2022/08/image-5-300x152.png 300w, https://kieran.live/wp-content/uploads/2022/08/image-5-768x390.png 768w, https://kieran.live/wp-content/uploads/2022/08/image-5-1536x780.png 1536w, https://kieran.live/wp-content/uploads/2022/08/image-5-2048x1040.png 2048w, https://kieran.live/wp-content/uploads/2022/08/image-5-1200x610.png 1200w, https://kieran.live/wp-content/uploads/2022/08/image-5-1980x1006.png 1980w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption>This screenshot shows the product detail page for the item I clicked from the recommendations component along with the information recorded in Google Analytics about what I clicked and where it was located.</figcaption></figure>



<p>Seeing this neat chess board with a folding top makes me realize what I&#8217;m actually looking for &#8211; portability. So I use the search bar to look for a &#8220;travel chess set&#8221;.</p>



<p>After conducting my search, I&#8217;m brought to the search results page (or SERP).</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="431" src="https://kieran.live/wp-content/uploads/2022/08/image-7-1024x431.png" alt="" class="wp-image-133" srcset="https://kieran.live/wp-content/uploads/2022/08/image-7-1024x431.png 1024w, https://kieran.live/wp-content/uploads/2022/08/image-7-300x126.png 300w, https://kieran.live/wp-content/uploads/2022/08/image-7-768x323.png 768w, https://kieran.live/wp-content/uploads/2022/08/image-7-1536x647.png 1536w, https://kieran.live/wp-content/uploads/2022/08/image-7-2048x863.png 2048w, https://kieran.live/wp-content/uploads/2022/08/image-7-1200x505.png 1200w, https://kieran.live/wp-content/uploads/2022/08/image-7-1980x834.png 1980w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption>This screenshot shows the search results page for the query &#8220;travel chess set&#8221; along with the events sent to Google Analytics for &#8220;view_search_results&#8221;.</figcaption></figure>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="523" src="https://kieran.live/wp-content/uploads/2022/08/image-8-1024x523.png" alt="" class="wp-image-134" srcset="https://kieran.live/wp-content/uploads/2022/08/image-8-1024x523.png 1024w, https://kieran.live/wp-content/uploads/2022/08/image-8-300x153.png 300w, https://kieran.live/wp-content/uploads/2022/08/image-8-768x392.png 768w, https://kieran.live/wp-content/uploads/2022/08/image-8-1536x785.png 1536w, https://kieran.live/wp-content/uploads/2022/08/image-8-2048x1046.png 2048w, https://kieran.live/wp-content/uploads/2022/08/image-8-1200x613.png 1200w, https://kieran.live/wp-content/uploads/2022/08/image-8-1980x1012.png 1980w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption>This screenshot shows the product detail page of the travel chess set clicked on in the previous step, along with info about how this engagement is tracked by Google Analytics.</figcaption></figure>



<p>I feel satisfied I&#8217;ve found the best option for my purchase, so I click &#8220;Add to Basket&#8221;. This fires the AddtoCart event and sets some amount of info associated with my shopping behaviour so far with this individual item or &#8220;product_id&#8221;.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="398" src="https://kieran.live/wp-content/uploads/2022/08/image-9-1024x398.png" alt="" class="wp-image-136" srcset="https://kieran.live/wp-content/uploads/2022/08/image-9-1024x398.png 1024w, https://kieran.live/wp-content/uploads/2022/08/image-9-300x117.png 300w, https://kieran.live/wp-content/uploads/2022/08/image-9-768x299.png 768w, https://kieran.live/wp-content/uploads/2022/08/image-9-1200x467.png 1200w, https://kieran.live/wp-content/uploads/2022/08/image-9.png 1316w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption>This screenshot comes from the dataLayer, available in the Console tab, and displays additional information about various events.</figcaption></figure>



<p> This is important &#8211; because not only can this item remain in my cart and I could return to purchase it later, but I could also add additional items that would have inherently different on site paths for conversion. (But we&#8217;ll keep things simple for now.)</p>



<p>Once I reach the final stages of the purchase decision and begin the checkout process, I get one more interaction with a conversion driving component: some urgency messaging prompting me to complete my order before the promotion ends.</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://kieran.live/wp-content/uploads/2022/08/image-3-1024x964.png" alt="" class="wp-image-129" width="610" height="574" srcset="https://kieran.live/wp-content/uploads/2022/08/image-3-1024x964.png 1024w, https://kieran.live/wp-content/uploads/2022/08/image-3-300x282.png 300w, https://kieran.live/wp-content/uploads/2022/08/image-3-768x723.png 768w, https://kieran.live/wp-content/uploads/2022/08/image-3.png 1158w" sizes="auto, (max-width: 610px) 100vw, 610px" /><figcaption>This screenshot features urgency messaging for the item in my shopping cart.</figcaption></figure>



<h2 class="wp-block-heading">Putting it all together</h2>



<p>The diagram below sums up the real world example detailed above. I had 4 interactions along the course of my shopping &amp; purchase journey with Etsy: one off site, three on site. I viewed three products, each discovered via different means (Paid Search, Product Recommendations, and Internal Search) and I purchased one product. I engaged with one urgency messaging component while in the checkout process. Etsy made a sale worth $65. <strong>But how and where do we attribute that revenue? </strong></p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="342" src="https://kieran.live/wp-content/uploads/2022/08/image-10-1024x342.png" alt="" class="wp-image-138" srcset="https://kieran.live/wp-content/uploads/2022/08/image-10-1024x342.png 1024w, https://kieran.live/wp-content/uploads/2022/08/image-10-300x100.png 300w, https://kieran.live/wp-content/uploads/2022/08/image-10-768x256.png 768w, https://kieran.live/wp-content/uploads/2022/08/image-10-1200x401.png 1200w, https://kieran.live/wp-content/uploads/2022/08/image-10.png 1408w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption>This diagram shows a breakdown of all my interactions over the course of my shopping &amp; purchase journey with Etsy.</figcaption></figure>



<p>As noted in the section on Attribution Models, there are multiple established ways of viewing attribution. In a classic marketing channel attribution approach (only concerned with off site attribution), Paid Search would get 100% of the $65 conversion attribution. Regardless of whether you used First Touch, Last Touch, or any other attribution approach, because my journey only involved one visit to Etsy&#8217;s site, Paid Search is our only path.</p>



<p>On site attribution can be viewed in a similar way. If we&#8217;re concerned with only the Last Interaction prior to my Cart Add action and initiating my purchase journey, then 100% of the $65 conversion attribution would be assigned to Internal Search (this model would be most similar to &#8220;<a href="https://support.google.com/analytics/answer/1665189?hl=en" target="_blank" rel="noreferrer noopener">Last Indirect Click</a>&#8220;). Alternatively, we could use a Linear model and split the value equally between the four interactions &#8211; $16.25 is attributed to each. </p>



<p>Regardless of the approach taken or the model leveraged, you likely already have all the data that you need to begin attributing revenue to on site features. This work might need to be done manually initially through data exports, linking sessions with orders and their respective interactions. In Adobe Analytics, <a href="https://experienceleague.adobe.com/docs/analytics/components/dimensions/evar-merchandising.html?lang=en" target="_blank" rel="noopener">merchandised variables</a> can simplify and automate this type of reporting.  </p>



<h2 class="wp-block-heading">Takeaways and next steps</h2>



<p>So you&#8217;ve read some or all of this very long post about on site sales attribution &#8211; now what? I&#8217;d recommend taking three things away to enhance your personal understanding of analytics or your company&#8217;s analytics practice. </p>



<h4 class="wp-block-heading">Marketing channel/off site attribution is one part of a larger story</h4>



<p>Your user&#8217;s journey doesn&#8217;t end when they arrive on your website, so why should your reporting? Don&#8217;t allow organizational &#8220;walls&#8221; that may exist between marketing departments that analyze and allocate spending on traffic acquisition and digital analytics departments that analyze site conversion and performance stop critical conversations from taking place. Experiment with custom models, examine the relationship between channels and on site component engagement, and start forming holistic hypotheses.</p>



<h4 class="wp-block-heading">Don&#8217;t put your head in the sand regarding technical and privacy legislation impacts to off site attribution reporting</h4>



<p>&#8220;Change is the only constant&#8221; may be a cliche, but it&#8217;s not untrue. Privacy legislation will continue to proliferate. Web browsers will continue to increasingly offer built-in, always on, enabled by default privacy as a feature. These changes are <em>already</em> impacting the viability of your multi-channel attribution reporting. You can play a cat and mouse game of attempting to circumvent these technical limitations, but this won&#8217;t be a sustainable approach in the long run.</p>



<p>If you&#8217;re looking for opportunities to optimize, your users are already giving you a lot of in-session signals. Ongoing analysis of the relationship between traffic source and on site behaviour can yield a wide variety of potential hypotheses. If you aren&#8217;t already delivering personalized experiences to users based on their on site behaviour, now is an excellent time to start experimenting. Functional, first party tracking isn&#8217;t going anywhere any time soon &#8211; invest time and resources into making the most of it.</p>



<h4 class="wp-block-heading">If you aren&#8217;t analyzing on site sales attribution you are not maximizing your investment in your web, digital, or product analytics tools</h4>



<p>Does the entirety of your reporting from your digital analytics data look like this?</p>



<figure class="wp-block-table"><table><tbody><tr><td><strong>Marketing channel</strong></td><td><strong>Bounce rate</strong></td><td><strong>Conversion rate</strong></td><td><strong>Revenue</strong></td></tr><tr><td>Paid search</td><td>60%</td><td>2.3%</td><td>$1.5m</td></tr><tr><td>Organic search</td><td>75%</td><td>4.2%</td><td>$2m</td></tr><tr><td>Email</td><td>40%</td><td>6.1%</td><td>$500K</td></tr></tbody></table></figure>



<p>If so, you&#8217;re missing out on <em>a lot</em> of valuable insights you could likely be deriving without any updates to your analytics implementation. Consider the below table compared to the above &#8211; what additional insights might you be able to intuit from this data?</p>



<figure class="wp-block-table"><table><tbody><tr><td><strong>Marketing channel &#8211; On site component</strong></td><td><strong>Engagement rate</strong></td><td><strong>Conversion rate</strong></td><td><strong>Revenue (% of total)</strong></td></tr><tr><td>Paid search</td><td>&#8211;</td><td>2.3%</td><td>$1.5m</td></tr><tr><td>   &#8211; <em>Recommendations</em></td><td>30%</td><td>1%</td><td>$200K (13%)</td></tr><tr><td>   &#8211; <em>On site search</em></td><td>50%</td><td>4%</td><td>$1m (66%)</td></tr><tr><td>   &#8211; <em>Category detail page</em> (CDP)</td><td>20%</td><td>2%</td><td>$300K (20%)</td></tr></tbody></table></figure>



<p>From the first table, we know that paid search generated $1.5m in revenue for the period with a 2.3% average conversion rate. Not much actionable information there without some trended data or information on return on paid media investments. Beyond that, as someone working on the web application or on a product team, I don&#8217;t have much to go on.</p>



<p>In the second table, we have a lot of additional insight about paid search performance. We know the breakdown of total engagements with on site components and their respective conversion rates and revenue. Immediately we can see that recommendations are driving a disproportionately lower amount of total revenue and a lower conversion rate. </p>



<p>Consider the Etsy example again &#8211; recommended products were very prominent on the landing page. If this was a report on Etsy&#8217;s performance, we might hypothesize that there&#8217;s an issue with these recommendations. Why are users converting so comparatively poorly despite a 30% engagement rate? If we know that on site search performs so well for traffic from paid search, should we adjust the prominence of that component compared to recommendations? Or is this behaviour simply more common for a user who is browsing and less likely to convert? <strong>All of these are interesting, provocative questions generated by a single table of data that combines off site and on site sales attribution.</strong> </p>



<p>Thanks for reading and I hope you found this helpful. If you have a question, let me know in the comments.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kieran.live/sales-attribution-how-to-assign-value-to-on-site-features/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Google Analytics bot filtering and data cleanup made easy</title>
		<link>https://kieran.live/google-analytics-bot-filtering/</link>
					<comments>https://kieran.live/google-analytics-bot-filtering/#comments</comments>
		
		<dc:creator><![CDATA[Kieran]]></dc:creator>
		<pubDate>Sat, 26 Dec 2020 20:11:02 +0000</pubDate>
				<category><![CDATA[Analytics]]></category>
		<category><![CDATA[bot filtering]]></category>
		<category><![CDATA[data cleaning]]></category>
		<category><![CDATA[google analytics]]></category>
		<guid isPermaLink="false">https://kieran.live/?p=68</guid>

					<description><![CDATA[How accurate do you feel your Google Analytics data is? Setting up Google Analytics bot filtering is often the first step towards critical data cleanup. You&#8217;ll be amazed at how much traffic will disappear when you apply this filter, but remember quality is so much more important than quantity. You don&#8217;t want to waste your [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>How accurate do you feel your Google Analytics data is? Setting up Google Analytics bot filtering is often the first step towards critical data cleanup. You&#8217;ll be amazed at how much traffic will disappear when you apply this filter, but remember quality is so much more important than quantity. You don&#8217;t want to waste your time analyzing bad data!</p>



<span id="more-68"></span>



<p>PS: If you&#8217;re just looking for the basic filter configuration, <a href="#How_to_configure_the_basic_filter" class="rank-math-link">click here to jump to it</a>.</p>





<h2 class="wp-block-heading">Why is clean data important to begin with?</h2>



<p>Assuming that you&#8217;re making decisions based on your Google Analytics data, you want it to be as accurate and as relevant as possible. If you&#8217;re going to add $500 more budget per month to your paid ad campaigns, you want to know for certain that you&#8217;re getting the return on investment that you expect. Unfortunately a lot of the information in your Google Analytics account is likely unreliable. There&#8217;s just a lot of noise when it comes to traffic numbers!</p>



<h3 class="wp-block-heading">How do you find bad data?</h3>



<p>Discovering the characteristics of bad or simply irrelevant data is the critical piece of cleaning up your numbers. It&#8217;s important to establish a few things out of the gate:</p>



<ul class="wp-block-list"><li><strong>What is the target audience for your site?</strong><ul><li><em>Ex: If I own a bicycle shop in Seattle, WA, I&#8217;m most interested in traffic based in the Pacific Northwest region.</em></li></ul></li><li><strong>What are your most common methods for traffic acquisition?</strong><ul><li><em>Ex: If I regularly post in a question and answer forum about marketing, I may anticipate some referral traffic from those sites.</em></li></ul></li><li><strong>What do you know about your user&#8217;s preferences?</strong><ul><li><em>Ex: If most of the traffic driven to and from my website is via my mobile application, I can expect to see a large proportion of traffic on mobile devices.</em></li></ul></li></ul>



<p>Establishing these items up front can help you create a customized high quality traffic filter for your website.</p>



<h2 class="wp-block-heading">Basic characteristics for common Google Analytics bot filtering</h2>



<p>Getting into the nitty gritty of what makes up a bad data profile in Google Analytics, these are a few key flags that should make up any clean up filter:</p>



<ul class="wp-block-list"><li>Language =/= (not set)</li><li>Screen Resolution =/= (not set)</li><li>City =/= (not set)</li><li>Browser size =/= (not set)</li></ul>



<p>All four of these values being (not set) in GA essentially indicates that this likely isn&#8217;t a real user device &#8211; AKA a bot or other form of automated traffic. </p>



<p>If you&#8217;re curious about the technical aspects of how these values are set, Language is set using <a href="https://www.iso.org/iso-639-language-codes.html?hl=en_US" class="rank-math-link" target="_blank" rel="noopener">ISO 639 codes</a>, Screen Resolution reports the width by height of your system&#8217;s screen (not to be confused with <a href="https://www.cardinalpath.com/blog/new-google-analytics-feature-browser-size" class="rank-math-link" target="_blank" rel="noopener">Browser Size which is the size of your viewport window</a>), and City is based on IP addresses and <a href="https://www.bounteous.com/insights/2013/03/19/locations-report-google-analytics/" class="rank-math-link" target="_blank" rel="noopener">the associated area per the Internet Service Provider (ISP)</a>.<br><br>There are a few more flags that you can add in:</p>



<ul class="wp-block-list"><li>Operating System =/= Linux&nbsp;<em>(sorry, Linux!)</em></li><li>Screen Resolution =/= 800&#215;600</li><li>Browser size =/= 800&#215;600</li><li>Browser is one of Firefox, Chrome AND Browser Version does not match regex ^[0-5]</li></ul>



<p>These additional flags exclude Linux users (apologies Linux, but a very high rate of fraudulent traffic reports as Linux), users with a suspiciously old school resolution for screen or browser size (800X600), and users of very old Firefox and Chrome browser versions. These unusual patterns are all common fraudulent traffic flags.</p>



<p>As with any high level approach, this method isn&#8217;t foolproof and you may end up scraping out some small percentage of valid data. (For example, if you write a blog about Linux, you probably don&#8217;t want to exclude Linux OS users from your reporting!) That&#8217;s why it&#8217;s important to do a validity check as noted in the section below.</p>



<h3 class="wp-block-heading">Refining your filter</h3>



<p>Now that we&#8217;ve established a baseline filter definition, it&#8217;s important to leverage a few other pieces to ensure your data filter works best for your individual site. What you determined in the &#8220;<a href="#How_do_you_find_bad_data" class="rank-math-link">How do you find bad data</a>&#8221; section will help you here.</p>



<p><strong>For example</strong>: for this site, the owner is focused on North American, European, and Australian users. So they create a filter that is Location &gt; Sub Continent is one of &#8220;Northern America, Northern Europe, Western Europe, Australasia&#8221;.</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="915" height="476" src="https://kieran.live/wp-content/uploads/2020/12/image.png" alt="" class="wp-image-72" srcset="https://kieran.live/wp-content/uploads/2020/12/image.png 915w, https://kieran.live/wp-content/uploads/2020/12/image-300x156.png 300w, https://kieran.live/wp-content/uploads/2020/12/image-768x400.png 768w" sizes="auto, (max-width: 915px) 100vw, 915px" /><figcaption>A screenshot of the Google Analytics filter creation modal. The Location value is set to Sub Continent is one of Northern America, Northern Europe, Western Europe, and Australasia.</figcaption></figure></div>



<p>Going back to our bike shop example, you could create an even more specific location filter, such as Location &gt; Region is one of &#8220;Washington, Oregon, British Columbia&#8221;. </p>



<p>This may not seem like a significant addition, but it can help remove the final dregs of less relevant or even fraudulent data in your Google Analytics reporting.</p>



<h2 class="wp-block-heading">Creating your filter in Google Analytics</h2>



<p>Now that we have our full spate of definitions, we can create our Google Analytics bot filtering configuration in the tool itself. This is where the rubber meets the road so to speak &#8211; if you skipped ahead to this section, read on for the exact steps you need to apply the standard filter, followed by the custom elements.</p>



<h3 class="wp-block-heading">How to configure the basic filter</h3>



<p>In Google Analytics, navigate to Audience Overview and click the &#8220;Add Segment&#8221; and then click &#8220;+ New Segment&#8221;</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="758" height="326" src="https://kieran.live/wp-content/uploads/2020/12/image-1.png" alt="" class="wp-image-78" srcset="https://kieran.live/wp-content/uploads/2020/12/image-1.png 758w, https://kieran.live/wp-content/uploads/2020/12/image-1-300x129.png 300w" sizes="auto, (max-width: 758px) 100vw, 758px" /><figcaption>A screenshot shows the &#8220;Audience Overview&#8221; section of Google Analytics after &#8220;Add Segment&#8221; is clicked.</figcaption></figure></div>



<p>Under the Demographics tab, for Language select &#8220;does not exactly match&#8221; and enter the value (not set).</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="577" src="https://kieran.live/wp-content/uploads/2020/12/image-7-1024x577.png" alt="" class="wp-image-93" srcset="https://kieran.live/wp-content/uploads/2020/12/image-7-1024x577.png 1024w, https://kieran.live/wp-content/uploads/2020/12/image-7-300x169.png 300w, https://kieran.live/wp-content/uploads/2020/12/image-7-768x433.png 768w, https://kieran.live/wp-content/uploads/2020/12/image-7-1536x865.png 1536w, https://kieran.live/wp-content/uploads/2020/12/image-7-1200x676.png 1200w, https://kieran.live/wp-content/uploads/2020/12/image-7.png 1658w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption>A screenshot of the &#8220;Add Segment&#8221; modal, with the Demographics tab selected.</figcaption></figure></div>



<p>Next, select the Technology tab. Under Operating System, select &#8220;does not exactly match&#8221; and enter the value Linux.</p>



<p>Under Screen Resolution, select &#8220;does not exactly match&#8221; and enter &#8220;(not set)&#8221;.</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://kieran.live/wp-content/uploads/2020/12/image-6-1024x576.png" alt="" class="wp-image-92" srcset="https://kieran.live/wp-content/uploads/2020/12/image-6-1024x576.png 1024w, https://kieran.live/wp-content/uploads/2020/12/image-6-300x169.png 300w, https://kieran.live/wp-content/uploads/2020/12/image-6-768x432.png 768w, https://kieran.live/wp-content/uploads/2020/12/image-6-1536x864.png 1536w, https://kieran.live/wp-content/uploads/2020/12/image-6-1200x675.png 1200w, https://kieran.live/wp-content/uploads/2020/12/image-6.png 1624w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption>A screenshot shows the &#8220;Add Segment&#8221; modal, with the Technology tab selected.</figcaption></figure></div>



<p>Finally, we&#8217;ll add the majority of the filters under the Conditions tab. </p>



<p>Select Sessions and Exclude, then City &#8220;exactly matches&#8221; and enter the value (not set).</p>



<p>Next, Select Sessions and Exclude again, then Browser &#8220;is one of&#8221; and enter Chrome, then a line break, then Firefox. When you start typing these they should pop up with the option to auto complete. Now, add an &#8220;AND&#8221; operator. Select Browser Version &#8220;does not match regex&#8221; and enter the value ^[0-5]. This will exclude all Chrome and Firefox versions beginning with 0 through 5.</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="516" src="https://kieran.live/wp-content/uploads/2020/12/image-8-1024x516.png" alt="" class="wp-image-94" srcset="https://kieran.live/wp-content/uploads/2020/12/image-8-1024x516.png 1024w, https://kieran.live/wp-content/uploads/2020/12/image-8-300x151.png 300w, https://kieran.live/wp-content/uploads/2020/12/image-8-768x387.png 768w, https://kieran.live/wp-content/uploads/2020/12/image-8-1536x775.png 1536w, https://kieran.live/wp-content/uploads/2020/12/image-8-1200x605.png 1200w, https://kieran.live/wp-content/uploads/2020/12/image-8.png 1626w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption>A screenshot shows the &#8220;Add Segment&#8221; modal, with the Conditions tab selected.</figcaption></figure></div>



<p>We&#8217;ll add three more filters here:</p>



<p>Sessions Exclude Screen Resolution &#8220;exactly matches&#8221; 800&#215;600.</p>



<p>Sessions Exclude Browser Size &#8220;exactly matches&#8221; (not set).</p>



<p>Sessions Exclude Browser Size &#8220;exactly matches&#8221; 800X600.</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="598" src="https://kieran.live/wp-content/uploads/2020/12/image-9-1024x598.png" alt="" class="wp-image-95" srcset="https://kieran.live/wp-content/uploads/2020/12/image-9-1024x598.png 1024w, https://kieran.live/wp-content/uploads/2020/12/image-9-300x175.png 300w, https://kieran.live/wp-content/uploads/2020/12/image-9-768x449.png 768w, https://kieran.live/wp-content/uploads/2020/12/image-9-1536x897.png 1536w, https://kieran.live/wp-content/uploads/2020/12/image-9-1200x701.png 1200w, https://kieran.live/wp-content/uploads/2020/12/image-9.png 1650w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption>A screenshot shows the &#8220;Add Segment&#8221; modal, with the Conditions tab selected.</figcaption></figure></div>



<p><strong>Click Save when you&#8217;ve entered everything.</strong></p>



<p>If you only came here for basic the filter, that&#8217;s it &#8211; you&#8217;re done. ? It&#8217;s that easy.</p>



<h3 class="wp-block-heading">How to configure the relevancy filter</h3>



<p>If you want to add some location based relevancy filtering to your Google Analytics bot filtering segment, return to the Demographics tab. Using &#8220;Location&#8221; you can build a variety of regional filters. <a href="#Refining_your_filter" class="rank-math-link">Jump back to this section</a> for some suggestions and more details.</p>



<h2 class="wp-block-heading">Validating and troubleshooting your filter</h2>



<p class="has-text-align-left">If you&#8217;ve created the filter in Google Analytics, you&#8217;ve probably noticed the shift in your numbers when it&#8217;s applied. It may be pretty significant. In the case of our example site, <strong>only 46.87% of users met the criteria</strong>. ? That&#8217;s a huge decrease in numbers, but it also points to how insidious fake traffic is and how important Google Analytics bot filtering is for your data integrity.</p>



<h3 class="wp-block-heading">Shifts to expect in your data</h3>



<p>With this filter applied alongside All Users, you can get a quick look at the type of traffic that disappears and how other trends shift. You&#8217;ll likely see a significant shift in your Acquisition &#8211; Overview breakdown.</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="758" height="1012" src="https://kieran.live/wp-content/uploads/2020/12/image-10.png" alt="" class="wp-image-96" srcset="https://kieran.live/wp-content/uploads/2020/12/image-10.png 758w, https://kieran.live/wp-content/uploads/2020/12/image-10-225x300.png 225w" sizes="auto, (max-width: 758px) 100vw, 758px" /><figcaption>A screenshot shows Google Analytics Acquisition Overview pie charts for traffic acquisition channels, before and after applying the Google Analytics bot filtering.</figcaption></figure></div>



<p>This site is an extreme example as noted before (with more than 50% of traffic stripped away), but you can observe similar patterns in other sites. You&#8217;ll likely see a shift towards organic traffic and away from direct traffic, referral traffic, and social traffic. Referral traffic is an especially common source of bots due to what&#8217;s commonly called &#8220;<a href="https://en.wikipedia.org/wiki/Referrer_spam" class="rank-math-link" target="_blank" rel="noopener">referral spam</a>&#8221; or &#8220;referrer spam&#8221;.  </p>



<h3 class="wp-block-heading">Common filtering problems</h3>



<h4 class="wp-block-heading">I&#8217;ve got zero users left!</h4>



<p>Don&#8217;t worry! Your traffic likely isn&#8217;t 100% bots. Double and triple check the <a href="#How_to_configure_the_basic_filter" class="rank-math-link">configuration of your filter</a>. Even a single typo can make a huge difference.</p>



<h4 class="wp-block-heading">I&#8217;m still seeing referral spam</h4>



<p>Ah, referral spam. Referral spam is a super common issue for data integrity in Google Analytics.</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="639" height="1024" src="https://kieran.live/wp-content/uploads/2020/12/image-11-639x1024.png" alt="" class="wp-image-97" srcset="https://kieran.live/wp-content/uploads/2020/12/image-11-639x1024.png 639w, https://kieran.live/wp-content/uploads/2020/12/image-11-187x300.png 187w, https://kieran.live/wp-content/uploads/2020/12/image-11.png 644w" sizes="auto, (max-width: 639px) 100vw, 639px" /><figcaption>A screenshot shows a few referral spam URLs that have been stripped out by the Google Analytics bot filtering application.</figcaption></figure></div>



<p>It can be almost impossible to splice out every single bit of referral spam. However, referral spam traffic can actually be uniquely valuable in that it shows you what the unique profile of this traffic is. <strong>If you&#8217;re still seeing referral spam, use it as a base to improve the filter for your specific site&#8217;s unique traffic concerns.</strong> Use the &#8220;Secondary dimension&#8221; drop down to investigate things like device types, operating system versions, and other things that may indicate a pattern of bad traffic.</p>



<h4 class="wp-block-heading">I&#8217;m seeing legitimate conversions filtered out</h4>



<p>No filter is 100% one size fits all, so it&#8217;s no surprise that you might see some conversions getting caught by this one. Similar to the referral spam issue, this is an opportunity to enhance the filter based on your own data. Look and see what criteria in the filter is causing the converting traffic to be flagged and consider if it would be worthwhile to remove it. You may also want to double-check the configuration of your conversion goals &#8211; some, such as pageview based goals, are easier for bot traffic to emulate than others.</p>



<h2 class="wp-block-heading">Wrapping up </h2>



<p>When it comes to Google Analytics bot filtering, there&#8217;s no 100% effective, one size fits all solution. Realistically, if your site has a lot of issues with fraudulent traffic, you should work towards filtering that out at a higher level &#8211; that data should never be reaching your Google Analytics account. Caching and CDN services such as <a href="https://www.cloudflare.com/en-ca/products/bot-management/" class="rank-math-link" target="_blank" rel="noopener">Cloudflare offer suites of solutions for managing bots</a>. </p>



<p>If you&#8217;re curious to learn more about bots and automated traffic and how not all bots are bad, <a href="https://www.cloudflare.com/en-ca/learning/bots/what-is-bot-management/" class="rank-math-link" target="_blank" rel="noopener">I recommend this article from Cloudflare</a> on &#8220;bot management&#8221;. There&#8217;s a difference between managing bots themselves and how they crawl your site and the methods used here to clean your Google Analytics data. </p>



<p>Thanks for reading, and I hope you found this helpful. Let me know if you have any questions in the comments.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kieran.live/google-analytics-bot-filtering/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>What is lifetime value (LTV) and how do you calculate it?</title>
		<link>https://kieran.live/what-is-lifetime-value-ltv/</link>
					<comments>https://kieran.live/what-is-lifetime-value-ltv/#respond</comments>
		
		<dc:creator><![CDATA[Kieran]]></dc:creator>
		<pubDate>Thu, 01 Mar 2018 18:55:32 +0000</pubDate>
				<category><![CDATA[Analytics]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[lifetime value]]></category>
		<category><![CDATA[metrics]]></category>
		<guid isPermaLink="false">http://kieran.live/?p=1</guid>

					<description><![CDATA[What is lifetime value or LTV? (And why bother to calculate it?) The most basic reason is knowing the value of a customer.&#160;Lifetime value simply adds together the value of all the purchases a user has made in their &#8220;lifetime&#8221; with you. Once you have that information in hand, you can do things like improve [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>What is lifetime value or LTV? (And why bother to calculate it?) <strong>The most basic reason is knowing the value of a customer.</strong>&nbsp;Lifetime value simply adds together the value of all the purchases a user has made in their &#8220;lifetime&#8221; with you.</p>



<p>Once you have that information in hand, you can do things like improve your Return on Ad Spend (ROAS) or do more precise budgeting around Cost Per Acquisition (CPA) for new leads.</p>



<p>You don&#8217;t need to be a mega-corporation to gain valuable insights from your customer data. Even a list of a few thousand subscribers becomes more valuable when you can assign a dollar value to each one.</p>



<span id="more-1"></span>





<h2 class="wp-block-heading"><span style="color: #52afac;">How do you calculate lifetime value?</span></h2>



<p>Yep, it&#8217;s as simple as you think:</p>



<p><em>SUM(Purchase1, Purchase2, Purchase3) = LTV</em></p>



<p>The difficult part is defining your parameters and making sure your tracking is set up correctly. The first step is to determine when exactly your customer&#8217;s lifetime begins.</p>



<h2 class="wp-block-heading"><span style="color: #52afac;">When does a lifetime begin?</span></h2>



<p>A tough question for most lifeforms, but for us it&#8217;s a little easier. A lifetime for a user begins when we start tracking them with a unique identifier. This might be a cookie or a UserID that&#8217;s been assigned on your site or app, or it might be when they become a new subscriber on your e-mail marketing tool or get added to your CRM.</p>



<h3 class="wp-block-heading"><span style="color: #52afac;">Here&#8217;s a couple of examples of customer lifetimes:</span></h3>



<p>#1 &#8211; Joe browses Skate Shop&#8217;s website a couple of times before he starts the purchase process for a new skateboard. When he enters his e-mail address, he&#8217;s assigned a unique UserID by the system. He gets distracted picking out trucks and wheels for his new board and his session expires. The next day he gets a cart abandonment e-mail reminder and returns to Skate Shop to complete his transaction. </p>



<p>Joe purchases his new board, along with some vinyl stickers, for a total value of $125. 6 weeks later, he returns to the site when he gets an e-mail about a sale on Supreme hoodies and t-shirts and decides to buy a couple. His total comes to $60. <strong>Joe&#8217;s lifetime value is now $185.</strong></p>



<p>#2 &#8211; Kate is researching food subscription boxes. She comes across Organic Meat Box when reading a comparative review round up on a third party site. While browsing Organic Meat Box&#8217;s offerings, she gets a prompt to sign up for a free 7 day meal plan. Kate opts-in and is added to Organic Meat Box&#8217;s CRM. She receives the 7 day meal plan, along with a series of follow up e-mails encouraging her to try an Organic Meat Box subscription with an offer of 50% off her first month. </p>



<p>Kate accepts, signing up for $25 for the first month. A custom field that tracks her lifetime value in the CRM is updated via API. She continues to receive Organic Meat Box for another 6 months at the standard price of $50 a month. In the 8th month of her Organic Meat Box membership, Kate pauses her subscription while she&#8217;s on vacation and doesn&#8217;t reactivate it. <strong>Kate&#8217;s lifetime value is now $325.</strong></p>



<h2 class="wp-block-heading"><span style="color: #52afac;">How do you track lifetime value?</span></h2>



<p>As noted in the example above, there are a couple of ways to track lifetime value once your customer&#8217;s &#8220;lifetime&#8221; begins.</p>



<h3 class="wp-block-heading"><span style="color: #52afac;">Tracking lifetime value via UserID</span></h3>



<p>For UserID tracking, I recommend using Google Tag Manager and Google Analytics. If you allow users to create accounts, your backend likely already has a unique identifier for each user. All you need to do is &#8220;push&#8221; that information into Google Tag Manager&#8217;s data layer.</p>



<p>Begin in Google Analytics by enabling UserID tracking at the Property level and created a UserID view. <strong>Important:</strong> remember that you cannot pass Personal Identity Information (PII) to Google Analytics via UserID&#8211;this should be a random series of numbers and letters, not an e-mail address.</p>



<p>Next, you&#8217;ll be creating a &#8220;variable&#8221; in Tag Manager called UserId. This is a &#8220;data layer variable&#8221;, and in the Data Layer Variable Name you&#8217;ll want to enter the ID you gave this variable when you pushed it to the data layer.</p>



<p><em>dataLayer.push({&#8216;YourVariableName&#8217;: &#8216;&lt;dynamic user id here&gt;&#8217;});&nbsp;</em></p>



<p><strong>Note: If you are using a single page application</strong> (AKA the URL doesn&#8217;t change regardless of what action the user takes), you&#8217;ll want to set UserID via a Javascript event AND you&#8217;ll want to use a dedicated &#8220;tracker&#8221; name. Let&#8217;s start with setting the tracker name. This will happen on your built-in All Pages/Pageview trigger, as soon as the GA tag launches. Enable override settings for the Universal Analytics tag. Then, go to Advanced Configuration, &#8220;Set Tracker Name&#8221; to True, and enter your custom tracker name: &#8220;MyTracker&#8221;.</p>



<p>The Javascript event below would be defined as a &#8220;Custom Event&#8221; trigger in GTM (event name is &#8216;uidAvailable&#8217;).</p>



<p><em>dataLayer.push({event: &#8216;uidAvailable&#8217;, uid:&lt;dynamic user id here&gt;});</em></p>



<p>Now, create a Data Layer variable in GTM called &#8220;UserID&#8221; and set the Data Layer Variable name to uid (which we defined in our Data Layer push).</p>



<p>Next, you&#8217;ll set the tag your Javascript event triggers to a Universal Analytics tag with an Event hit. Make sure to set the tracker to &#8220;MyTracker&#8221; as you did in the above step. Also, under &#8220;Fields to Set&#8221;, set UserID as the variable you created.</p>



<p>You can also set the UserID within the Google Analytics tracking tag itself and circumvent Google Tag Manager, but I recommend using GTM if at all possible. This is the snippet you use to set UserID within the GA tag:</p>



<p><em>ga(&#8216;set&#8217;, &#8216;userId&#8217;, &#8216;&lt;dynamic user id here&gt;&#8217;);</em></p>



<h3 class="wp-block-heading"><span style="color: #52afac;">Tracking lifetime value via API and custom fields</span></h3>



<p>For API based tracking, you&#8217;ll need a few things in place. First, you&#8217;ll need to be using an eCommerce or payment processing platform that allows you to send information about transactions to other systems in a format that can be &#8220;read&#8221;. I recommend using an application called <a href="https://zapier.com" class="rank-math-link" target="_blank" rel="noopener">Zapier</a> to do this. It takes a lot of the guess work out of the process, and it works with over 1000 different applications.</p>



<p>For example, if you were using Shopify for your eCommerce platform and Infusionsoft for your CRM, you could setup a &#8220;Zap&#8221; in Zapier to update a custom field in your customer&#8217;s profile each time they made a purchase. The logic of this sequence would be something like this:</p>



<p><strong><em>Trigger: New order in Shopify</em></strong></p>



<p><strong><em>Action# 1: Create or Update contact in Infusionsoft</em></strong></p>



<p><em>Check for the existence of a contact record using e-mail address</em></p>



<p><em>Update a custom field called &#8220;Recent Purchase&#8221; with the latest purchase amount</em></p>



<p><em>If you are creating a new contact, set the lifetime value to 0</em></p>



<p><strong><em>Action #2: Add the latest purchase to the lifetime value amount</em></strong></p>



<p><em>Using the Formatter app by Zapier, conduct a spreadsheet function: SUM(Recent Purchase, Lifetime Value)</em></p>



<p><strong><em>Action #3: Update the lifetime value with the result of the second step</em></strong></p>



<p>Once this &#8220;Zap&#8221; is up and running, your customers&#8217; lifetime values will update automatically any time they make a purchase.</p>



<h2 class="wp-block-heading"><span style="color: #52afac;">How do you use lifetime value (LTV) to improve your return on ad spend (ROAS)?</span></h2>



<p>This takes a small additional step, but can be super useful for anyone doing display or pay per click advertising. For example, let&#8217;s say we have a mailing list with 2,000 e-mails on it. Out of all the e-mails on that list, we&#8217;ve earned $1,500 in sales.</p>



<p><em>$1,500 (Total Sales)/2,000 (Total E-mails) = $0.75 average lifetime value per subscriber</em></p>



<p>This tells us that we can spend up to $0.75 per subscriber and still break even. Anything less and we start to generate a return on investment (ROI). Anything more, and we can stand the potential to start losing money, unless we can improve our average lifetime value.</p>



<p>Knowing a figure like this can help you creating bidding guidelines in tools like Adwords or Facebook and a establish a target cost per acquisition (CPA).</p>



<p>These days we have an almost unlimited volume of data on our customers. The key is to make that information easy to digest and analyze, so you can maximize its value when planning and forecasting your business activities.</p>



<h2 class="wp-block-heading"><span style="color: #52afac;">Got a question? Leave me a comment and I&#8217;ll do my best to assist.</span></h2>
]]></content:encoded>
					
					<wfw:commentRss>https://kieran.live/what-is-lifetime-value-ltv/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
