<?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>A/B testing Archives - Reflective Data</title>
	<atom:link href="https://reflectivedata.com/category/ab-testing/feed/" rel="self" type="application/rss+xml" />
	<link>https://reflectivedata.com/category/ab-testing/</link>
	<description></description>
	<lastBuildDate>Mon, 22 May 2023 13:34:37 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.2</generator>

<image>
	<url>https://reflectivedata.com/wp-content/uploads/2016/09/cropped-new-favicon-2-32x32.png</url>
	<title>A/B testing Archives - Reflective Data</title>
	<link>https://reflectivedata.com/category/ab-testing/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Export Experiment Data From Google Optimize &#8211; While You Still Can</title>
		<link>https://reflectivedata.com/export-experiment-data-from-google-optimize</link>
					<comments>https://reflectivedata.com/export-experiment-data-from-google-optimize#respond</comments>
		
		<dc:creator><![CDATA[Jason Dolan]]></dc:creator>
		<pubDate>Tue, 24 Jan 2023 10:43:12 +0000</pubDate>
				<category><![CDATA[A/B testing]]></category>
		<category><![CDATA[BigQuery]]></category>
		<category><![CDATA[Data Pipeline]]></category>
		<category><![CDATA[Google Optimize]]></category>
		<guid isPermaLink="false">http://reflectivedata.com/?p=20215</guid>

					<description><![CDATA[<p>Google Optimize and Optimize 360 will no longer be available after September 30, 2023. Your experiments and personalizations can continue to run until that date. Any experiments and personalizations still active on that date will end.</p>
<p>In order to not lose your data, you should act on exporting it now!</p>
<p>The post <a href="https://reflectivedata.com/export-experiment-data-from-google-optimize">Export Experiment Data From Google Optimize &#8211; While You Still Can</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Google Optimize and Optimize 360 will no longer be available after <strong>September 30, 2023</strong>. Your experiments and personalizations can continue to run until that date. Any experiments and personalizations still active on that date will end.</p>
<p>This came as an unwelcome surprise for anyone working in the experimentation industry. Even if you didn&#8217;t use the tool itself, it was the first tool most newcomers used to get themselves into experimenting on their websites.</p>
<p>For a while, Google Optimize going away was everything people talked about on Twitter and LinkedIn.</p>
<figure id="attachment_20216" aria-describedby="caption-attachment-20216" style="width: 1120px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-14.21.06.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img fetchpriority="high" decoding="async" class="size-full wp-image-20216" src="http://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-14.21.06.png" alt="Google Optimize Data Export" width="1120" height="422" srcset="https://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-14.21.06.png 1120w, https://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-14.21.06-700x264.png 700w, https://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-14.21.06-1024x386.png 1024w, https://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-14.21.06-768x289.png 768w" sizes="(max-width: 1120px) 100vw, 1120px" /></a><figcaption id="caption-attachment-20216" class="wp-caption-text"><a href="https://twitter.com/SimoAhava/status/1616660321346658306">Source</a></figcaption></figure>
<h2>Exporting Experiment Data From Google Optimize</h2>
<p>Since several of our existing clients asked for it, we built <a href="http://reflectivedata.com/services/google-optimize-data-export">Google Optimize Data Exporter</a> to store your experiment data for as long as you need it. It supports almost any data destination, including popular ones like Google BigQuery, Amazon S3 and Snowflake.</p>
<p>Google Optimize Data Exporter runs on the same robust and scalable <a href="http://reflectivedata.com/analytics-data-pipeline/integrations">Reflective Data Infrastructure</a> that you hopefully already know and love.</p>
<figure id="attachment_20201" aria-describedby="caption-attachment-20201" style="width: 2220px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-10.52.20.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img decoding="async" class="size-full wp-image-20201" src="http://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-10.52.20.png" alt="Google Optimize Data Export" width="2220" height="286" srcset="https://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-10.52.20.png 2220w, https://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-10.52.20-700x90.png 700w, https://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-10.52.20-1024x132.png 1024w, https://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-10.52.20-768x99.png 768w, https://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-10.52.20-1536x198.png 1536w, https://reflectivedata.com/wp-content/uploads/2023/01/Screenshot-2023-01-24-at-10.52.20-2048x264.png 2048w" sizes="(max-width: 2220px) 100vw, 2220px" /></a><figcaption id="caption-attachment-20201" class="wp-caption-text">Google Optimize Data Export</figcaption></figure>
<p>We&#8217;ve made the process of exporting your Google Optimize data as simple as possible. Here&#8217;s a quick overview.</p>
<h3>1. Planning and scoping</h3>
<p><a href="http://reflectivedata.com/services/google-optimize-data-export#services-contact-section" target="_blank" rel="noopener">Get in touch</a> with one of our data analysts to plan your Google Optimize Data export. The main questions to answer are the list of experiments, dimensions, metrics, time frames and the data destination you wish to use for your Optimize data export.</p>
<h3>2. Data export and storage</h3>
<p>Executing the plan. Our data analyst will configure Reflective Data Export System to pull the requested data from your Google Optimize instance and store at your chosen data storage destination.</p>
<p>Most exports use Google BigQuery as a data destination.</p>
<h3>3. Reporting and consultation</h3>
<div>Need help accessing or using the data? Reflective Data experts are happy to assist you with everything ranging from configuring interactive reports to consulting you on maximising insights you can draw from this dataset.</div>
<div>
<section class="elementor-section elementor-top-section elementor-element elementor-element-9407817 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="9407817" data-element_type="section">
<div class="elementor-container elementor-column-gap-default">
<div class="elementor-row">
<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2bcdcea" data-id="2bcdcea" data-element_type="column">
<div class="elementor-column-wrap elementor-element-populated">
<div class="elementor-widget-wrap">
<div class="elementor-element elementor-element-5f9b35c elementor-widget elementor-widget-heading" data-id="5f9b35c" data-element_type="widget" data-widget_type="heading.default">
<div class="elementor-widget-container">
<h2 class="elementor-heading-title elementor-size-default">Why is Google Optimize being sunset?</h2>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<section class="elementor-section elementor-top-section elementor-element elementor-element-adf23db elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="adf23db" data-element_type="section">
<div class="elementor-container elementor-column-gap-default">
<div class="elementor-row">
<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-fe4e504" data-id="fe4e504" data-element_type="column">
<div class="elementor-column-wrap elementor-element-populated">
<div class="elementor-widget-wrap">
<div class="elementor-element elementor-element-ae4d3b9 elementor-widget elementor-widget-text-editor" data-id="ae4d3b9" data-element_type="widget" data-widget_type="text-editor.default">
<div class="elementor-widget-container">
<div class="elementor-text-editor elementor-clearfix">
<h3><strong>Official statement</strong></h3>
<blockquote>
<div>
<p><em>We remain committed to enabling businesses of all sizes to improve your user experiences and are investing in A/B testing in Google Analytics 4. We are focused on bringing the most effective solutions and integrations to our customers, especially as we look toward the future with Google Analytics 4.</em></p>
<p><em>Optimize, though a longstanding product, does not have many of the features and services that our customers request and need for experimentation testing. We therefore have decided to invest in solutions that will be more effective for our customers.</em></p>
</div>
</blockquote>
<p>At Reflective Data, we’re sad to see Google Optimize go. Especially because it enabled so many smaller teams to get started with experimenting with their site.</p>
<p>On the other hand, this will create a big opportunity for the other, dedicated experimentation vendors, to fill this cap in the market.</p>
<p>We’re quite sure, GA4 will improve its experimentation reporting capabilities but running the experiments themselves will likely stay outside of Google’s ecosystem.</p>
<p>Either way, if you have run experiments on Google Optimize, you should export your data ASAP. If you need help, <a href="http://reflectivedata.com/services/google-optimize-data-export">we’ve got you covered</a>.</p>
<section class="elementor-section elementor-top-section elementor-element elementor-element-aba2aff elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="aba2aff" data-element_type="section">
<div class="elementor-container elementor-column-gap-default">
<div class="elementor-row">
<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-a9cb833" data-id="a9cb833" data-element_type="column">
<div class="elementor-column-wrap elementor-element-populated">
<div class="elementor-widget-wrap">
<div class="elementor-element elementor-element-e01131c elementor-widget elementor-widget-heading" data-id="e01131c" data-element_type="widget" data-widget_type="heading.default">
<div class="elementor-widget-container">
<h2 class="elementor-heading-title elementor-size-default">Google Optimize Alternatives</h2>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<section class="elementor-section elementor-top-section elementor-element elementor-element-f5dfbc5 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="f5dfbc5" data-element_type="section">
<div class="elementor-container elementor-column-gap-default">
<div class="elementor-row">
<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7fcce66" data-id="7fcce66" data-element_type="column">
<div class="elementor-column-wrap elementor-element-populated">
<div class="elementor-widget-wrap">
<div class="elementor-element elementor-element-21a5e55 elementor-widget elementor-widget-text-editor" data-id="21a5e55" data-element_type="widget" data-widget_type="text-editor.default">
<div class="elementor-widget-container">
<div class="elementor-text-editor elementor-clearfix">
<p>While we don’t directly partner with any of the testing tools vendors, we do have extensive experience using most of them. Including Optimizely, VWO, Convert, Adobe Target, Sitespect, AB Tasty and Mutiny – to name a few.</p>
<p>Choosing your alternative to Google Optimize depends and various factors like your company’s experimentation maturity, budget and tech stack.</p>
<p>Instead of promoting any of the more traditional testing tools, we would like to encourage you to learn more about an open-source alternative <a href="https://www.growthbook.io/">GrowthBook</a>.</p>
<p>We’ve helped several companies implement GrowthBook and would be happy to discuss this option with you, too. Below are some of the reasons why you might want to consider GrowthBook as your Google Optimize alternative.</p>
<ul>
<li>Free and open-source</li>
<li>Full data ownership</li>
<li>Sits on top of your data warehouse (i.e. BigQuery)</li>
<li>Supports both client-side and server-side testing</li>
</ul>
<h2>Conclusion</h2>
<p>Google Optimize as we knew and loved it is going away on September 30, 2023.</p>
<p>If you ever used Google Optimize to run experiments on your website, you should export this data for future reference.</p>
<p>While you can attempt exporting Optimize data manually using Google Analytics Reporting API but it&#8217;s much easier done using Reflective Data&#8217;s <a href="http://reflectivedata.com/services/google-optimize-data-export">Google Optimize Data Exporter</a>.</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
<p>The post <a href="https://reflectivedata.com/export-experiment-data-from-google-optimize">Export Experiment Data From Google Optimize &#8211; While You Still Can</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://reflectivedata.com/export-experiment-data-from-google-optimize/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Measure Long-Term Metrics Like Customer Lifetime Value (LTV) Using Google Analytics</title>
		<link>https://reflectivedata.com/measure-long-term-metrics-like-customer-lifetime-value-ltv-using-google-analytics/</link>
					<comments>https://reflectivedata.com/measure-long-term-metrics-like-customer-lifetime-value-ltv-using-google-analytics/#comments</comments>
		
		<dc:creator><![CDATA[Jason Dolan]]></dc:creator>
		<pubDate>Tue, 25 May 2021 13:43:07 +0000</pubDate>
				<category><![CDATA[A/B testing]]></category>
		<category><![CDATA[BigQuery]]></category>
		<category><![CDATA[Data Pipeline]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<guid isPermaLink="false">http://reflectivedata.com/?p=9865</guid>

					<description><![CDATA[<p>Long-term metrics like customer lifetime value (LTV) and churn can be so much more insightful and lead to better results when optimized for when compared to the more basic metrics like transactions or revenue. Yet, these metrics are often ignored or at least not involved in the analysis and optimization processes enough. One of the reasons is that it's quite difficult to track them using common analytics and testing tools like Google Analytics and Optimize.</p>
<p>In this article, we are going to explore some of the ways we can leverage Google Analytics to track churn, LTV and other really useful metrics.</p>
<p>The post <a href="https://reflectivedata.com/measure-long-term-metrics-like-customer-lifetime-value-ltv-using-google-analytics/">Measure Long-Term Metrics Like Customer Lifetime Value (LTV) Using Google Analytics</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Long-term metrics like customer lifetime value (LTV) and churn can be so much more insightful and lead to better results when optimized for when compared to the more basic metrics like transactions or revenue. Yet, these metrics are often ignored or at least not involved in the analysis and optimization processes enough. One of the reasons is that it&#8217;s quite difficult to track them using common analytics and testing tools like Google Analytics and Optimize.</p>
<p>In this article, we are going to explore some of the ways we can leverage Google Analytics to track churn, LTV and other really useful metrics.</p>
<p>Depending on the software you&#8217;re using, there may be some off-the-shelf solutions that you can install. For example, if you&#8217;re on Shopify then you can use something like <a href="https://www.littledata.io/">Littledata</a> to send a more accurate LTV value into a custom dimension in Google Analytics. More often than not, though, there is no good solution available or you just need more control over the setup.</p>
<p>One common misconception is that such long-term retention metrics are relevant for a few specific business types only. Yes, metrics like churn are vital for SaaS and subscription products but any company that gets return business should have their long-term KPIs in place. And I don&#8217;t mean simply tracking them but actually analyzing them and optimizing the business with those metrics in mind.</p>
<blockquote><p><em>Acquiring a new customer is anywhere from five to 25 times more expensive than retaining an existing one. It makes sense: you don’t have to spend time and resources going out and finding a new client — you just have to keep the one you have happy.</em></p>
<p style="text-align: right;"><a href="https://hbr.org/2014/10/the-value-of-keeping-the-right-customers#:~:text=Depending%20on%20which%20study%20you,the%20one%20you%20have%20happy.">Harvard Business Review</a></p>
</blockquote>
<p>So, if you&#8217;ve been focusing on getting new customers and metrics like revenue or transactions, this article is just for you!</p>
<h2>How to measure retention metrics like LTV and churn</h2>
<p>The long-term retention metrics most relevant to you depend on the type of business you&#8217;re working with but the most common ones are customer lifetime value (LTV) and churn. Below is a list of other popular retention KPIs. Think about the ones that would be relevant for your business.</p>
<p>Common Customer Retention Metrics</p>
<ol>
<li>Customer Churn</li>
<li>Revenue Churn</li>
<li>Existing Customer Growth Rate</li>
<li>Repeat Purchase Ratio</li>
<li>Product Return Rate</li>
<li>Days Sales Outstanding</li>
<li>Net Promoter Score</li>
<li>Time Between Purchases</li>
<li>Loyal Customer Rate</li>
<li>Customer Lifetime Value</li>
</ol>
<p style="text-align: right;"><a href="https://blog.hubspot.com/service/customer-retention-metrics">Source</a></p>
<p>Almost all retention metrics require a proper <a href="http://reflectivedata.com/everything-need-know-google-analytics-user-id/">User ID implementation</a>. This means you&#8217;d have to identify the user over time and even if they&#8217;re using multiple devices or browsers. Luckily, in most cases, actions like completing a purchase or signing up for a subscription do involve some kind of authentication.</p>
<p>While it&#8217;s possible to track retention metrics with Google Analytics alone, in most cases you&#8217;d get much better (more accurate) results when combining it with some other technology. Let&#8217;s explore two of the more popular options.</p>
<h3>Sending retention data into Google Analytics</h3>
<p>This solution involves sending retention data into a <a href="http://reflectivedata.com/ideas-for-google-analytics-custom-dimensions-and-metrics/">custom dimension or a custom metric</a> in Google Analytics.</p>
<p>The exact workflow depends on the software (CRM, CMS, database etc.) your site uses but the general process would look something like this.</p>
<ol>
<li>Create a custom dimension in Google Analytics (should be user-scoped)<br />
<a  href="http://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.18-21_42_39.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img decoding="async" class="aligncenter size-full wp-image-9893" src="http://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.18-21_42_39.png" alt="Retention related custom metrics in Google Analytics" width="1168" height="546" srcset="https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.18-21_42_39.png 1168w, https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.18-21_42_39-700x327.png 700w, https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.18-21_42_39-1024x479.png 1024w, https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.18-21_42_39-768x359.png 768w" sizes="(max-width: 1168px) 100vw, 1168px" /></a></li>
<li>For logged-in/identified users, pull/calculate the values for the relevant retention metrics from a database or other system (CRM, CMS etc.)<br />
Something like this if your order data is stored in BigQuery.<br />
<a  href="http://reflectivedata.com/wp-content/uploads/2021/05/screenshot-nimbusweb.me-2021.05.18-22_00_07.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-9894" src="http://reflectivedata.com/wp-content/uploads/2021/05/screenshot-nimbusweb.me-2021.05.18-22_00_07.png" alt="Query retention metrics from BigQuery" width="687" height="392" /></a></li>
<li>Make the retention metrics available in the <a href="https://developers.google.com/tag-manager/devguide">data layer</a><br />
<a  href="http://reflectivedata.com/wp-content/uploads/2021/05/Screenshot-2021-05-18-at-22.06.56.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-9895" src="http://reflectivedata.com/wp-content/uploads/2021/05/Screenshot-2021-05-18-at-22.06.56.png" alt="Retention metrics in the dashboard" width="310" height="132" /></a></li>
<li>Use Google Tag Manager to send your retention metrics to Google Analytics, using the custom dimension or metrics slots/indices according to how you configured them in step #1<a  href="http://reflectivedata.com/wp-content/uploads/2021/05/Screenshot-2021-05-18-at-22.10.04.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-9896" src="http://reflectivedata.com/wp-content/uploads/2021/05/Screenshot-2021-05-18-at-22.10.04.png" alt="Sending retention metrics to Google Analytics" width="796" height="217" srcset="https://reflectivedata.com/wp-content/uploads/2021/05/Screenshot-2021-05-18-at-22.10.04.png 796w, https://reflectivedata.com/wp-content/uploads/2021/05/Screenshot-2021-05-18-at-22.10.04-700x191.png 700w, https://reflectivedata.com/wp-content/uploads/2021/05/Screenshot-2021-05-18-at-22.10.04-768x209.png 768w" sizes="(max-width: 796px) 100vw, 796px" /></a></li>
</ol>
<p>Now, having this data available in Google Analytics, you do whatever you want with it. Here are a few examples.</p>
<p><strong>Using LTV in a Google Analytics custom report</strong></p>
<p>&nbsp;</p>
<p><a  href="http://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.21-16_06_39.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-9931" src="http://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.21-16_06_39.png" alt="Using LTV in a Google Analytics custom report" width="977" height="520" srcset="https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.21-16_06_39.png 977w, https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.21-16_06_39-700x373.png 700w, https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.21-16_06_39-768x409.png 768w" sizes="(max-width: 977px) 100vw, 977px" /></a></p>
<p>&nbsp;</p>
<p><strong>LTV in the Google Analytics user explorer report</strong></p>
<p>&nbsp;</p>
<p><a  href="http://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.21-16_13_08.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-9932" src="http://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.21-16_13_08.png" alt="LTV in the Google Analytics user explorer report" width="987" height="843" srcset="https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.21-16_13_08.png 987w, https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.21-16_13_08-700x598.png 700w, https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-analytics.google.com-2021.05.21-16_13_08-768x656.png 768w" sizes="(max-width: 987px) 100vw, 987px" /></a></p>
<p>Notice the difference between LTV that Google Analytics is reporting by default ($439) and the value we see in our custom dimension ($2,016). This is because Google Analytics can&#8217;t keep a track of the user as accurately as your backend system or an e-commerce platform you&#8217;re using. The same goes with other retention metrics, getting accurate metrics requires some custom work.</p>
<p>The list of possible use cases for this kind of data is unlimited. For example, think about creating custom segments in Google Analytics for customers that are in the top 10% in terms of LTV and see what differentiates them from the rest of the visitors. Besides making more/larger purchases, of course. Things like their traffic source, what pages they landed on, what A/B test variants they saw etc. can be quite insightful.</p>
<p>Talking about ways you can analyze your data and the insights it will give you. Let&#8217;s take measuring retention metrics to a whole new level by sending data into a data warehouse.</p>
<h3>Storing data in a data warehouse</h3>
<p>If you&#8217;re just getting started with retention metrics and you still mostly optimize for generic metrics like leads, total transactions and total revenue, then you&#8217;ll still be better off with having them in Google Analytics. Compared to not having them at all, that is. If you&#8217;re serious about analyzing and optimizing for retention and customer lifetime value then you need a data warehouse.</p>
<p>Here&#8217;s a quick step-by-step guide that will lead you in the right direction.</p>
<ol>
<li>Send all Google Analytics data into a data warehouse (i.e. <a href="https://cloud.google.com/bigquery">BigQuery</a>). Tools using the <a href="https://developers.google.com/analytics/devguides/reporting/core/v4">Reporting API</a> (most of them) can get you started but for true unsampled hit-level data you need something like <a href="http://reflectivedata.com/services/google-analytics-parallel-tracking/">Parallel Tracking</a>.</li>
<li>Send, pull, push data from other relevant sources into your data warehouse. This should include your database, CRM, CMS, marketing tools, ads platforms, customer support, live chat and every other tool that has data about your customers and their interactions with your brand. Self-service tools like <a href="https://www.stitchdata.com/">Stitch</a> will get you started but we&#8217;d recommend <a href="http://reflectivedata.com/analytics-data-pipeline/">more flexible managed solutions</a>.</li>
<li>Solution for accessing data stored in your data warehouse. You&#8217;d need something (could be separate tools) that can handle ad-hoc queries, dashboarding, automated reports, and building data models. Tools like <a href="https://datastudio.google.com/">Google Data Studio</a> will get you started. Something like <a href="https://looker.com/">Looker</a> or <a href="https://www.tableau.com/">Tableau</a> would be better. Our recommendation is to go with a <a href="http://reflectivedata.com/services/analytics-services/">managed service</a> that will put together the best set of tools for you and configure the rest as well.</li>
</ol>
<p>If having retention metrics in Google Analytics enabled you to do all sorts of useful new reports and analysis then your options with the setup above are truly limitless.</p>
<p>Having a proper data warehouse will be your competitive advantage. Not only does it give you an option to get a very good overview of the current status of your business and your customers, but it will also allow for truly optimizing the user experience and user journey. Leading to a better user experience and improved retention metrics. Remember, acquiring a new customer is anywhere from five to 25 times more expensive than retaining an existing one!</p>
<p>One way to describe the usefulness of a data warehouse is by giving you a few sample questions. Questions that would be very difficult to answer without a data warehouse.</p>
<ul>
<li>Purchases from which traffic channels are most likely to be refunded at some point in the future? Might lead to revising your marketing budget.</li>
<li>Which traffic sources have the highest retention/LTV?</li>
<li>What is the correlation between subscription value ($) and churn rate?</li>
<li>What is the long-term impact of your campaigns or A/B experiments? Do quick wins lead to higher churn or lower LTV?</li>
<li>Does data from different sources add up? Maybe Google Analytics is missing some transactions that are in Shopify or perhaps some of them are duplicates?</li>
</ul>
<p>Here&#8217;s an example of the last one on the list above.</p>
<figure id="attachment_10018" aria-describedby="caption-attachment-10018" style="width: 624px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2021/05/screenshot-console.cloud_.google.com-2021.05.25-15_10_28.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="wp-image-10018 size-full" src="http://reflectivedata.com/wp-content/uploads/2021/05/screenshot-console.cloud_.google.com-2021.05.25-15_10_28.png" alt="Google Analytics vs Shopify order count" width="624" height="896" srcset="https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-console.cloud_.google.com-2021.05.25-15_10_28.png 624w, https://reflectivedata.com/wp-content/uploads/2021/05/screenshot-console.cloud_.google.com-2021.05.25-15_10_28-488x700.png 488w" sizes="(max-width: 624px) 100vw, 624px" /></a><figcaption id="caption-attachment-10018" class="wp-caption-text">Google Analytics vs Shopify order count</figcaption></figure>
<p>As you can see, Google Analytics is missing a good amount of transactions and this requires further investigation. Definitely something you should include in your Google Analytics dashbaord.</p>
<p>This was just a short list of ideas to get you thinking about what is possible with a proper data warehouse. You can trust me when I say that I&#8217;ve seen companies become truly data-driven after they&#8217;ve implemented a tailor-made data warehouse and started digging for insights they couldn&#8217;t before.</p>
<h3>Working with automatically recurring events</h3>
<p>It is important to keep in mind that some retention metrics can change without the user themselves taking any action. You need to make sure that those cases are being tracked and taken into account. Here are a few examples.</p>
<ul>
<li>Recurring orders/payments</li>
<li>Subscription expirations</li>
<li>Payment method expirations</li>
<li>Orders being changed/cancelled (i.e. due to missing item)</li>
</ul>
<p>If your data warehouse was configured properly, you should have this data already available. Just make sure to include it in your analysis and reports.</p>
<p>In case you don&#8217;t have a data warehouse and you&#8217;re trying to solve this with Google Analytics alone then you need to use the <a href="https://developers.google.com/analytics/devguides/collection/protocol/v1">Measurement Protocol</a>. Some of the more common subscription platforms like ReCharge for Shopify have this built-in or solvable with some 3-rd party solutions but quite often custom development is required. In which case, you should think about implementing a data warehouse instead.</p>
<h2>Conclusion</h2>
<p>If you&#8217;re in a business where customers are expected to generate value more than once (repeat purchase, subscription etc.) then you need to start focusing on your retention metrics.</p>
<p>Google Analytics can get you started with the basic metrics and limited accuracy. A much better setup would be Google Analytics combined with <a href="http://reflectivedata.com/services/google-analytics-parallel-tracking/">Parallel Tracking</a> and if you&#8217;re serious about optimizing for those metrics then you need a <a href="http://reflectivedata.com/analytics-data-pipeline/">custom-built data warehouse</a> where all marketing data is pulled together.</p>
<p>Feel free to post your ideas and questions in the comments below. If you&#8217;d like to get some consultation and discuss your ideas further, <a href="http://reflectivedata.com/services/analytics-services/">get in touch with us</a>.</p>
<p>The post <a href="https://reflectivedata.com/measure-long-term-metrics-like-customer-lifetime-value-ltv-using-google-analytics/">Measure Long-Term Metrics Like Customer Lifetime Value (LTV) Using Google Analytics</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://reflectivedata.com/measure-long-term-metrics-like-customer-lifetime-value-ltv-using-google-analytics/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Case Study: Solving The Discrepancy Between A/B Testing Tool, Google Analytics and Backend Data For a Large E-Commerce Business</title>
		<link>https://reflectivedata.com/case-study-solving-ab-testing-google-analytics-backend-finance-discrepancy-ecommerce/</link>
					<comments>https://reflectivedata.com/case-study-solving-ab-testing-google-analytics-backend-finance-discrepancy-ecommerce/#comments</comments>
		
		<dc:creator><![CDATA[Jason Dolan]]></dc:creator>
		<pubDate>Fri, 15 Jan 2021 11:33:35 +0000</pubDate>
				<category><![CDATA[A/B testing]]></category>
		<category><![CDATA[BigQuery]]></category>
		<category><![CDATA[Case Study]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<guid isPermaLink="false">http://reflectivedata.com/?p=7961</guid>

					<description><![CDATA[<p>Working with skewed data can be worse than having no data at all. This is why we're always promoting all sorts of analytics audits and making sure all data sources agree with each other. At the very least, you should know why the numbers in different tools don't match (i.e. analytics doesn't include offline sales but backend does).</p>
<p>Our client in this case study contacted us with a quite specific problem. They were running a decent CRO program with 4-6 A/B experiments running every month. The problem they had with the program, though, was that the numbers they saw in their testing tool Optimizely, Google Analytics and backend didn't match. In fact, there was a ~35% discrepancy overall.</p>
<p>The post <a href="https://reflectivedata.com/case-study-solving-ab-testing-google-analytics-backend-finance-discrepancy-ecommerce/">Case Study: Solving The Discrepancy Between A/B Testing Tool, Google Analytics and Backend Data For a Large E-Commerce Business</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><span style="font-size: 21pt;">With the help of Reflective Data&#8217;s custom data pipeline, BigQuery and improved analytics integrations, we managed to bring the discrepancy between different tools reporting on similar data from ~35% down to ~2.5%.</span></p>
<blockquote><p><strong>About the client</strong></p>
<p>Our client, in this case study, is a large global e-commerce website, headquartered in the US.</p>
<p>Their main focus is on men&#8217;s clothing and they&#8217;re specialising in dress shirts, as well as ties, suits, casualwear, shoes and accessories.</p>
<p>Depending on a season, their monthly online revenue is between 10 and 15 million USD. This comes from around 45k monthly transactions.</p></blockquote>
<p><em>Due to NDAs, we are not allowed to disclose the name of the client. Everything else in this case study remains unchanged.</em></p>
<h2>The challenge</h2>
<p>Working with skewed data can be worse than having no data at all. This is why we&#8217;re always promoting all sorts of analytics audits and making sure all data sources agree with each other. At the very least, you should know why the numbers in different tools don&#8217;t match (i.e. analytics doesn&#8217;t include offline sales but backend does).</p>
<p>Our client in this case study contacted us with a quite specific problem. They were running a decent CRO program with 4-6 A/B experiments running every month. The problem they had with the program, though, was that the numbers they saw in their testing tool <a href="https://www.optimizely.com/">Optimizely</a>, <a href="https://analytics.google.com/analytics/web/#/">Google Analytics</a> and backend didn&#8217;t match. In fact, there was a ~35% discrepancy overall.</p>
<p>While it is almost impossible to reach 100% accuracy with Javascript based tools due to ad-blockers, cookie deletion etc. and some tools have different logic for calculation metrics like conversions, sessions, users — we knew that this discrepancy is way off the limits and immediate action is needed.</p>
<p>This kind of discrepancy was even more concerning as the client was actively running their CRO program. It wasn&#8217;t rare for them to see test results flip based on where they got their numbers (Google Analytics vs Optimizely). This put their entire CRO effort under question internally and the management wasn&#8217;t far from shutting it down. The results just weren&#8217;t trustworthy enough.</p>
<h2>The solution</h2>
<p>Even though the client described some rather clear symptoms, it is necessary to always start with a proper diagnosis of the problem. This way we can be sure that there indeed is a discrepancy between all these tools &#8211; in some cases, the problem can be in how you understand/read the numbers. Another goal for the diagnosis was to understand the size/reach of the problem.</p>
<h3>Diagnosis</h3>
<p>The very first thing we did to diagnose and measure the discrepancy was to get access to all data sources. That included the testing tool (Optimizely), Google Analytics and the client&#8217;s backend numbers. Next, we made sure the metrics are comparable (i.e. all the transactions we see in the backend are indeed supposed to show up in Google Analytics as well). We then put those numbers side-by-side in a spreadsheet and grouped them by date.</p>
<p>After analyzing the daily numbers, we came to the conclusion that there is indeed an average of 35% discrepancy between Optimizely and Google Analytics (less transactions in the testing tool). The discrepancy between Google Analytics and backend, on the other hand, was rather small — just below 3%. This can be considered OK for a Javascript-based analytics tool.</p>
<p>The discrepancy between Google Analytics and Optimizely meant we had to dig deeper on that side. Unfortunately, Optimizely doesn&#8217;t give access to the raw underlying transaction ID level data by default. Luckily, though, we were able to get this data from their support team. With Google Analytics, exporting transaction-level data was doable with a custom report and CSV export. For the Google Analytics dataset, we included dimensions that would give us some extra context — payment gateway, products, device category, country etc.</p>
<p>After pulling transaction-ID-level data from Optimizely and Google Analytics in spreadsheets, we wrote a quick function that would mark the transactions in Google Analytics that didn&#8217;t show up in Optimizely. Then it was time to start looking for some patterns. Is there something in common for all missing transactions?</p>
<p>This is how one version of this spreadsheet looked like. This was to highlight transactions in the backend that didn&#8217;t show up in Google Analytics.</p>
<figure id="attachment_8056" aria-describedby="caption-attachment-8056" style="width: 2560px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2021/01/screenshot-docs.google.com-2021.01.15-12_52_23-scaled.jpg" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-8056" src="http://reflectivedata.com/wp-content/uploads/2021/01/screenshot-docs.google.com-2021.01.15-12_52_23-scaled.jpg" alt="Google Analytics vs Backend" width="2560" height="1437" srcset="https://reflectivedata.com/wp-content/uploads/2021/01/screenshot-docs.google.com-2021.01.15-12_52_23-scaled.jpg 2560w, https://reflectivedata.com/wp-content/uploads/2021/01/screenshot-docs.google.com-2021.01.15-12_52_23-700x393.jpg 700w, https://reflectivedata.com/wp-content/uploads/2021/01/screenshot-docs.google.com-2021.01.15-12_52_23-1024x575.jpg 1024w, https://reflectivedata.com/wp-content/uploads/2021/01/screenshot-docs.google.com-2021.01.15-12_52_23-768x431.jpg 768w, https://reflectivedata.com/wp-content/uploads/2021/01/screenshot-docs.google.com-2021.01.15-12_52_23-1536x862.jpg 1536w, https://reflectivedata.com/wp-content/uploads/2021/01/screenshot-docs.google.com-2021.01.15-12_52_23-2048x1150.jpg 2048w" sizes="(max-width: 2560px) 100vw, 2560px" /></a><figcaption id="caption-attachment-8056" class="wp-caption-text">Google Analytics vs Backend</figcaption></figure>
<h3>Implementing the fixes</h3>
<p>Since the website and payment processing system for this website were rather complex, it turned out there are more than one such patterns. They were all related to the use of various payment gateways, device categories and local sub-sites for specific countries.</p>
<p>In order to come up with a proper solution, we had to dig even deeper into how transaction tracking was set up for both Google Analytics and Optimizely. Luckily, we were able to detect the shortcomings quite fast and fixing them wasn&#8217;t rocket science either. After a few rounds of testing and a couple of A/A tests run in Optimizely, we were able to get the discrepancy number from 35% down to 2.5%.</p>
<p>The main reason for this mismatch was that while <a href="https://marketingplatform.google.com/about/tag-manager/">Google Tag Manager</a> was in use to unify transaction tracking for Google Analytics, tracking snippets for Optimizely were all over the place. The solution involved moving all Optimizely tracking into Google Tag Manager and use the same triggers that were being used for Google Analytics.</p>
<h2>Going forward</h2>
<p>Since the site has a rather complicated structure with multiple payment gateways and different pages for different countries/markets, we wanted to make sure that after implementing the fixes, the discrepancy would not start sneaking in again.</p>
<p>The solution here was a proper monitoring system that would get data from Google Analytics, Optimizely and the backend. Since the client was already on Google Cloud, we recommended using <a href="https://cloud.google.com/bigquery">BigQuery</a> as their data warehouse technology. Besides being really fast and cost-effective, BigQuery has some of the best integrations which makes implementing and using it as a marketing data warehouse much easier.</p>
<h3>Getting data into BigQuery</h3>
<p>For Google Analytics data, we used a technology called <a href="http://reflectivedata.com/services/google-analytics-parallel-tracking/">Parallel Tracking</a>. This allowed us to send raw hit-level unsampled Google Analytics into BigQuery. In real-time and for much cheaper than using Google Analytics 360.</p>
<p>To get data from Optimizely into BigQuery, we built a custom connector using <a href="https://docs.developers.optimizely.com/web/docs/rest-api-introduction">Optimizely API</a>. This solution allowed us to pull only the information that was necessary and make sure it&#8217;s always up to date.</p>
<p>Since the client had a custom backend infrastructure, we built a custom connector between that and BigQuery as well.</p>
<p>All connectors are now running on Google Cloud.</p>
<h3>Reporting and alerts</h3>
<p>In order for the client to be able to check the numbers from all three sources in one place, we built a dashboard using <a href="https://datastudio.google.com/u/0/navigation/reporting">Google Data Studio</a> which has a native connector with BigQuery.</p>
<p>To detect any discrepancies as soon as possible, we also created an automated reporting system with some custom code on Google Cloud Platform. This will send an email to relevant parties every time a certain threshold is passed. So far, it has already detected a few issues the client was able to fix before larger damage was done.</p>
<h2>Conclusion</h2>
<p>Overall, we were quite happy with the results of this project but I believe it&#8217;s better to end with a quote from the client.</p>
<blockquote><p><em>We hadn&#8217;t worked with Reflective Data before but they were recommended by our friends in the industry. We needed a quick but reliable solution to our problem. Our management was questioning the results of our CRO program and we weren&#8217;t far from getting shut down.</em></p>
<p><em>Team at Reflective Data was able to immediately understand our problem and jumped right into solving it. I think all together it took just around 2 weeks for them to diagnose and together with out IT team fix the problems behind this rather large discrepancy.</em></p>
<p><em>After great success with our first project together, we&#8217;ve continued working with them on various data-related projects around our data warehouse, reporting and dashboards.</em></p>
<p style="text-align: right;">Director of e-commerce</p>
</blockquote>
<p>We are so glad about these words from our client and it&#8217;s moments like this that give meaning to our work.  By the way, their CRO program has only grown since we were able to fix the mismatch. So, in a way, we were part of saving the jobs of an entire team.</p>
<p>Should you have similar problems with discrepancy or other data related requirements, <a href="http://reflectivedata.com/analytics-data-pipeline/">please contact us</a> and I&#8217;m quite sure we can work together and find a solution.</p>
<p>The post <a href="https://reflectivedata.com/case-study-solving-ab-testing-google-analytics-backend-finance-discrepancy-ecommerce/">Case Study: Solving The Discrepancy Between A/B Testing Tool, Google Analytics and Backend Data For a Large E-Commerce Business</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://reflectivedata.com/case-study-solving-ab-testing-google-analytics-backend-finance-discrepancy-ecommerce/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Tracking Optimize Anti-Flicker Snippet Timeout in Google Analytics</title>
		<link>https://reflectivedata.com/tracking-optimize-anti-flicker-snippet-timeout-in-google-analytics/</link>
					<comments>https://reflectivedata.com/tracking-optimize-anti-flicker-snippet-timeout-in-google-analytics/#comments</comments>
		
		<dc:creator><![CDATA[Silver Ringvee]]></dc:creator>
		<pubDate>Wed, 04 Sep 2019 13:15:40 +0000</pubDate>
				<category><![CDATA[A/B testing]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<category><![CDATA[Google Optimize]]></category>
		<category><![CDATA[Google Tag Manager]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Tools]]></category>
		<guid isPermaLink="false">http://reflectivedata.com/?p=3451</guid>

					<description><![CDATA[<p>If you have any experience with JavaScript-based A/B testing and/or personalization tools you know that flicker can be a real headache.</p>
<p>In case your tool of choice is Google Optimize, you should be using their official anti-flicker snippet to minimize the flicker effect.</p>
<p>The post <a href="https://reflectivedata.com/tracking-optimize-anti-flicker-snippet-timeout-in-google-analytics/">Tracking Optimize Anti-Flicker Snippet Timeout in Google Analytics</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>If you have any experience with JavaScript-based A/B testing and/or personalization tools you know that <a href="http://reflectivedata.com/fooc-get-rid/">flicker</a> can be a real headache.</p>
<p>In case your tool of choice is <a href="http://reflectivedata.com/dictionary/google-optimize/">Google Optimize</a>, you should be using their official <a href="https://support.google.com/optimize/answer/7100284?hl=en">anti-flicker snippet</a> to minimize the flicker effect.</p>
<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;!-- Anti-flicker snippet (recommended) --&gt;
&lt;style&gt;.async-hide { opacity: 0 !important} &lt;/style&gt;
&lt;script&gt;(function(a,s,y,n,c,h,i,d,e){s.className+=' '+y;h.start=1*new Date; h.end=i=function(){s.className=s.className.replace(RegExp(' ?'+y),'')}; (a[n]=a[n]||[]).hide=h;setTimeout(function(){i();h.end=null},c);h.timeout=c; })(window,document.documentElement,'async-hide','dataLayer',4000, {'OPT_CONTAINER_ID':true});&lt;/script&gt;</pre>
<p>Looking at the anti-flicker snippet (previously known as page-hiding snippet), you see that the default timeout is set to 4000ms. That means that, potentially, some of your visitors may see a blank white page for 4 seconds.</p>
<p>Since four seconds is a long time, many companies reduce it. A common timeout I&#8217;ve seen is 2 seconds. Changing the maximum timeout to a shorter period, although, means that there can be a good amount of people to whom the snippet occasionally times out.</p>
<p>When the anti-flicker snippet times out, no experiments will be loaded on that page load (people will see the control for all experiments and personalizations) which can lead to a user experience where a single user is seeing different variations in single session.</p>
<p>What you probably want to know is the optimal timeout period for your website. To figure that out, you&#8217;d need to know how many timeouts occur with your current setup. Let&#8217;s take a look how to set that up using Google Tag Manager and Google Analytics.</p>
<p>Before moving forward, you should read about <a href="https://developers.google.com/optimize/devguides/antiflicker">how the anti-flicker snippet works</a>.</p>
<h3>Catching the timeout</h3>
<p>To make this a little bit easier for us, Google has added a variable in the data layer that indicates whether the snipped has timed out or not.</p>
<p>You can access this variable like so:</p>
<p><code>window.dataLayer.hide["GTM-xxxxxx"]</code> where <code>GTM-xxxxxx</code> stands for your Optimize container ID.</p>
<p>To make sure it&#8217;s not too easy, though, they don&#8217;t push this variable into the data layer as you normally would. This means you can&#8217;t access it using GTM Data Layer variable nor the Custom Javascript variable.</p>
<p>What you need is a Custom Javascript function variable in GTM to check the value.</p>
<p>Here&#8217;s the function you can use</p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">function () { 
    if ( window.dataLayer.hide ) { 
        return window.dataLayer.hide["GTM-xxxxxxx"]; 
    } 
}</pre>
<p>And here is the same function implemented in Google Tag Manager.</p>
<figure id="attachment_3452" aria-describedby="caption-attachment-3452" style="width: 1296px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-15_44_18.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-3452" src="http://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-15_44_18.png" alt="Tracking Optimize anti-flicker snippet timeout using Google Analytics" width="1296" height="676" srcset="https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-15_44_18.png 1296w, https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-15_44_18-700x365.png 700w, https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-15_44_18-768x401.png 768w, https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-15_44_18-1024x534.png 1024w" sizes="(max-width: 1296px) 100vw, 1296px" /></a><figcaption id="caption-attachment-3452" class="wp-caption-text">Tracking Optimize anti-flicker snippet timeout</figcaption></figure>
<p>PS! In the beginning, the value is always <code>true</code>, it turns to <code>false</code> if the timeout period is over and it managed to load Optimize before this happened (the snippet did not time out).</p>
<p>Our recommendation is to check the value on GTM&#8217;s default <code>DOM Ready</code> event.</p>
<h3>Sending data to Google Analytics</h3>
<p>This part is quite straightforward for anyone that has used GTM to send custom events to Google Analytics so let&#8217;s get right to it.</p>
<h4>1. Create the DOM Ready trigger</h4>
<p>In case you haven&#8217;t configured this default trigger in GTM, go ahead do it now.</p>
<figure id="attachment_3456" aria-describedby="caption-attachment-3456" style="width: 1299px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_03_31.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="wp-image-3456 size-full" src="http://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_03_31.png" alt="Google Tag Manager DOM Ready Event" width="1299" height="375" srcset="https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_03_31.png 1299w, https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_03_31-700x202.png 700w, https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_03_31-768x222.png 768w, https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_03_31-1024x296.png 1024w" sizes="(max-width: 1299px) 100vw, 1299px" /></a><figcaption id="caption-attachment-3456" class="wp-caption-text">Google Tag Manager DOM Ready Event</figcaption></figure>
<h4>2. Create a new Tag for sending the event to Google Analytics</h4>
<p>Create a new Tag with a tag type of <strong>Google Analytics: Universal Analytics</strong> and choose track type of <strong>Event</strong>.</p>
<p>These are the recommended event parameters but you can use whatever works for you.</p>
<p><strong>Category:</strong> optimize</p>
<p><strong>Action:</strong> timeout</p>
<p><strong>Label:</strong> true/false (using the Custom Javascript function variable you created before)</p>
<p><strong>Non-Interaction Hit:</strong> True (because it&#8217;s not related to a user action)</p>
<figure id="attachment_3457" aria-describedby="caption-attachment-3457" style="width: 1287px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_07_34.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-3457" src="http://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_07_34.png" alt="Tracking Optimize anti-flicker snippet timeout using Google Analytics" width="1287" height="757" srcset="https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_07_34.png 1287w, https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_07_34-700x412.png 700w, https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_07_34-768x452.png 768w, https://reflectivedata.com/wp-content/uploads/2019/09/screenshot-tagmanager.google.com-2019.09.04-16_07_34-1024x602.png 1024w" sizes="(max-width: 1287px) 100vw, 1287px" /></a><figcaption id="caption-attachment-3457" class="wp-caption-text">Tracking Optimize anti-flicker snippet timeout using Google Analytics</figcaption></figure>
<p>That&#8217;s it. This is all you need to start tracking Optimize anti-flicker snippet timeouts using Google Tag Manager and Google Analytics.</p>
<h3>How to use this data?</h3>
<p>Your goal should be to find the optimal timeout duration for your website and audience. The percentage of users who experience the timeout should be kept under 10% and you might consider excluding those with timeouts from your post-analysis process using a custom segment in Google Analytics.</p>
<hr />
<p>Any questions or ideas? As always, feel free to post them in the comments below.</p>
<p>The post <a href="https://reflectivedata.com/tracking-optimize-anti-flicker-snippet-timeout-in-google-analytics/">Tracking Optimize Anti-Flicker Snippet Timeout in Google Analytics</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://reflectivedata.com/tracking-optimize-anti-flicker-snippet-timeout-in-google-analytics/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>Good Nomenclature Is More Important Than You Probably Think</title>
		<link>https://reflectivedata.com/good-nomenclature-is-more-important-than-you-probably-think/</link>
					<comments>https://reflectivedata.com/good-nomenclature-is-more-important-than-you-probably-think/#comments</comments>
		
		<dc:creator><![CDATA[Silver Ringvee]]></dc:creator>
		<pubDate>Wed, 20 Mar 2019 08:14:20 +0000</pubDate>
				<category><![CDATA[A/B testing]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Tools]]></category>
		<guid isPermaLink="false">http://reflectivedata.com/?p=3170</guid>

					<description><![CDATA[<p>Let's be honest, most companies don't really think about nomenclature when it comes to setting up their tags, goals or A/B testing experiments. And that creates a horrible mess that will steal your teams valuable time and makes sure no-one really knows what's going on.</p>
<p>At Reflective Data, when we start working with a new client, we always start by figuring out what their current system consists of — and in many cases, it's a real headache. Not to mention, when we ask the client about a specific tag or goal that they set up 6 months ago, they don't remember anything — and the name they chose isn't helping much either.</p>
<p>The post <a href="https://reflectivedata.com/good-nomenclature-is-more-important-than-you-probably-think/">Good Nomenclature Is More Important Than You Probably Think</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Let&#8217;s be honest, most companies don&#8217;t really think about nomenclature when it comes to setting up their tags, goals or A/B testing experiments. And that creates a horrible mess that will steal your teams valuable time and makes sure no-one really knows what&#8217;s going on.</p>
<p>At Reflective Data, when we start working with a new client, we always start by figuring out what their current system consists of — and in many cases, it&#8217;s a real headache. Not to mention, when we ask the client about a specific tag or goal that they set up 6 months ago, they don&#8217;t remember anything — and the name they chose isn&#8217;t helping much either.</p>
<figure id="attachment_3179" aria-describedby="caption-attachment-3179" style="width: 737px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2019/03/screenshot-tagmanager.google.com-2019.03.20-10-19-36.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-3179" src="http://reflectivedata.com/wp-content/uploads/2019/03/screenshot-tagmanager.google.com-2019.03.20-10-19-36.png" alt="Tag nomenclature - a bad example" width="737" height="51" srcset="https://reflectivedata.com/wp-content/uploads/2019/03/screenshot-tagmanager.google.com-2019.03.20-10-19-36.png 737w, https://reflectivedata.com/wp-content/uploads/2019/03/screenshot-tagmanager.google.com-2019.03.20-10-19-36-700x48.png 700w" sizes="(max-width: 737px) 100vw, 737px" /></a><figcaption id="caption-attachment-3179" class="wp-caption-text">Tag nomenclature &#8211; a bad example</figcaption></figure>
<p>For several clients, we&#8217;ve really pushed the need for getting a proper naming structure across the company. And while it hasn&#8217;t always been easy, we&#8217;ve managed to fix it for almost all of them. And according to our clients, the new naming conventions made their work so much more effective.</p>
<p>Renaming everything is one thing but, unfortunately, it won&#8217;t provide a long-term solution. What&#8217;s needed is nomenclature guidelines and educating the team on how to use them, and the importance of it.</p>
<p>Some (bad) real-life examples from Google Tag Manager that we&#8217;ve seen recently:</p>
<p><em>All from a single setup with over 170 tags</em></p>
<ol>
<li>Sending Google Pay click event</li>
<li>jquery-scrolldepth</li>
<li>UA event tracking for checkout</li>
<li>Hotjar for blog</li>
<li>Live chat widget</li>
<li>Conversion tag</li>
</ol>
<p>Now, if your tag manager has 10 tags you could probably get away with names like this. But when you start adding more tags and/or if more than one person is working with the setup, things start getting messy.</p>
<p>So, how should you name your tags? Let&#8217;s start by how we renamed the very same tags.</p>
<ol>
<li>GA &#8211; Event &#8211; Click &#8211; Google Pay</li>
<li>JS &#8211; Event &#8211; Scroll Depth</li>
<li>GA &#8211; Event &#8211; Clicks &#8211; Checkout</li>
<li>HJ &#8211; Main Snippet &#8211; Blog</li>
<li>Olark &#8211; Main Snippet</li>
<li>AdWords &#8211; Conversion &#8211; Purchase</li>
</ol>
<p>There are several ways how you could approach naming your tags (or anything else) but we generally like the space-dash-space method. The key is to pick one and stick to it. Of course, formatting alone just the facade.</p>
<p>Here are a few guidelines that will hopefully help you a bit further:</p>
<h4>1. Always have a documentation</h4>
<p>So you are working on a new nomenclature for your business. That&#8217;s great, but not everyone might understand things the way you do. Even if they look at a few examples they might come up with something totally different. That is why you must have documentation for explaining it.</p>
<h4>2. Educate your team</h4>
<p>This goes with the previous point. You need to inform your people about the new nomenclature and explain to them how it works and why it&#8217;s really important. You must also make sure everyone is actually following the new rules and friendly remind them every time they don&#8217;t. Trust me, in the beginning, you will have to do it guide often.</p>
<h4>3. Keep your names short</h4>
<p>Include as little as possible but as much as needed. It is okay to use shortenings and acronyms (you should include them in the docs, though) and lose the words that are not absolutely needed.</p>
<h4>4. Consistency is really important</h4>
<p>Make a plan and stick to it. If you are using an acronym, always use the same acronym. Don&#8217;t change the order of the elements in your names.</p>
<ul>
<li><span style="color: #339966;">GA &#8211; Event &#8211; Click &#8211; Add to Cart</span></li>
<li><span style="color: #339966;">GA &#8211; Event &#8211; Scroll Depth</span></li>
<li><span style="color: #ff0000;">Event &#8211; Blog Comment &#8211; GA</span></li>
<li><span style="color: #ff0000;">UA &#8211; Mobile menu click</span></li>
</ul>
<h4>5. Add some context</h4>
<p>Make sure people looking at your names would understand what they are, what are they doing and where are they doing it. For Google Analytics events, you might want to have &#8220;GA&#8221; and &#8220;Event&#8221; in your name, followed by what kind of event it is and on which pages this event is coming from.</p>
<hr />
<p>I hope these you find these guidelines helpful and they get you a step closer to having proper naming conventions at your company, too.</p>
<p>As a bonus, I&#8217;ve added some examples that I think are pretty good. Divided by where they&#8217;re used.</p>
<h4>Google Tag Manager Triggers</h4>
<ul>
<li>PV &#8211; Homepage <em>(PV stands for page view)</em></li>
<li>Click &#8211; Outbound Link</li>
<li>CE &#8211; VWO &#8211; Data Push <em>(CE stands for custom event)</em></li>
</ul>
<h4>Google Tag Manager Variables</h4>
<ul>
<li>VWO &#8211; Experiment ID</li>
<li>EC &#8211; Transaction ID <em>(EC stands for enhanced ecommerce)</em></li>
</ul>
<h4>Google Analytics Goals</h4>
<ul>
<li>Click &#8211; Complete Purchase</li>
<li>PV &#8211; Newsletter Signup Complete <em>(PV stands for page view)</em></li>
<li>Event &#8211; Submit Comment &#8211; Blog</li>
</ul>
<h4>A/B Testing Experiments</h4>
<ul>
<li>RD &#8211; Homepage &#8211; Benefits Bar &#8211; Desktop <em>(RD means this test was built by Reflective Data)</em></li>
<li>Sitewide &#8211; Change Main Menu Order &#8211; Desktop &amp; Mobile</li>
</ul>
<hr />
<p>Do you have any further ideas for improving analytics nomenclature? Share them in the comments below!</p>
<p>The post <a href="https://reflectivedata.com/good-nomenclature-is-more-important-than-you-probably-think/">Good Nomenclature Is More Important Than You Probably Think</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://reflectivedata.com/good-nomenclature-is-more-important-than-you-probably-think/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title>Comprehensive Guide to Statistics in A/B Testing</title>
		<link>https://reflectivedata.com/comprehensive-guide-to-statistics-in-a-b-testing/</link>
					<comments>https://reflectivedata.com/comprehensive-guide-to-statistics-in-a-b-testing/#comments</comments>
		
		<dc:creator><![CDATA[Silver Ringvee]]></dc:creator>
		<pubDate>Sat, 12 Jan 2019 16:00:39 +0000</pubDate>
				<category><![CDATA[A/B testing]]></category>
		<category><![CDATA[Statistics]]></category>
		<guid isPermaLink="false">http://reflectivedata.com/?p=2877</guid>

					<description><![CDATA[<p>Running a basic A/B test is easy, but you know what else is easy? - Misinterpreting the results.</p>
<p>In this post, we are covering the common statistics terminology and models, and taking a closer look at the different methods of calculating A/B testing related metrics.</p>
<p>The post <a href="https://reflectivedata.com/comprehensive-guide-to-statistics-in-a-b-testing/">Comprehensive Guide to Statistics in A/B Testing</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Running a basic A/B test is easy, but you know what else is easy? &#8211; Misinterpreting the results.</p>
<p>In this post, we are covering the common statistics terminology and models, and taking a closer look at the different methods of calculating A/B testing related metrics.</p>
<p>After going through everything, you will have a good understanding of what your testing tool does and how to calculate the metrics yourself.</p>
<p>Three main topics of this post:</p>
<ul>
<li>Frequentist statistics</li>
<li>Bayesian statistics</li>
<li>Revenue and Other Non-Binomial Metrics</li>
</ul>
<div class="bs-callout bs-callout-primary"><h4>Bookmark!</h4>
<p>Feel free to bookmark this post. We are constantly adding new and highly relevant information.</p>
</div>
<h2>Frequentist vs Bayesian</h2>
<p>No, we are not going to debate on which one you should prefer. There is a bunch of articles and threads on the pros and cons of each. Long story short &#8211; there is no right and wrong, go with whatever your A/B testing tool of choice is using and get to know how it works.</p>
<p>In the broadest sense, A/B testing is detecting which variation of your website has the highest probability of performing the best based on set criteria (actually it&#8217;s a bit more complicated but more on that later in the post). We can determine <a href="https://www.probabilisticworld.com/what-is-probability/">four types of probability</a>.</p>
<ol>
<li>Long-term frequencies</li>
<li>Physical tendencies/propensities</li>
<li>Degrees of belief</li>
<li>Degrees of logical support</li>
</ol>
<p>Frequentist inference is based on the first definition, Bayesian, on the other hand, is rooted in definitions 3 and 4.</p>
<p>Therefore, based the frequentist definition of probability, only repeatable random events (like the flipping of a coin) have probabilities. Furthermore, these probabilities are equal to the long-term frequency of occurrence of the events in question. It is important to understand that Frequentists don’t attach probabilities to hypotheses or to any fixed but unknown values in general. Ignoring this fact is what often leads to misinterpretations of frequentist analyses.</p>
<p>On the other hand, Bayesian approach views probabilities like a more general concept. Following the Bayesian technique, you can use probabilities to represent the uncertainty in any event or hypothesis. Hence, it’s perfectly acceptable to assign probabilities to non-repeatable events, like the result of your new product launch campaign. Therefore, many frequentists would say that such probabilities don’t actually make sense because the event is not repeatable. You can’t run your product launch campaign an infinite number of times.</p>
<h3>Frequentist approach</h3>
<p>Tools using frequentist-type statistics</p>
<ul>
<li>Optimizely (leveraging some Bayesian wisdom)</li>
<li>Convert</li>
</ul>
<p>You can export data from your testing tool or analytics platform and perform Frequentist tests, like Z test, yourself in tools like Excel or using programming languages like Python and R.</p>
<p>To interpret the results from a tool that is using Frequentist statistics, there are a few concepts that we need to understand.</p>
<h4>Null hypothesis</h4>
<p>A default position where conversion rate for control is equal to a conversion rate for a variation, there is no significant difference. Usually presented as H0.</p>
<h4>Alternative hypothesis</h4>
<p>An alternative hypothesis is a statement that is being tested against the null hypothesis is. Often presented as an H1 or Ha.</p>
<p>In A/B testing, an alternative hypothesis generally claims that a certain variation is performing significantly better than the control.</p>
<h4>P-value</h4>
<p>One of the most commonly misunderstood concepts of A/B testing and in statistics in general. Generally, people new to A/B testing tend to believe it describes the probability of a variation being a winner or a loser, compared to the control.</p>
<p>That, of course, is not true. P-value describes a probability of observing the observed (or greater) difference between the control and variation if you assume that your hypothesis is wrong and there should actually be no difference between the groups.</p>
<p>Another way to put this is that p-value describes the probability of seeing the observed difference randomly, say, in an A/A test.</p>
<p>P-value is one of the most important metrics in Frequentist statistics, therefore, it is not about detecting the probability of your null or alternative hypothesis of being true or false nor is it detecting the probability of your variation being better than the control. <strong>It is about rejecting or not rejecting the null hypothesis.</strong> Here&#8217;s how it goes:</p>
<ol>
<li>You come up with some <a href="https://www.probabilisticworld.com/intuitive-explanation-p-values/"><em>reasonable</em> threshold</a> for rejecting the null hypothesis. The notation used for this threshold is <strong>α</strong> (the Greek letter <em>alpha). </em>This threshold is a real number between 0 and 1 (usually very close to 0).</li>
<li>You<em> promise to yourself</em> <em>in advance</em> that you will reject the null hypothesis if the calculated p-value happens to be below α (and not reject it otherwise).</li>
</ol>
<p>In A/B testing, the most common threshold α is 0.05, although sites with more traffic that want to minimize the risk of falsely rejecting their null hypothesis often pick 0.01. And sites with little traffic that are looking for quick learnings might go with 0.1.</p>
<p>It is a good practice to wisely choose a suitable threshold and stick to it until there&#8217;s a strong enough reason to change it. That way you can determine how many of your null hypothesis were falsely rejected.</p>
<p>I recommend using a <a href="https://conversionxl.com/ab-test-calculator/">statistical significance calculator</a> to see how the chosen threshold affects your needed sample size.</p>
<p><a  href="http://reflectivedata.com/wp-content/uploads/2018/10/screenshot-reflectivedata.com-2018.10.25-21-20-08.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-medium wp-image-2893 aligncenter" src="http://reflectivedata.com/wp-content/uploads/2018/10/screenshot-reflectivedata.com-2018.10.25-21-20-08-700x680.png" alt="Statistical Significance Calculator" width="700" height="680" srcset="https://reflectivedata.com/wp-content/uploads/2018/10/screenshot-reflectivedata.com-2018.10.25-21-20-08-700x680.png 700w, https://reflectivedata.com/wp-content/uploads/2018/10/screenshot-reflectivedata.com-2018.10.25-21-20-08.png 703w" sizes="(max-width: 700px) 100vw, 700px" /></a></p>
<h4>Type I error</h4>
<p>False positive &#8211; Rejecting a true null hypothesis.</p>
<p>In A/B testing this would mean that you call your variation a winner when it actually is worse, equal or less good than your test showed.</p>
<p>So, the p-value, along with the prespecified α, directly controls the type I (false positive) error rate.</p>
<blockquote><p>Rejecting a null hypothesis (calling your variation a winner) is a result that triggers an action, most commonly ending in a change on your website (implementing your variation). Therefore, you must think wisely about what is the per cent of such false decisions that you can live with!</p></blockquote>
<h4>Type II error</h4>
<p>False negative &#8211; Not rejecting a false null hypothesis.</p>
<p>In A/B testing it usually describes a situation where your variation is a winner but your test shows it is not significantly better than the control.</p>
<h4>Statistical power</h4>
<p>Simply put, statistical power is the probability that you will reject a null hypothesis if it is false.</p>
<blockquote><p>The false negative rate will depend on these 3 factors:</p>
<ul>
<li>The size of the actual difference between the groups (which, by definition, is nonzero when the null hypothesis is false)</li>
<li>The variance of the data with which you’re testing the null hypothesis</li>
<li>The number of data points (your sample size)</li>
</ul>
<p>In the real world, you only have control over the last factor, so you see why controlling the type II error is much trickier.</p></blockquote>
<p>Source: <a href="https://www.probabilisticworld.com/intuitive-explanation-p-values/">An Intuitive Explanation Of P-Values</a></p>
<h4>Confidence intervals</h4>
<p>Confidence intervals are the frequentist way of doing parameter estimation. The technical details behind calculating and interpreting confidence intervals are beyond the scope of this post, but I’m going to give you the general overview.</p>
<p>Once you’ve calculated a confidence interval using 95% confidence level, it’s <span style="text-decoration: underline;">incorrect</span> to say that it covers the true mean with a probability of 95% (this is a common misinterpretation). You can only say in advance that, in the long-run, 95% of the confidence intervals you’ve generated by following the same procedure will cover the true mean.</p>
<p>In A/B testing, let&#8217;s say you&#8217;ve calculated a confidence interval using a 95% confidence level for the conversion rate of a given variation [i.e 4.5% &#8211; 5.8%]. This means that after implementing this variation, its conversion rate will between 4.5% and 5.8% with 95% confidence.</p>
<h4>Two-tailed test</h4>
<p>If you are using a significance level of 0.05, a two-tailed test allots half of your alpha to testing the statistical significance in one direction and half of your alpha to testing statistical significance in the other direction. This means that .025 is in each tail of the distribution of your test statistic. When using a two-tailed test, regardless of the direction of the relationship you hypothesize, you are testing for the possibility of the relationship in both directions. A two-tailed test will test both if the mean is significantly greater than x and if the mean significantly less than x. The mean is considered significantly different from x if the test statistic is in the top 2.5% or bottom 2.5% of its probability distribution, resulting in a p-value less than 0.05.</p>
<figure id="attachment_2942" aria-describedby="caption-attachment-2942" style="width: 455px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2018/11/pvalue1.gif" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="wp-image-2942 size-full" src="http://reflectivedata.com/wp-content/uploads/2018/11/pvalue1.gif" alt="Two Tailed Test" width="455" height="333" /></a><figcaption id="caption-attachment-2942" class="wp-caption-text"><a href="https://stats.idre.ucla.edu/other/mult-pkg/faq/general/faq-what-are-the-differences-between-one-tailed-and-two-tailed-tests/">Source</a></figcaption></figure>
<h4>One-tailed test</h4>
<p>If you are using a significance level of .05, a one-tailed test allots all of your alpha to testing the statistical significance in the one direction of interest. This means that .05 is in one tail of the distribution of your test statistic. When using a one-tailed test, you are testing for the possibility of the relationship in one direction and completely disregarding the possibility of a relationship in the other direction. A one-tailed test will test either if the mean is significantly greater than x OR if the mean is significantly less than x, but not both. Then, depending on the chosen tail, the mean is significantly greater than or less than x if the test statistic is in the top 5% of its probability distribution or bottom 5% of its probability distribution, resulting in a p-value less than 0.05. The one-tailed test provides more power to detect an effect in one direction by not testing the effect in the other direction.</p>
<figure id="attachment_2943" aria-describedby="caption-attachment-2943" style="width: 455px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2018/11/pvalue3.gif" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-2943" src="http://reflectivedata.com/wp-content/uploads/2018/11/pvalue3.gif" alt="One Tailed Test" width="455" height="333" /></a><figcaption id="caption-attachment-2943" class="wp-caption-text"><a href="https://stats.idre.ucla.edu/other/mult-pkg/faq/general/faq-what-are-the-differences-between-one-tailed-and-two-tailed-tests/">Source</a></figcaption></figure>
<p>Here&#8217;s a good conclusion of Frequentist A/B testing, provided by Michael Frasco</p>
<blockquote><p>In frequentist A/B testing, we use p-values to choose between two hypotheses: the null hypothesis — that there is no difference between variants A and B — and the alternative hypothesis — that variant B is different. A p-value measures the probability of observing a difference between the two variants at least as extreme as what we actually observed, given that there is no difference between the variants. Once the p-value achieves statistical significance or we’ve seen enough data, the experiment is over.</p></blockquote>
<p><a href="https://medium.com/convoy-tech/the-power-of-bayesian-a-b-testing-f859d2219d5">Source</a></p>
<h3>Bayesian approach</h3>
<p>Tools using Bayesian-type statistics</p>
<ul>
<li>Google Optimize</li>
<li>VWO</li>
<li>Adobe Target</li>
<li>AB Tasty</li>
<li>Dynamic Yield</li>
</ul>
<p>Although the picture was a lot different just a few years ago, Bayesian has quickly overtaken Frequentist in terms number of A/B testing tools using it as the main logic behind their stats engines.</p>
<p>There&#8217;s a good amount of shorter and longer articles describing why Bayesian is a better choice for those running A/B tests, for example, &#8220;<a href="http://The Power of Bayesian A/B Testing">The Power of Bayesian A/B Testing</a>&#8220;, they all seem to contain the following reasoning. And of course, Frequentists would argue on several of them.</p>
<ul>
<li>Bayesian gets reliable results faster (with a smaller sample)</li>
<li>Bayesian results are easier to understand for people without the background in statistics (Frequentist results are often misinterpreted)</li>
<li>Bayesian is better at detecting small changes (Frequentist favoring the null hypothesis).</li>
</ul>
<p>Chris Stucchio has written a comprehensive overview of Bayesian A/B testing and the following section is mostly based on his <a href="https://cdn2.hubspot.net/hubfs/310840/VWO_SmartStats_technical_whitepaper.pdf">white-paper</a>.</p>
<h4>Important variables of Bayesian testing:</h4>
<p><strong>α</strong> &#8211; underlying and unobserved true metric for variant A</p>
<p><strong>β</strong> &#8211; underlying and unobserved true metric for variant B</p>
<p>Therefore, If we choose variant A when α is less than β, our loss is β &#8211; α. If α is greater than β, we lose nothing. Our loss is the amount by which our metric decreases when we choose that variant.</p>
<p><strong>ε</strong> &#8211; the threshold of expected loss for one of the variants, under which we stop the experiment</p>
<blockquote><p>This stopping condition considers both the likelihood that β — α is greater than zero and also the magnitude of this difference. Consequently, it has two very important properties:</p>
<ol>
<li>It treats mistakes of different magnitudes differently. If we are uncertain about the values of α and β, there is a larger chance that we might make a big mistake. As a result, the expected loss would also be large.</li>
<li>Even when we are unsure which variant is larger, we can still stop the test as soon as we are certain that the difference between the variants is small. In this case, if we make a mistake (i.e., we choose β when β &lt; α), we can be confident that the magnitude of that mistake is very small (e.g. β = 10% and α = 10.1%). As a result, we can be confident that our decision will not lead to a large decrease in our metric.</li>
</ol>
</blockquote>
<p><a href="https://medium.com/convoy-tech/the-power-of-bayesian-a-b-testing-f859d2219d5"><em>Source</em></a></p>
<p><strong>Prior</strong> &#8211; one of the key differences between Frequentist and Bayesian is that the latter can take prior information into account. Hence, it doesn&#8217;t have to learn all the data points itself and can, therefore, reach the conclusions faster.</p>
<blockquote><p>For example, let’s say we use a Beta(1, 1) distribution as the prior for a Bernoulli distribution. After observing 40 successes and 60 failures, our posterior distribution is a Beta(41, 61)⁶. However, if we had started with a Beta(8, 12) distribution as our prior, we would only need to observe 32 successes and 48 failures in order to obtain the same distribution as before.</p></blockquote>
<p><a href="https://medium.com/convoy-tech/the-power-of-bayesian-a-b-testing-f859d2219d5"><em>Source</em></a></p>
<p>In general, it is suggested to choose priors that are a bit weaker than what the historical data suggest.</p>
<p>Most Bayesian-based A/B testing tools, like VWO, present their results using three key metrics</p>
<ul>
<li><strong>Relative improvement VS control</strong> &#8211; a range by which the observed metric for the variation is better or worse than the same metric for the control. The range is calculated for a 99% probability. The more data the test collects, the smaller this range gets.</li>
<li><strong>Absolute potential loss</strong> &#8211; the potential loss is the lift you can lose out on if you deploy A as the winner when B is actually better.</li>
<li><strong>Chance to beat control/all</strong> &#8211; probability of the variation being better than the control/all other variations.</li>
</ul>
<figure id="attachment_3123" aria-describedby="caption-attachment-3123" style="width: 890px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2018/12/vwo-results.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-3123" src="http://reflectivedata.com/wp-content/uploads/2018/12/vwo-results.png" alt="Example of VWO results" width="890" height="763" srcset="https://reflectivedata.com/wp-content/uploads/2018/12/vwo-results.png 890w, https://reflectivedata.com/wp-content/uploads/2018/12/vwo-results-700x600.png 700w, https://reflectivedata.com/wp-content/uploads/2018/12/vwo-results-768x658.png 768w" sizes="(max-width: 890px) 100vw, 890px" /></a><figcaption id="caption-attachment-3123" class="wp-caption-text">Example of VWO results</figcaption></figure>
<p>More on <a href="https://vwo.com/knowledge/how-vwo-calculates-a-winning-variation/">How VWO Calculates a Winning Variation</a></p>
<p>Just like with many Frequentist-based A/B testing tools, several Bayesan-based tools will let you choose some version of significance for the results your test is going to generate. In Frequentist, this is usually the p-value or confidence level, with Bayesian, you are likely to see some options to choose from. For example, this is what VWO gives you:</p>
<table>
<tbody>
<tr>
<td><b><i>Quick learning</i></b></p>
<p><i>For finding quick trends where tests don’t affect your revenue directly</i></td>
<td>You can choose this mode when testing non-revenue goals such as the bounce rate and time spent on a page or for quick headline tests. With this mode, you can reduce your testing time for non-critical tests when there isn’t a risk of hurting your revenue directly by deploying a false winner.</td>
</tr>
<tr>
<td><b><i>Balanced</i></b></p>
<p><i>Ideal for most tests.</i></td>
<td>As the name suggests, it is the best balance between the testing time and minimizing the potential loss.</td>
</tr>
<tr>
<td><b><i>High certainty</i></b></p>
<p><i>Best for revenue-critical tests when you want to absolutely minimize the potential loss. Usually takes the longest to conclude a test.</i></td>
<td>This is the default mode and can be used for almost all tests. Suppose you have an eCommerce website and you want to test changes to your checkout flow. You want to be as certain as possible to minimize the potential loss from deploying a false winner even if it takes a lot of time. This is the best mode for such critical tests which affect your revenue directly.</td>
</tr>
</tbody>
</table>
<p>I think VWO&#8217;s approach is better for people without a background in statistics &#8211; it&#8217;s quite easy to mistakenly choose too weak confidence level without realizing the consequences.</p>
<h2>Working with Revenue and Other Non-Binomial Metrics</h2>
<p>How you (or the machine) calculate the results for an A/B test depends heavily on whether you are testing a binomial or non-binomial metric.</p>
<p>Here are some common non-binomial metrics used in A/B testing:</p>
<ul>
<li>Average order value</li>
<li>Average revenue per user</li>
<li>Average sessions per user</li>
<li>Average session duration</li>
<li>Average pages per session</li>
</ul>
<p>The key difference between binomial and non-binomial metrics is that former can have only two possible values: conversion or no conversion, true or false etc. Non-binomial metrics, on the other hand, have a range of possible values, i.e from zero to infinity when measuring revenue.</p>
<p>This is a big difference, and without going into too much detail, it is quite clear that you cannot use the same algorithms for calculating the results for both. Mainly because of the lack of normal distribution for non-binomial metrics.</p>
<p>Further reading on whether or not you can use the same types of tests for both types of metrics:</p>
<ul>
<li><a href="http://blog.analytics-toolkit.com/2017/statistical-significance-non-binomial-metrics-revenue-time-site-pages-session-aov-rpu/">Testing Differences in Revenue? You’re Probably Not Using the Correct Statistics</a></li>
<li><a href="https://heapanalytics.com/blog/data-stories/your-average-revenue-per-customer-is-meaningless">Your Average Revenue Per Customer is Meaningless</a></li>
</ul>
<p>One of the most commonly used tests for testing non-binomial metrics is a <a href="https://en.wikipedia.org/wiki/Mann%E2%80%93Whitney_U_test">Mann-Whitney-Wilcoxon rank-sum test</a>. Unlike the t-test, it does not require the assumption of normal distributions.</p>
<blockquote><p>BTW, if you have some experience with Python, setting one up for yourself is not too difficult. <a href="https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.mannwhitneyu.html">Here&#8217;s what you&#8217;ll need</a>.</p></blockquote>
<p>Another option is to use the following process suggested by Georgi Georgiev in his <a href="http://blog.analytics-toolkit.com/2017/statistical-significance-non-binomial-metrics-revenue-time-site-pages-session-aov-rpu/">blog post</a>.</p>
<ul>
<li>Extract user-level data (orders, revenue) or session-level data (session duration, pages per session) or order-level data (revenue, number of items) for the control and the variant</li>
<li>Calculate the sample standard deviation of each</li>
<li>Calculate the pooled standard error of the mean</li>
<li>Use the SEM in any significance calculator / software that supports the specification of SEM in calculations</li>
</ul>
<p>The key difference from binomial metrics is that no matter which method you choose, you will be working with user/session/order-level data, that is, you must feed the algorithm all the rows instead of totals.</p>
<hr />
<p>Statistics plays a huge role in A/B testing and it is absolutely a must to know at least the basics of Frequentists, Bayesian and non-binomial metrics. That way you can choose the right tools and, hopefully, learn to know them (and stats they use) in depth.</p>
<p>I hope this post gave you a good starting point and hopefully you learned something new.</p>
<p>Did we miss something important? Suggestions are welcome in the comments below &#8211; so are the questions.</p>
<p>The post <a href="https://reflectivedata.com/comprehensive-guide-to-statistics-in-a-b-testing/">Comprehensive Guide to Statistics in A/B Testing</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://reflectivedata.com/comprehensive-guide-to-statistics-in-a-b-testing/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
		<item>
		<title>What Is FOOC and How to Get Rid of It?</title>
		<link>https://reflectivedata.com/what-is-fooc-flicker-how-to-get-rid-of-it/</link>
					<comments>https://reflectivedata.com/what-is-fooc-flicker-how-to-get-rid-of-it/#comments</comments>
		
		<dc:creator><![CDATA[Silver Ringvee]]></dc:creator>
		<pubDate>Mon, 28 Aug 2017 21:01:04 +0000</pubDate>
				<category><![CDATA[A/B testing]]></category>
		<category><![CDATA[Technical]]></category>
		<guid isPermaLink="false">http://reflectivedata.com/?p=1501</guid>

					<description><![CDATA[<p>FOOC or Flash of Original Content is a situation in Javascript based A/B testing where the experiment is causing an element on the page to flicker when changing from original to the variation.</p>
<p>It has been a known problem for as long as front-end A/B testing solutions have been around. In this article, we take a look at why you should care and if it’s somehow possible to solve it.</p>
<p>The post <a href="https://reflectivedata.com/what-is-fooc-flicker-how-to-get-rid-of-it/">What Is FOOC and How to Get Rid of It?</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>FOOC</strong> or Flash of Original Content is a situation in Javascript based A/B testing where the experiment is causing an element on the page to flicker when changing from original to the variation.</p>
<p>It has been a known problem for as long as front-end A/B testing solutions have been around. In this article, we take a look at why you should care and if it&#8217;s somehow possible to solve it.</p>
<figure id="attachment_1500" aria-describedby="caption-attachment-1500" style="width: 1452px" class="wp-caption alignnone"><a  href="http://reflectivedata.com/wp-content/uploads/2017/08/recording.gif" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="wp-image-1500 size-full" src="http://reflectivedata.com/wp-content/uploads/2017/08/recording.gif" alt="FOOC in A/B Testing" width="1452" height="879" /></a><figcaption id="caption-attachment-1500" class="wp-caption-text">FOOC in A/B Testing</figcaption></figure>
<p>In the example above, you can see the FOOC effect of a very simple A/B test that is changing the hero copy of the services page.</p>
<h2>Why FOOC is a problem?</h2>
<p>First of all, it is annoying for the visitors. No one likes when the look of the website is flickering too much while the page loads.</p>
<p>Second, and the most important reason is that it could easily skew the results of your A/B tests (and not in your favor).</p>
<blockquote><p><strong>Imagine this:</strong> <em>You run a nice experiment on the checkout page of your website. Users actually like the change itself and would be willing to buy more but as there&#8217;s some flicker going on, they are not sure if that page is secure &#8211; flicker is often thought to be related to some suspicious activities such as stealing users credit card information.</em></p></blockquote>
<p>And just like this, your test may loose just because of the flicker, even though the change itself would&#8217;ve worked!</p>
<p>By default, all of the most popular A/B testing tools have some sort of FOOC when they apply the changes on your website. Fortunately, there are some workarounds that could make the effect less noticeable. Let&#8217;s take a closer look at some of them!</p>
<h2>How to get rid of FOOC?</h2>
<p>If your A/B testing runs entirely on the client-side of the web, there will always we some downsides performance-wise. It could be the FOOC effect, slower load times, or both. Luckily, there are still some ways you can reduce the possible negative causes of A/B testing.</p>
<h3>Install you A/B testing tool as recommended</h3>
<p>Take a look at the guide for installing the A/B testing tool you are using. The most common recommendations are:</p>
<ul>
<li>Have the snippet as high in the <code>&lt;head&gt;</code> tag as possible</li>
<li>Put it straight in the code, don&#8217;t use <a href="http://reflectivedata.com/dictionary/tag-manager/">tag managers</a></li>
<li>When using a tag manager, switch it from async to sync mode</li>
</ul>
<h3>Hide content before the changes have been applied</h3>
<p>Many A/B testing tools have this feature built in. Some of them hide the entire page, some of them only the content. Contact your tool provider details.</p>
<p>When trying to achieve something similar on your own, here&#8217;s what to keep in mind:</p>
<ul>
<li>Hide the element as soon as possible (before the variation code runs)</li>
<li>Have a fallback of ~2 seconds to show the content if something goes wrong</li>
<li>Show the content immediately when the changes are done</li>
</ul>
<h3>Follow the general front-end development best practices</h3>
<p>As Javascript based A/B testing is in many ways similar to front-end web development, we recommend knowing the at least the basics before starting your next experiment. If not, ask an expert to help you!</p>
<p>Some of the practices to get you started:</p>
<ul>
<li>When possible, use CSS over jQuery</li>
<li>Cache your DOM elements in JS variables</li>
<li>Prefer vanilla JS whenever possible</li>
<li>Write your code in the order of DOM</li>
</ul>
<h3>Consider back-end A/B testing solutions</h3>
<p>If you want to take the absolute maximum from your testing program, take a look at some of the server-side A/B testing tools.</p>
<p>These days, most of the popular A/B testing tools that are best known for their JS based solutions also offer a server-side version.</p>
<p>There&#8217;s also a popular open-source A/B testing tool called <a href="https://github.com/intuit/wasabi">Wasabi</a>, although setting it up requires a rather experienced developer.</p>
<h2>Conclusion</h2>
<p>FOOC and other loading-time-related issues will not leave Javascript-based A/B testing anytime soon. There are ways to lower the chance of letting it skew your results but to be 100% sure you should consider moving to one of the server-side A/B testing solutions.</p>
<p>Nevertheless, if you are able to reduce the flicker of your Javascript-based solution using the tips listed above, you shouldn&#8217;t be too worried. Just keep in mind that noticable FOOC might lower the performance of your variation and the results might be even better when the change is finally implemented.</p>
<p>The post <a href="https://reflectivedata.com/what-is-fooc-flicker-how-to-get-rid-of-it/">What Is FOOC and How to Get Rid of It?</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://reflectivedata.com/what-is-fooc-flicker-how-to-get-rid-of-it/feed/</wfw:commentRss>
			<slash:comments>35</slash:comments>
		
		
			</item>
		<item>
		<title>Must Know Tips For Optimizely Preview Links</title>
		<link>https://reflectivedata.com/must-know-tips-optimizely-preview-links/</link>
					<comments>https://reflectivedata.com/must-know-tips-optimizely-preview-links/#comments</comments>
		
		<dc:creator><![CDATA[Silver Ringvee]]></dc:creator>
		<pubDate>Thu, 20 Jul 2017 09:36:01 +0000</pubDate>
				<category><![CDATA[A/B testing]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Tools]]></category>
		<guid isPermaLink="false">http://reflectivedata.com/?p=1165</guid>

					<description><![CDATA[<p>If you run A/B tests using Optimizely, you have probably worked with its preview links. There's a good chance that you never really thought about the individual parameters in these links, is this the case with you?</p>
<p>In this article I am going to share some of the best tips for Optimizely preview links that are going to make your work easier and save you a good amount of time.</p>
<p>The post <a href="https://reflectivedata.com/must-know-tips-optimizely-preview-links/">Must Know Tips For Optimizely Preview Links</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>If you run A/B tests using Optimizely, you have probably worked with its preview links. There&#8217;s a good chance that you never really thought about the individual parameters in these links, is this the case with you?</p>
<p>In this article I am going to share some of the best tips for Optimizely preview links that are going to make your work easier and save you a good amount of time.</p>
<p><em>While this article focuses on Optimizely, most of the tips can be transformed for other tools, too. For example, VWO&#8217;s links are quite similar.</em></p>
<h2>Why bother?</h2>
<p>You might think that they are just preview links, just see your preview and share it with others if needed.</p>
<p>True, you don&#8217;t need these tips to make your work possible, you want them because they can make it smoother and faster!</p>
<p>If you run a lot of A/B tests, you probably also work with a lot of preview URL-s. You open them on multiple devices and share with your team/clients.</p>
<h2>Preview link components</h2>
<p>Let&#8217;s take a closer look at Optimizely preview links.</p>
<p>Here&#8217;s what a normal preview link looks like:</p>
<p><code class="multiline">https://www.optimizelypreview.com/http://reflectivedata.com/services/?optimizely_snippet=s3-197524926&amp;optimizely_show_preview=true&amp;optimizely_token=14010adhfte6ce482443b5845875ff0bdd8675b48f57c22b298567af8e18bc5d&amp;optimizely_x8490154875=1</code></p>
<p>We can divide this link into 6 separate components:</p>
<ul>
<li>Optimizely prefix</li>
<li>Your actual URL</li>
<li>Optimizely snippet ID</li>
<li>Show preview boolean</li>
<li>Optimizely token</li>
<li>Experiment ID and variation number</li>
</ul>
<p>Now, let&#8217;s see what you need to know about each of these components.</p>
<h3>Optimizely prefix</h3>
<p><code>https://www.optimizelypreview.com/</code></p>
<p>This component is not always present, but it is needed for seeing a preview on pages that don&#8217;t have an Optimizely snippet installed yet.</p>
<p>It can happen that you have the snippet installed but Optimizely still adds it to your preview links, if that&#8217;s the case, just go ahead and remove it!</p>
<p>When the traffic is directed through https://www.optimizelypreview.com/ it can make some functions of your website broken. It is most likely the case with forms and some Javascript functions.</p>
<p>If your page has Optimizely snippet installed, it is best to remove this component from your Optimizely preview links.</p>
<h3>Your actual URL</h3>
<p><code>http://reflectivedata.com/services/</code></p>
<p>This component determines what page you will see in your preview.</p>
<p>What many users don&#8217;t know is that you can actually change it.</p>
<p>For example, you have an experiment that runs on more than one page and you&#8217;d like to see how it looks like on other pages. Just go ahead and change this part of the link and you are good to go (as long as this page has Optimizely snippet installed).</p>
<h3>Optimizely snippet ID</h3>
<p><code>?optimizely_snippet=s3-197524926</code></p>
<p>In most cases just ignore this component, there&#8217;s no need to change it.</p>
<p>One thing to check when having issues with preview mode is that the snippet with the same ID has to be present in your website&#8217;s source code!</p>
<p>In this case, the snippet has to be <code>&lt;script src="//optimizely.s3.amazonaws.com/js/197524926.js"&gt;&lt;/script&gt;</code></p>
<h3>Show preview boolean</h3>
<p><code>&amp;optimizely_show_preview=true</code></p>
<p>If this component is set to <code>true</code> (default) your pages will load with Optimizely preview overlay which covers a big part of your web page, sometimes even breaks it. Especially on mobile devices.</p>
<p>Here&#8217;s what a preview overlay looks like on mobile:</p>
<figure id="attachment_1175" aria-describedby="caption-attachment-1175" style="width: 430px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/07/Screenshot-from-2017-07-20-12-03-57.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1175" src="http://reflectivedata.com/wp-content/uploads/2017/07/Screenshot-from-2017-07-20-12-03-57.png" alt="Optimizely Preview Links on Mobile" width="430" height="750" srcset="https://reflectivedata.com/wp-content/uploads/2017/07/Screenshot-from-2017-07-20-12-03-57.png 430w, https://reflectivedata.com/wp-content/uploads/2017/07/Screenshot-from-2017-07-20-12-03-57-401x700.png 401w" sizes="(max-width: 430px) 100vw, 430px" /></a><figcaption id="caption-attachment-1175" class="wp-caption-text">Optimizely Preview Links on Mobile</figcaption></figure>
<p>The best practice here is: if you don&#8217;t absolutely need the preview overlay, disable it like this: <code>&amp;optimizely_show_preview=false</code></p>
<h3>Optimizely token</h3>
<p><code class="multiline">&amp;optimizely_token=14010adhfte6ce482443b5845875ff0bdd8675b48f57c22b298567af8e18bc5d</code></p>
<p>Nothing interesting to know about this component. Just don&#8217;t change it.</p>
<h3>Experiment ID and variation number</h3>
<p><code>&amp;optimizely_x8490154875=1</code></p>
<p>This component of the Optimzile preview links determines which experiment and variation you are going to see.</p>
<p>This is extra useful if your experiment has more than one variation, just change the last number to see a specific variation. If you wish, you can also change the experiment ID.</p>
<h2>Conclusion</h2>
<p>Try using these tips in your everyday work and, believe me, you are going to save some time very soon.</p>
<p>When sending a link to a colleague or client just use<code class="multiline">&amp;optimizely_x8490154875=1</code>as they (usually) don&#8217;t want to see the preview overlay. Same goes for testing on mobile devices.</p>
<p>If your experiment has more than variation just change the last number in <code>&amp;optimizely_x8490154875=1</code> and quickly switch between variations.</p>
<p>In case your preview looks broken or doesn&#8217;t work at all go see if the snippet ID matches the one in the link or try removing the <code>https://www.optimizelypreview.com/</code> component.</p>
<p>If you have any more useful tips related to Optimizely preview links, let us know in the comments so we could update this post.</p>
<p>The post <a href="https://reflectivedata.com/must-know-tips-optimizely-preview-links/">Must Know Tips For Optimizely Preview Links</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://reflectivedata.com/must-know-tips-optimizely-preview-links/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Getting Started With A/B Testing</title>
		<link>https://reflectivedata.com/getting-started-ab-testing/</link>
					<comments>https://reflectivedata.com/getting-started-ab-testing/#comments</comments>
		
		<dc:creator><![CDATA[Silver Ringvee]]></dc:creator>
		<pubDate>Wed, 28 Jun 2017 09:17:48 +0000</pubDate>
				<category><![CDATA[A/B testing]]></category>
		<category><![CDATA[Technical]]></category>
		<guid isPermaLink="false">http://reflectivedata.com/?p=1070</guid>

					<description><![CDATA[<p>At Reflective Data, we believe that A/B testing is one of the best uses for all the data you gather in your digital analytics system. Of course, there are unlimited other uses like spotting when something is broken or calculating the ROI for your latest campaign but these are mostly just acknowledging what has happened. A/B testing is (should be) taking an action based on that data.</p>
<p>In this article, we are going to give you a comprehensive overview of how to get started with A/B testing, including the prerequisites, tools, and methodologies. We are even going to give you some test ideas to get you started! In case you are already running A/B tests, I'd still suggest you take a look how others (we) approach the problems involved.</p>
<p>The post <a href="https://reflectivedata.com/getting-started-ab-testing/">Getting Started With A/B Testing</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>At Reflective Data, we believe that A/B testing is one of the best uses for all the data you gather in your digital analytics system. Of course, there are unlimited other uses like spotting when something is broken or calculating the ROI for your latest campaign but these are mostly just acknowledging what has happened. A/B testing is (should be) taking real actions based on real data.</p>
<p>In this article, we are going to give you a comprehensive overview of how to get started with A/B testing, including the prerequisites, tools, and methodologies. We are even going to give you some test ideas to get you started! In case you are already running A/B tests, I&#8217;d still suggest you take a look how others (we) approach the problems involved.</p>
<h2>How A/B testing works</h2>
<p>A/B testing or split testing is a method of comparing two versions of a webpage against each other to determine which one performs better. Yes, it&#8217;s that simple. Or is it?</p>
<p>AB testing is essentially an experiment where two (or more) variants of a page are shown to users at random, and statistical analysis is used to determine which variation performs better for a specific conversion goal. In e-commerce, the most common goals are the number of purchases and of course, the revenue. Although, you could also measure the micro-conversions or whatever KPI is relevant to your business.</p>
<figure id="attachment_1075" aria-describedby="caption-attachment-1075" style="width: 826px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/06/ab-testing.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1075" src="http://reflectivedata.com/wp-content/uploads/2017/06/ab-testing.png" alt="" width="826" height="487" srcset="https://reflectivedata.com/wp-content/uploads/2017/06/ab-testing.png 826w, https://reflectivedata.com/wp-content/uploads/2017/06/ab-testing-700x413.png 700w, https://reflectivedata.com/wp-content/uploads/2017/06/ab-testing-768x453.png 768w" sizes="(max-width: 826px) 100vw, 826px" /></a><figcaption id="caption-attachment-1075" class="wp-caption-text">Source: optimizely.com</figcaption></figure>
<p>The main goal is to take guessing out of your website optimization process, and eventually, from your business decisions. It is much wiser to take actions based on real evidence, statistically significant test results in this case.</p>
<p>To put it very simply, the process of A/B testing is as follows:</p>
<h3>Analyzing information you have</h3>
<p>First, you have to know the website you are working with. The main KPI-s, the funnel, the audience etc.</p>
<p>Next step is taking a look at the analytics in order to spot any trends, issues or other useful insights that you could use for coming with the ideas (hypotheses) for the experiments.</p>
<p>If you don&#8217;t have enough data or you have squeezed everything out of it, get more data. Take a look at tools like <a href="http://reflectivedata.com/features/" target="_blank" rel="noopener">Reflective Data Platform</a> that will give access to features like Form Analytics, Heatmaps and On-Site Polls.</p>
<h3>Coming up with the hypotheses</h3>
<p>In this step, the main goal is to figure out what should be tested. We do that based on the information gathered in the previous step.</p>
<p>The more hypothesis the better, but keep in mind that they should be backed up by real data.</p>
<p>A hypothesis should be formulated similarly to this example: People don&#8217;t click the main call to action (CTA) because it&#8217;s too low on the page. Moving it above the fold would raise the CTR.</p>
<h3>Putting hypotheses into practice</h3>
<p>You have a hypothesis, now it&#8217;s time to bring it to life. The first step here is usually to draw a wireframe of the solution. In our example, it would show where the CTA would be in the variation.</p>
<p>If it&#8217;s a more complicated test, a design file might be needed.</p>
<p>When you have figured out exactly how your experiment is going to look like, it is time to build the actual test, using an A/B testing tool such as <a href="https://www.google.ee/url?sa=t&amp;rct=j&amp;q=&amp;esrc=s&amp;source=web&amp;cd=1&amp;cad=rja&amp;uact=8&amp;ved=0ahUKEwjwwMr00eDUAhVEEJoKHYbSCn8QFggmMAA&amp;url=https%3A%2F%2Fwww.google.com%2Fanalytics%2Foptimize%2F&amp;usg=AFQjCNH8XFA0rIA2E5nTzXTHEBOvLwSl4w" target="_blank" rel="noopener">Google Optimize</a>. Once the setup is done, it is important to make sure it looks as it should on every device and browser that is being targeted. For that, most tools have a preview mode.</p>
<p>If all the bugs are fixed, it&#8217;s time to launch the test to the public!</p>
<h3>Analyze &amp; document the results, then repeat the process</h3>
<p>Here is a nice visualization of a single A/B test and how it directly affects the revenue.</p>
<figure id="attachment_1083" aria-describedby="caption-attachment-1083" style="width: 688px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-10-53-39.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1083" src="http://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-10-53-39.png" alt="AB testing" width="688" height="433" /></a><figcaption id="caption-attachment-1083" class="wp-caption-text">Source: optimizely.com</figcaption></figure>
<p>Once the test has reached the statistical significance, it can be stopped and the process of making conclusions may begin.</p>
<div class="bs-callout bs-callout-primary"><h4>Don't rush!</h4>
<p>It is a common mistake to stop a test too early because it was losing, or even worse, winning big!</p>
<p>Never make a decision based on data that is not close to statistical significance.</p>
</div>
<p>It is also important to document the hypotheses, experiments, and their results. That gives us an opportunity to evaluate the entire testing program and make it more effective over time.</p>
<p>If the test is a winner, meaning that the main KPI is up in the variation, I would suggest considering implementing the change.</p>
<p>If it was a loser, try to find out why your hypothesis didn&#8217;t work, maybe find a better form of execution and run it again.</p>
<p>In every experiment, there should be a learning point and every upcoming test a bit better than the previous ones.</p>
<figure id="attachment_1080" aria-describedby="caption-attachment-1080" style="width: 1134px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-28-16-46-11.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1080" src="http://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-28-16-46-11.png" alt="Example of A/B test results in Google Optimize" width="1134" height="363" srcset="https://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-28-16-46-11.png 1134w, https://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-28-16-46-11-700x224.png 700w, https://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-28-16-46-11-768x246.png 768w, https://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-28-16-46-11-1024x328.png 1024w" sizes="(max-width: 1134px) 100vw, 1134px" /></a><figcaption id="caption-attachment-1080" class="wp-caption-text">Example of A/B test results in Google Optimize</figcaption></figure>
<h2>Are you and your website ready for A/B testing?</h2>
<p>While I believe that A/B testing is the best way of turning analytics data into real-life decisions, unfortunately not all websites are in the phase where they could actually run meaningful experiments.</p>
<h3>Website requirements</h3>
<p>In A/B testing, a winner is determined by statistical models. Some of the most popular ones in use today are Bayesian and Frequentist, while different in many ways, they both have something in common &#8211; the sample size.</p>
<p>Sample size means the number of visitors that are part of your experiment, in an A/B test that sample would be equally split between original and the variation. You could lower the sample size by running experiments that have a bigger effect (but how could you be sure) or getting satisfied with lower confidence rates (not a good idea).</p>
<p>Take a look at <a href="https://abtestguide.com/abtestsize/" target="_blank" rel="noopener">this calculator</a> to make sure if your website can conclude an A/B test in a reasonable timeframe (less than 8 weeks).</p>
<p>There is <a href="https://www.optimizely.com/sample-size-calculator/" target="_blank" rel="noopener">one more calculator</a> available by Optimizely.</p>
<figure id="attachment_1090" aria-describedby="caption-attachment-1090" style="width: 886px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-13-52-32.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1090" src="http://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-13-52-32.png" alt="A/B test sample size calculator" width="886" height="547" srcset="https://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-13-52-32.png 886w, https://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-13-52-32-700x432.png 700w, https://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-13-52-32-768x474.png 768w" sizes="(max-width: 886px) 100vw, 886px" /></a><figcaption id="caption-attachment-1090" class="wp-caption-text">A/B test sample size calculator</figcaption></figure>
<h3>Skillset requirements</h3>
<p>While getting started is not too difficult, there is a good set of skills you need to achieve before you become a really good tester that will bring a real value to whichever business they are working with.</p>
<p>If your website has enough traffic (see the calculators above), take a look at the skills you should consider learning. And if your website is not eligible yet, work on both &#8211; getting the traffic and learn the skills, so you would be ready once the site is.</p>
<p><em>PS! These skills could be all in one person, in a team or even outsourced.</em></p>
<h4>Analytical skills</h4>
<p>In order to drive actionable insights from your data, you would have to know the tool that you are going to use. In most cases that tool will be Google Analytics.</p>
<p>Being able to pull out all sorts of reports is not enough, you need to know what it all means. Try looking for trends, segments that have extremely high or low performance numbers, and figure out what are the points in your funnel that seem to cause the most friction so that many visitors drop there.</p>
<p>Besides building custom reports, you will also need customized dashboards, ones that are the most relevant to your business.</p>
<p>Here&#8217;s a screenshot of a general performance dashboard for one of our test pages.</p>
<figure id="attachment_1091" aria-describedby="caption-attachment-1091" style="width: 1606px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-14-06-41.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1091" src="http://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-14-06-41.png" alt="Test page dashboard" width="1606" height="770" srcset="https://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-14-06-41.png 1606w, https://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-14-06-41-700x336.png 700w, https://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-14-06-41-768x368.png 768w, https://reflectivedata.com/wp-content/uploads/2017/06/Screenshot-from-2017-06-29-14-06-41-1024x491.png 1024w" sizes="(max-width: 1606px) 100vw, 1606px" /></a><figcaption id="caption-attachment-1091" class="wp-caption-text">Test page dashboard</figcaption></figure>
<h4>Design skills</h4>
<p>Quite often aA/B test is much more than just a simple copy, image or color change. To pull these changes off, there has to be a proper design.</p>
<p>Many teams already have a designer, if yours does, ask him/her to help you. If you don&#8217;t have a designer to help you, you are going to have to outsource or try your best.</p>
<h4>Coding skills</h4>
<p>To set an experiment live there is almost always some coding involved. Yes, most tools come with a visual editor feature, but that is only good for most basic changes.</p>
<p>Coding skills required for setting up an A/B test are pretty similar to those needed from a front-end web developer. Keywords are Javascript, jQuery, HTML and CSS.</p>
<p>If you can&#8217;t code and don&#8217;t know someone who could, play around with the visual editor and start learning now! Or hire someone that can.</p>
<figure id="attachment_1008" aria-describedby="caption-attachment-1008" style="width: 1905px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1008" src="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54.png" alt="Google Optimize Visual Editor" width="1905" height="968" srcset="https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54.png 1905w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54-700x356.png 700w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54-768x390.png 768w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54-1024x520.png 1024w" sizes="(max-width: 1905px) 100vw, 1905px" /></a><figcaption id="caption-attachment-1008" class="wp-caption-text">Google Optimize Visual Editor</figcaption></figure>
<h4>Presenting and documenting skills</h4>
<p>If you work in a company then most probably you will have to report your experiments and results to your team. Good presenting skills come in extra handy here. You are going to have some winning tests, some neutral tests and probably a good amount of losing tests. You have to communicate that there&#8217;s value in each and every one of those tests.</p>
<p>Documenting is a very important part of every A/B testing program. Even if you run a single test every month it will be extremely hard to remember all the important details a year after. There are good tools created specifically for that purpose but for beginners, an Excel document is just fine.</p>
<h2>How to the right tool?</h2>
<p>The market for A/B testing tools has become much wider in the past years. That means that everyone has to work hard to make theirs the best one but it also means that for a beginner it can be rather difficult to make a right pick.</p>
<p>And picking the right tool is important because just like with most software, switching them later is a pain in the ass.</p>
<h3>Google Optimize (free version)</h3>
<p>It is free. That means that if you&#8217;re new to A/B testing and you are just figuring out if it fits your business needs etc. then there is almost no risk involved.</p>
<p>The number one problem with Google Optimize is that the free version is limited to three simultaneous experiments. That means you can&#8217;t run more than three tests at a time, of course, more can be in draft or ended.</p>
<p>Here&#8217;s a <a href="http://reflectivedata.com/getting-started-with-google-optimize">full guide</a> that will help you get started with Google Optimize.</p>
<p>And this is what it feels like to <a href="http://reflectivedata.com/using-google-optimize-3-months/">use Google Optimize for three moths</a>.</p>
<p>Click <a href="https://www.google.ee/url?sa=t&amp;rct=j&amp;q=&amp;esrc=s&amp;source=web&amp;cd=1&amp;cad=rja&amp;uact=8&amp;ved=0ahUKEwiuzJLn_-LUAhVFJpoKHT5pAooQFggmMAA&amp;url=https%3A%2F%2Fwww.google.com%2Fanalytics%2Foptimize%2F&amp;usg=AFQjCNH8XFA0rIA2E5nTzXTHEBOvLwSl4w" target="_blank" rel="noopener">here to sign up</a> and create your first experiment today, for free!</p>
<figure id="attachment_985" aria-describedby="caption-attachment-985" style="width: 1074px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/05/google_optimize_1.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-985" src="http://reflectivedata.com/wp-content/uploads/2017/05/google_optimize_1.png" alt="Google Optimize" width="1074" height="293" srcset="https://reflectivedata.com/wp-content/uploads/2017/05/google_optimize_1.png 1074w, https://reflectivedata.com/wp-content/uploads/2017/05/google_optimize_1-700x191.png 700w, https://reflectivedata.com/wp-content/uploads/2017/05/google_optimize_1-768x210.png 768w, https://reflectivedata.com/wp-content/uploads/2017/05/google_optimize_1-1024x279.png 1024w" sizes="(max-width: 1074px) 100vw, 1074px" /></a><figcaption id="caption-attachment-985" class="wp-caption-text">Google Optimize</figcaption></figure>
<h3>Optimizely</h3>
<p>Optimizely is a great tool, it has been in the business since 2010. It was founded by Dan Siroker, a former Director of Analytics for the Obama campaign.</p>
<p>Optimizely has been my personal favorite tool for years, their approach is right in so many ways. It is logical, easy to use and the most developer-friendly tool out there.</p>
<p>Here&#8217;s a list of things I like about Optimizely</p>
<ul>
<li><strong>Easy to install</strong>, add a snippet and voilà.</li>
<li><strong>Developer friendly</strong>, everyone who is using code instead visual editor will like it.</li>
</ul>
<p>Some of the issues I&#8217;ve seen people have are:</p>
<ul>
<li><strong>It is expensive</strong>, for a smaller company I&#8217;d suggest starting with something free and once you are sure that A/B testing is for you, move on to more advanced tools.</li>
<li><strong>Somewhat slow support</strong>, I believe it&#8217;s faster for enterprise clients but for medium-sized companies it can be frustrating.</li>
</ul>
<p>Learn more on their <a href="https://www.optimizely.com/" target="_blank" rel="noopener">Website</a>.</p>
<h3>VWO</h3>
<p>Visual Website Optimizer, another very popular A/B testing platform that is being used by thousands of companies across the world.</p>
<p>In many ways, VWO is similar to Optimizely but it also has some user behavior analysis features built-in &#8211; heatmaps, surveys and website reviews.</p>
<p>I used to like Optimizely a lot more but in a past year I find the two being almost equal when it comes to general A/B testing related features.</p>
<p>Things I like about VWO</p>
<ul>
<li><strong>Nice interface</strong>, it is very pleasant to use. Everything is where you&#8217;d expect it to be.</li>
<li><strong>Very good support</strong>, their support team is top notch!</li>
</ul>
<p>Reasons I would consider not getting VWO as my main testing tool.</p>
<ul>
<li><strong>Expensive</strong>, for starters I&#8217;d suggest a free tool such as Google Optimize.</li>
</ul>
<p>Take a look at their <a href="https://vwo.com" target="_blank" rel="noopener">website</a>.</p>
<h3>Wasabi (open source)</h3>
<p>Wasabi is an open-source A/B testing platform for large companies and seasoned developers.</p>
<p>There are two cases where I&#8217;d suggest Wasabi:</p>
<ul>
<li><strong>Full control</strong>, if your company can&#8217;t afford to have their data in someone else&#8217;s servers.</li>
<li><strong>If you love coding</strong>, if you&#8217;re a developer that likes challenges, try getting Wasabi up and running <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /></li>
</ul>
<p>Read more and get started on their <a href="https://github.com/intuit/wasabi" target="_blank" rel="noopener">Github</a>.</p>
<figure id="attachment_1096" aria-describedby="caption-attachment-1096" style="width: 979px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/06/68747470733a2f2f696e747569742e6769746875622e696f2f7761736162692f76312f67756964652f696d616765732f726561646d652f4372656174654275636b65742e706e67.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1096" src="http://reflectivedata.com/wp-content/uploads/2017/06/68747470733a2f2f696e747569742e6769746875622e696f2f7761736162692f76312f67756964652f696d616765732f726561646d652f4372656174654275636b65742e706e67.png" alt="Wasabi UI" width="979" height="635" srcset="https://reflectivedata.com/wp-content/uploads/2017/06/68747470733a2f2f696e747569742e6769746875622e696f2f7761736162692f76312f67756964652f696d616765732f726561646d652f4372656174654275636b65742e706e67.png 979w, https://reflectivedata.com/wp-content/uploads/2017/06/68747470733a2f2f696e747569742e6769746875622e696f2f7761736162692f76312f67756964652f696d616765732f726561646d652f4372656174654275636b65742e706e67-700x454.png 700w, https://reflectivedata.com/wp-content/uploads/2017/06/68747470733a2f2f696e747569742e6769746875622e696f2f7761736162692f76312f67756964652f696d616765732f726561646d652f4372656174654275636b65742e706e67-768x498.png 768w" sizes="(max-width: 979px) 100vw, 979px" /></a><figcaption id="caption-attachment-1096" class="wp-caption-text">Wasabi UI</figcaption></figure>
<h3>DIY</h3>
<p>The logic of basic A/B testing is not a rocket science. If your developer has free time or if you want a tool that is tailored to your business, build your own tool!</p>
<p>You could build it on the front-end or on the server side, all of the results should go directly to the analytics platform of your choice. A good combo would be Google Tag Manager and Google Analytics.</p>
<p>Take a look at <a href="https://abtestguide.com/gtmtesting/" target="_blank" rel="noopener">GTM Testing</a> and take it from there.</p>
<h3>Sentient Ascend</h3>
<p>If regular A/B testing is not enough, take a look at Sentient Ascend. It leverages the power of AI and evolutionary algorithms to detect a winner out of thousands of combinations.</p>
<p>If this sounds interesting, take a look at our <a href="http://reflectivedata.com/boost-cro-process-ai-sentient-ascend">comprehensive overview</a>.</p>
<h2>Coming up with new test ideas</h2>
<p>First of all, test ideas should be backed up by real data. One of the best sources for insights is your analytics platform, Google Analytics for most websites.</p>
<h3>Analytics</h3>
<p>If you haven&#8217;t looked at your data lately, there is a good chance that you will find something that is broken. No need to A/B test that, just fix it ASAP. You will probably also find a good amount of things that are so-so, these you should test!</p>
<p>Example: You see that a lot of people drop in the last step of your checkout, the part where they have to insert their credit card info. Now, you have to think of the reasons why that could be. Maybe that area is not trustworthy enough? Test adding trust badges next to CC fields!</p>
<h3>Real users</h3>
<p>Take a look at your website, try acting like a real visitor, go through the funnel and try to detect what could be improved. Even better, ask someone not related to your business to do so.</p>
<p>Example: You ask your friend to go visit your e-commerce website and buy a specific product. Stand behind them and see what kind of issues they have. Maybe they can&#8217;t find the right navigation item, or perhaps the search box is not prominent enough? Try making it more visible!</p>
<h3>Others</h3>
<p>Other tools that will provide you with the useful insights are:</p>
<ul>
<li>Form analytics tools</li>
<li>Heatmaps (click, move, scroll)</li>
<li>On-Site Polls</li>
<li>Session recordings</li>
</ul>
<p>Example: When taking a look at your heatmaps report you notice that a lot of visitors click on a picture on your website. The problem is, that picture is not meant for clicking and nothing happens. Try giving it a relevant click action, a zoom maybe?</p>
<p>Heatmaps, form analytics and on-site polls are included in <a href="http://reflectivedata.com/features/">Reflective Data Platform</a>.</p>
<h2>Conclusion</h2>
<p>A/B testing is becoming more and more popular every day. Still, there are a lot of websites that aren&#8217;t running a single experiment, that is a lost opportunity.</p>
<p>If you have a website with a decent amount of traffic, start testing! There is nothing to lose, start with a free tool such as Google Optimize.</p>
<p>In case you have a website with traffic which is too low for testing, get yourself familiar with the basics while working on getting more traffic. It is worth it, you will be making tons more money!</p>
<p>When picking a tool, take a look at each of their websites, ask for a demo, find someone who is using them and get a real-life overview. If you are from a smaller business, go with a free option.</p>
<p>The post <a href="https://reflectivedata.com/getting-started-ab-testing/">Getting Started With A/B Testing</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://reflectivedata.com/getting-started-ab-testing/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Using Google Optimize For 3 Months</title>
		<link>https://reflectivedata.com/using-google-optimize-3-months/</link>
					<comments>https://reflectivedata.com/using-google-optimize-3-months/#comments</comments>
		
		<dc:creator><![CDATA[Silver Ringvee]]></dc:creator>
		<pubDate>Tue, 30 May 2017 08:05:29 +0000</pubDate>
				<category><![CDATA[A/B testing]]></category>
		<category><![CDATA[Google Optimize]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Tools]]></category>
		<guid isPermaLink="false">http://reflectivedata.com/?p=994</guid>

					<description><![CDATA[<p>Around eight months ago, we signed up for Google Optimize invite list. We finally received our access around four months later and we have now been actively using it for three months.</p>
<p>So, what's our verdict? Is it going to replace other tools like Optimizely or VWO? In this article, we are going to tell you exactly what we think about Google Optimize.</p>
<p>The post <a href="https://reflectivedata.com/using-google-optimize-3-months/">Using Google Optimize For 3 Months</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Around eight months ago, we signed up for Google Optimize invite list. We finally received our access around four months later and we have now been actively using it for three months.</p>
<p>So, what&#8217;s our verdict? Is it going to replace other tools like Optimizely or VWO? In this article, we are going to tell you exactly what we think about Google Optimize.</p>
<h2>Seamless integration with other Google products</h2>
<p>If you (like we) are using Google Analytics as your main analytics platform and Google Tag Manager as your main tag manager then it&#8217;s logical step to start using Google Optimize as your main testing platform?</p>
<p>Well, the integration is truly simple. The installation with Google Tag Manager is easy, <a href="https://support.google.com/tagmanager/answer/7164339?hl=en" target="_blank" rel="noopener noreferrer">here&#8217;s how it&#8217;s done</a>. Next, just link Optimize with your Analytics property and view and that&#8217;s it.</p>
<p>All your experiments will automatically show up in Google Analytics, take a look at Behavior -&gt; Experiments.</p>
<p>For more advanced analysis we recommend creating segments or filters for each experiment and variant. That way you will be able to really see how your experiments are changing the way your website&#8217;s visitors behave.</p>
<p>Here&#8217;s how to create a new segment for a specific experiment and variant.</p>
<figure id="attachment_998" aria-describedby="caption-attachment-998" style="width: 1608px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-29-16-17-43.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-998" src="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-29-16-17-43.png" alt="Google Analytics Experiment Segment" width="1608" height="602" srcset="https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-29-16-17-43.png 1608w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-29-16-17-43-700x262.png 700w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-29-16-17-43-768x288.png 768w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-29-16-17-43-1024x383.png 1024w" sizes="(max-width: 1608px) 100vw, 1608px" /></a><figcaption id="caption-attachment-998" class="wp-caption-text">Google Analytics Experiment Segment</figcaption></figure>
<p>So, if it works so well with the tools that you are already using, doesn&#8217;t it make sense to just start using it as your main A/B testing platform? Okay, let&#8217;s take closer a look at Google Optimize&#8217;s pluses and minuses.</p>
<div class="bs-callout bs-callout-primary"><h4>Free version only</h4>
<p>In this article, I am covering my experiences with the free version of Google Optimize, not the Optimize 360.</p>
</div>
<h2>The bad</h2>
<p>I am going to start with some of the aspects that I don&#8217;t like so much about Google Optimize.</p>
<p><em>Just a little notice that besides Google Optimize, I am also actively using Optimizely and VWO, plus I have been experimenting with an open-source testing tool called Wasabi and even built an A/B testing solution based on Google Tag Manager.</em></p>
<h3>Three experiment limit</h3>
<figure id="attachment_1002" aria-describedby="caption-attachment-1002" style="width: 1192px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-00-58.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1002" src="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-00-58.png" alt="Google Optimize Three Test Limit" width="1192" height="306" srcset="https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-00-58.png 1192w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-00-58-700x180.png 700w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-00-58-768x197.png 768w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-00-58-1024x263.png 1024w" sizes="(max-width: 1192px) 100vw, 1192px" /></a><figcaption id="caption-attachment-1002" class="wp-caption-text">Google Optimize Three Test Limit</figcaption></figure>
<p>Today, Google Optimize allows optimizers to run only three experiments at the same time. You can have more as a draft or ended but not running.</p>
<p>That can be a real issue for companies who are really into testing, especially for those who like to run separate tests for mobile and desktop.</p>
<p>For those just starting off with their A/B testing game, three experiments at once could be just enough!</p>
<h3>Limited code length</h3>
<figure id="attachment_1003" aria-describedby="caption-attachment-1003" style="width: 896px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-04-10.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1003" src="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-04-10.png" alt="Google Optimize Limited Code Lenght" width="896" height="245" srcset="https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-04-10.png 896w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-04-10-700x191.png 700w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-04-10-768x210.png 768w" sizes="(max-width: 896px) 100vw, 896px" /></a><figcaption id="caption-attachment-1003" class="wp-caption-text">Google Optimize Limited Code Lenght</figcaption></figure>
<p>That&#8217;s right, with Google Optimize, your scripts are limited to 10240 characters.</p>
<p>This might not be an issue if you are just using the visual editor for some copy changes but if you are building a more advanced experiment this can become really annoying. Quite often I end up splitting my code into three or four sections.</p>
<h3>No image upload functionality</h3>
<p>There is no way to upload images into Optimize&#8217;s servers. You will have to upload them to your own server or use third-party services.</p>
<p>While this might not be a big issue for some, I found it really bothering. All of the other testing tools that I use have this feature.</p>
<h3>Preview mode is a pain in the&#8230;</h3>
<figure id="attachment_1005" aria-describedby="caption-attachment-1005" style="width: 1168px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-17-59.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1005" src="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-17-59.png" alt="Google Optimize Preview Mode" width="1168" height="375" srcset="https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-17-59.png 1168w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-17-59-700x225.png 700w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-17-59-768x247.png 768w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-17-59-1024x329.png 1024w" sizes="(max-width: 1168px) 100vw, 1168px" /></a><figcaption id="caption-attachment-1005" class="wp-caption-text">Google Optimize Preview Mode</figcaption></figure>
<p>As seasoned A/B testers know, your experiment just doesn&#8217;t look right in the editor. To see the real picture, you have to use preview mode or URL-s.</p>
<p>When I work with VWO or Optimizely, I always have the editor open in one window and preview in another one. As I make changes in the editor I simply press &#8220;Save&#8221; and almost immediately preview my changes in the preview mode.</p>
<p>When it comes to Google Optimize, the preview doesn&#8217;t get updated unless you click on &#8220;Save&#8221; and &#8220;Done&#8221;, the latter exits the editor! After doing so you will need to re-activate the preview mode and then load the editor again to make some changes. And that&#8217;s how it goes, over and over.</p>
<p>This is why setting up a more advanced experiment takes so much longer in Google Optimize when compared to some other testing tools.</p>
<h2>The good</h2>
<p>If the &#8220;bads&#8221; didn&#8217;t scare you away, let&#8217;s take a look at some of the reasons why I really like Google Optimize.</p>
<h3>Works perfectly with other Google tools</h3>
<figure id="attachment_1009" aria-describedby="caption-attachment-1009" style="width: 1434px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-54-26.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1009" src="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-54-26.png" alt="Google Optimize GTM Integration" width="1434" height="567" srcset="https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-54-26.png 1434w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-54-26-700x277.png 700w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-54-26-768x304.png 768w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-54-26-1024x405.png 1024w" sizes="(max-width: 1434px) 100vw, 1434px" /></a><figcaption id="caption-attachment-1009" class="wp-caption-text">Google Optimize GTM Integration</figcaption></figure>
<p>As I already mentioned, if you are already using Google Analytics and Google Tag Manager, installing and using Google Optimize goes super smoothly.</p>
<p>While you can integrate Google Analytics with other testing tools, there will almost always be some issues with that. Most common is that the numbers just don&#8217;t match up. Google Optimize&#8217;s data is based on Google Analytics, so that won&#8217;t be an issue.</p>
<h3>Very nice visual editor</h3>
<figure id="attachment_1008" aria-describedby="caption-attachment-1008" style="width: 1905px" class="wp-caption aligncenter"><a  href="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54.png" data-rel="lightbox-gallery-0" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" class="size-full wp-image-1008" src="http://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54.png" alt="Google Optimize Visual Editor" width="1905" height="968" srcset="https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54.png 1905w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54-700x356.png 700w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54-768x390.png 768w, https://reflectivedata.com/wp-content/uploads/2017/05/Screenshot-from-2017-05-30-10-52-54-1024x520.png 1024w" sizes="(max-width: 1905px) 100vw, 1905px" /></a><figcaption id="caption-attachment-1008" class="wp-caption-text">Google Optimize Visual Editor</figcaption></figure>
<p>Whether you are a beginner in A/B testing, don&#8217;t write any code or just most of the time run simpler A/B tests, you will really like the visual editor that comes with Optimize.</p>
<p>It is super easy to use, a simple copy or an image change will take a second. Really, it&#8217;s that simple.</p>
<h3>Growing community</h3>
<p>As with other free tools, especially those from Google, the community tends to be huge and rather active. That means you can expect to see all sorts of tutorials and other cool stuff related to Google Optimize, online &amp; for free.</p>
<p>While paid tools might (sometimes) have a good support system, I almost always prefer an active community on StackOverflow where nearly all of the issues have already been solved.</p>
<p>Right now, the community seems to be rather small but I am sure it will grow pretty fast.</p>
<h3>Does everything it&#8217;s paid competitors do</h3>
<p>Doesn&#8217;t matter if you come from Optimizely, VWO or some other similar testing tool, you will find all the features you loved about them in Google Optimize. Maybe in a bit different format, but most of them are there.</p>
<p>Of course, there are some slight differences, like missing image upload option etc. but for most of them, you can easily find a workaround.</p>
<h3>IT&#8217;S FREE</h3>
<p>Best things in life are free, so is Optimize.</p>
<p>Just sign up with your Google account, add the snippet on your website, link your Analytics property and start testing. It&#8217;s that simple.</p>
<p>Other testing tools are very expensive, especially if you have a lot of traffic and your optimization process is not very effective (yet).</p>
<h2>Conclusion</h2>
<p>While it has its minuses, Google Optimize is almost as good as any other A/B testing tool and you will definitely like using it.</p>
<p>I really hope that some of the issues I listed in this article are going to be fixed in the nearest future. It&#8217;s a rather new tool after all.</p>
<p>Three test limit will most probably stay to keep you considering upgrading to Optimize 360 but if testing is just something you do besides other stuff, three tests can easily be enough for you.</p>
<h4>Are you new to A/B testing?</h4>
<p>Go ahead, install Google Optimize on your website today and get to know what optimizing your website really means.</p>
<h4>Are you already running a few tests every month?</h4>
<p>No matter what tool you are using, give Optimize a try. It&#8217;s free, you don&#8217;t have anything to lose.</p>
<h4>Are you an hard-core A/B tester?</h4>
<p>Well, if you know for sure that three test limit is just not enough for you, you should probably wait before you cancel the tool you are currently happy with. But still, consider giving Optimize a try. Maybe you have another website where you run fewer tests or maybe you will like the platform so much that will consider the paid version.</p>
<p>Whatever your background is, my recommendation is to try new things (and tools). That&#8217;s the whole point of testing and optimization, right?</p>
<p><a href="https://www.google.com/analytics/optimize/">Click here to get started with Google Optimize.</a></p>
<p>Have you already tried Google Optimize? Let us know what you think about it in the comments below.</p>
<p><span style="color: #ff0000;">If you liked the article, please subscribe to our newsletter to get posted on what&#8217;s new in digital analytics!</span></p>
<p>The post <a href="https://reflectivedata.com/using-google-optimize-3-months/">Using Google Optimize For 3 Months</a> appeared first on <a href="https://reflectivedata.com">Reflective Data</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://reflectivedata.com/using-google-optimize-3-months/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
	</channel>
</rss>
