What are Enhanced Ecommerce reports?

In May 2014 Google Analytics introduced a new feature: Enhanced Ecommerce tracking. If you run an ecommerce operation, this gets you much more detailed feedback on your checkout process. What will I see? Shopping behaviour: how are people converting from browsers to purchasers? Checkout behaviour: at what stage of your checkout do buyers abandon the process Product performance: which products are driving your sales, and which have a high return rate Real campaign returns: see your real return on marketing investment including promotional discounts and returns How do I set this up? The bad news is it definitely requires an experienced software developer for the setup. The reports require lots of extra product and customer information to be sent to Google Analytics. You can read the full developer information on what you can track, or our own simpler guide for tracking ecommerce via Tag Manager. However, if you already have standard ecommerce tracking and Google Tag Manager, we can set Enhanced reports up in a couple of days with no code changes on your live site - so no business disruption or risk of lost sales. Is it worth implementing? Imagine you could identify a drop-off stage in your checkout process where you could get a 10% improvement in sales conversion or a group of customers who were unable to buy (maybe due to language or browser difficulties) – what would that be worth? Many businesses have that kind of barrier just waiting to be discovered…   Get Social! Follow us on LinkedIn, Twitter, and Facebook and keep up-to-date with our Google Analytics insights.

2016-11-14

How to track time on page with Google Tag Manager

Our script for accurate tracking of time on page beats Google's default measurement to give you an accurate picture of how long users are spending on your page open and in focus. This post translates the approach into Google Tag Manager. The setup consists of two tags (one custom), one firing rule and two variables. Step by step: 1. Add the timer script as a custom HTML tag <script><br /> /*<br /> Logs the time on the page to dataLayer every 10 seconds<br /> (c) LittleData consulting limited 2014<br /> */<br /> (function () {<br /> var inFocus = true;<br /> var intervalSeconds = 10; //10 seconds<br /> var interval = intervalSeconds * 1000;<br /> var eventCount = 0;<br /> var maxEvents = 60; //stops after 10 minutes in focus<br /> var fnBlur = function(){inFocus = false; };<br /> var fnFocus = function(){inFocus= true; };<br /> if (window.addEventListener) {<br /> window.addEventListener ('blur',fnBlur,true);<br /> window.addEventListener ('focus',fnFocus,true);<br /> }<br /> else if (window.attachEvent) {<br /> window.attachEvent ('onblur',fnBlur);<br /> window.attachEvent ('onfocus',fnFocus);<br /> }<br /> var formatMS = function(t){<br /> return Math.floor(t/60) +':'+ (t%60==0?'00':t%60);<br /> }<br /> var timeLog = window.setInterval(function () {<br /> if (inFocus){<br /> eventCount++;<br /> var secondsInFocus = Math.round(eventCount * intervalSeconds);<br /> dataLayer.push({"event": "LittleDataTimer", "interval": interval, "intervalSeconds": intervalSeconds, "timeInFocus": formatMS(secondsInFocus) });<br /> }<br /> if (eventCount>=maxEvents) clearInterval(timeLog);<br /> }, interval);<br /> })();<br /> </script> 2. Add two variables to access the data layer variables One for the formatted time, which will feed through the event label And one for the number of seconds in focus since the last event, which will feed through the event value 3. Add the firing rule for the event 4. Add the tag that reports the timer event to Google Analytics Options and further information You can change the timer interval in the custom HTML tag - the reporting will adjust accordingly. Choosing the interval is a trade-off between the resolution of the reporting and the load on the client in sending events, as well as Google's 500 hit per session quota. We've chosen ten seconds because we think the users who are in 'wrong place' and don't engage at all will leave in under ten seconds, anything more is some measure of success. If you'd like assistance implementing this or something else to get an accurate picture of how users interact with your site, get in touch!   Get Social! Follow us on LinkedIn, Twitter, and Facebook and keep up-to-date with our Google Analytics insights.

2016-11-14

Accurate tracking of time on site

There’s a flaw in the way Google Analytics measures ‘time on site’: the counter only starts from the second page visited, so all one-page visits are counted as zero time on site. If a visitor comes to your page, stays for 10 minutes reading – and then closes the window… that’s counted as ZERO time. With landing pages that have lots of interaction, or the call to action is a phone call rather than a click, this can be a real problem. Pasting the Javascript below onto all the pages of your site will fix the problem. The script logs an event to Google Analytics for every 10 seconds the visitor stays on the page, regardless of whether they bounced or not. But it won't affect your bounce rate or time on site for historical comparison *. We suggest you look closely at how visitors drop off after 10, 20 and 30 seconds to see which of your web content could be improved. Paste this into the source of your all your pages, after the Google Analytics script <!-- Time on Site tracking (c) LittleData.co.uk 2014 --><script>(function(e){var t=true;var n=0;var r=true;var i=function(){t=false};var s=function(){t=true};if(window.addEventListener){window.addEventListener("blur",i,true);window.addEventListener("focus",s,true)}else if(window.attachEvent){window.attachEvent("onblur",i);window.attachEvent("onfocus",s)}var o=function(e){return Math.floor(e/60)+":"+(e%60==0?"00":e%60)};var u=window.setInterval(function(){e=e+10;if(t){n=n+10;if(typeof _gaq==="object"){_gaq.push(["_trackEvent","Time","Log",o(n),n,r])}else if(typeof ga==="function"){ga("send",{hitType:"event",eventCategory:"Time",eventAction:"Log",eventLabel:o(n),eventValue:10,nonInteraction:"true"})}}},1e4);window.setTimeout(function(){clearInterval(u)},601e3)})(0)</script> What you'll see In Google Analytics go to Behaviour .. Events .. Top Events and click on the event category 'Time'.                               Searching for a particular time will find all the people who have stayed at least that length of time. e.g. 0:30 finds people who have stayed more than 30 seconds. FAQs Does this affect the way I compare bounce rate or time-on-site historically? No. The script sends the timer events as 'non-interactive' meaning they won't be counted in your other metrics. Without this, you would see a sharp drop in bounce rate and an increase in time on site, as every visitor was counted as 'non-bounce' after 10 seconds. If you prefer this, see below about adapting the script. Will this work for all browsers? Yes, the functions have been tested on all major, modern browser: IE 9+, Chrome, Safari and Firefox. What if I upgrade to Universal Analytics? Don’t worry – our script already checks which of the two tracking scripts you have (ga.js or analytics.js) and sends the appropriate log. Will this max out my Google Analytics limits? The script cuts off reporting after 5 minutes, so not to violate Google’s quota of 200 – 500 events that can be sent in one session Can I adapt this myself? Sure. The full source file is here. Need more help? Get in touch with our experts!

2016-11-13

How to set up ecommerce tracking with Google Tag Manager

Enhanced ecommerce tracking requires your developers to send lots of extra product and checkout information in a way that Google Analytics can understand. If you already use GTM to track pageviews you must send ecommerce data via Google Tag Manager Step 1 Enable enhanced ecommerce reporting in the Google Analytics view admin setting, under 'Ecommerce Settings' Step 2 Select names for your checkout steps (see point 4 below): Step 3 Get your developers to push the product data behind the scenes to the page 'dataLayer'. Here is the developer guide. Step 4 Make sure the following steps are tracked as a pageview or event, and for each step set up a Universal Analytics tracking tag: Product impressions (typically a category or listing page) Product detail view (the product page) Add to basket (more usually an event than a page) Checkout step 1 (views the checkout page) Checkout step 2 etc - whatever registration, shipping or tax steps you have Purchase confirmation Step 5 Edit each tag, and under 'More Settings' section, select the 'Enable enhanced ecommerce features' and then 'use data layer' options: Of course, there's often a bit of fiddling to get the data layer in the right format, and the ecommerce events fires at the right time, so please contact us if you need more help setting up the reports! Step 6 - Checking it is working There is no 'real time' ecommerce reporting yet, so you'll need to wait a day for events to process and then view the shopping behaviour and checkout behaviour reports. If you want to check the checkout options you'll need to set up a custom report: use 'checkout options' as the dimension and 'sessions' and 'transactions' as the metrics. Need some more help? Get in touch with our lovely team of experts and we'd be happy to answer any questions!   Get Social! Follow us on LinkedIn, Twitter, and Facebook and keep up-to-date with our Google Analytics insights.  

2016-11-10

Android users buy 4x more than Apple users. Why?

Looking at a sample of 400 ecommerce websites using Littledata, we found mobile ecommerce conversion rates vary hugely between operating systems. For Apple devices, it is only 1% (and 0.6% for the iPhone 6), whereas for Android devices the conversion rate is nearly 4% (better than desktop). It’s become accepted wisdom that a great ‘mobile experience’ is essential for serious online retailers. As 60% of all Google searches now happen on mobile, and over 80% of Facebook ad clicks come from mobile, it’s highly likely the first experience new customers have of your store is on their phone. So is it because most websites look worse on an iPhone, or iPhone users are pickier?! There’s something else going on: conversion rate on mobile actually dropped for these same sites from July to October (1.25% to 1.26%) this year, even as the share of mobile traffic increased. Whereas on desktop, from July (low-season) to October (mid-season for most retailers), the average ecommerce conversion rate jumped from 2% to 2.5%. It seems during holiday-time, consumers are more willing to use their phones to purchase (perhaps because they are away from their desks). So the difference between Android and iOS is likely to do with cross-device attribution. The enduring problem of ecommerce attribution is that it’s less likely that customers complete the purchase journey on their phone. And on an ecommerce store you usually can’t attribute the purchase to the initial visit on their phone, meaning you are seriously underestimating the value of your mobile traffic. I think iPhone users are more likely to own a second device (and a third if you count the iPad), and so can more easily switch from small screen browsing to purchase on a large screen. Whereas Android users are less likely to own a second device, and so purchase on one device. That means iPhone users do purchase – but you just can’t track them as well. What’s the solution? The only way to link the visits on a phone with the subsequent purchases on another device is to have some login functionality. You can do that by getting users to subscribe to an email list, and then linking that email to their Google Analytics sessions. Or offering special discounts for users that create an account. But next time your data tells you it’s not worth marketing to iPhone users, think again. Need help with your Google Analytics set up? Comment below or get in touch!   Get Social! Follow us on LinkedIn, Twitter, and Facebook and keep up-to-date with our Google Analytics insights.  

2016-11-02

Personalising your site for a local event with Google Optimize

Google Optimize (standard edition) will be released publically at the end of October, allowing free access to powerful AB testing and personalisation features. Here’s a guide to launching your first test, assuming you have the Google Optimize 360 snippet installed on your page. Step 1: Create the experiment I want to trigger a personalisation on Littledata’s homepage, shown only to visitors from London, which promotes a local workshop we have running later this month. It’s not a real AB test, as we won’t have enough traffic to judge whether the banner is a success, but we can use the ‘experiment’ to launch this personalisation for a local audience. First, I need a new test (click the big blue plus sign) and select an AB test. I’ll name my test, and set the editor page as our homepage – which is pre-filled from Google Analytics anyway… Since I have Google Analytics linked, I can select a goal from GA as the objective. In this case, the banner will promote the event (which isn’t tracked on our site) so the only sensible goal is promoting more pageviews – but it’s possible it will also increase signups for our app, so I’ll include that as a secondary objective. Next, I need to add a variant, which is going to load my event banner. I’ve named it ‘add yellow bar’. Clicking on the variant row will take me to the editor. Step 2: Edit the ‘B’ version Note: Optimize’s editor works as a Chrome Plugin, so you’ll need to install that in Google Chrome first. It’s easy to select an element on the page to edit or hide, but my variant will load a new snippet of HTML code which is not already on the page. So I’ll select the element at the top of the page (with ID ‘content’) and then go to the select elements icon in the top left. Now I’ve got the right element to use as a building block, I’m going to add an ‘HTML’ change. And set it to insert the HTML ‘before’ the current element. I’ve pasted in the HTML I’ve recycled from another page. Once I click apply we can see the new element previewing at the top of the page. Next, let’s check it looks OK on mobile – there’s a standard list of devices I can select from. Yes, that is looking good – but if it wasn’t I could click the ‘1 change’ text in the header to edit the code. Lastly, in the editor, you may have noticed a warning notification icon in the top right of the Optimize editor. This is warning me that, since Littledata is a single-page Javascript site, the variant may not load as expected. I’m confident Optimize is still going to work fine in this case. Step 3: Launching the experiment After clicking ‘Done’ on the editor, I go back to the experiment setup. Usually, we’d split the traffic 50:50 between the original and the variant, but in this case, I want to make sure all visitors from London see the message. I’ll click on the weighting number, and then set ‘add yellow bar’ to show 99.9% of the time (I can’t make it 100%). Then, we want to set the geotargeting. The experiment is already limited to the homepage, and now I click ‘and’ to add a 2nd rule and then select ‘geo’ from the list of rules. I want the yellow bar to show only for visitors from London. The city is a standard category, and it recognised London in the autocomplete. As the final step, I need to click ‘Start Experiment’. I can’t edit the rules of any running experiments (as this would mess up the reporting), but I can stop and then copy an experiment which is incorrect. Conclusion Google Optimize makes it really simple to set up tests and personalisations, although it is missing a few features such as scheduling. The premium edition (Optimize 360) will allow more analysis of tests using Google Analytics, and also allow the import of custom audiences from other Google 360 products. This is powerful if you want to launch a customised landing pages experience based on, say, a DoubleClick display ad campaign. So try it out, and if you have any questions, contact one of our experts! Get Social! Follow us on LinkedIn, Twitter, and Facebook and keep up-to-date with our Google Analytics insights.

2016-10-18

Google Optimize versus Optimizely

I’ve been an Optimizely certified expert for a couple of years and have now trialled Google Optimize 360 for a few months, so it seems a good time to compare how they stack up. Optimizely is the current market leader in AB testing (or content experimentation), due to its ease of use and powerful reporting tools. It gives companies an easy way to run many concurrent tests and manage their setup and roll out without the involvement of developers. That was a big step up from Google Content Experiments, where the only way to set up an experiment is to write some Javascript code. The Guardian had some success with Optimizely, where they increased subscriptions by 46%. Google Optimize is an equivalent testing tool, and has copied much of the user interface that made Optimizely popular: you can click on elements within the page to experiment, and change their style, hide them or move them. My only complaint is that the interface is so simple it can take a while to unbury powerful features, such as transform the page via a custom script. There have been many success stories of companies implementing Google 360. Technically, Optimize’s editor is a bit smoother; using a Chrome plugin avoids some of the browser security issues that bugged Optimizely (since internet browsers confused the Optimizely in-page editor with some kind of script hacking). For example, to load Littledata’s homepage in their editor I have to enable ‘insecure scripts’ in Chrome and then navigate to a different page and back to force the editor to re-render. For reporting, Google Optimize 360 gives the ability to see results either in Optimize or as a custom dimension in Google Analytics – so equivalent to Optimizely. Right now Optimize lacks some features for advanced scheduling and user permissions, but I expect those to evolve as the product gathers momentum. The critical difference is with the targeting options Optimizely allows you to target experiments based on the device accessing the page (mobile vs desktop, browser, operating system) and for enterprise plans only to target based on geolocation. The limitation is that every time Optimizely needs to decide whether to run the test, the check for the user’s location may take a few seconds – and the landing page may flicker as a test rule is triggered on not. Google Optimize can target to any audience that you can build in Google Analytics (GA). This means any information you capture in Google Analytics – the number of previous visits, the pages they have previously seen or the ecommerce transactions – can be used in a test or personalisation. For example, in Google Optimize you could serve a special message to users who have previously spent more than $100 in your store. Optimizely has no knowledge of the users’ actions before that landing page, so the only way you could run an equivalent personalisation is to expose this previous purchase value as a custom script on the landing page (or in a cookie). The beauty of Google Optimize is that you are targeting based on information already captured in Google Analytics. There is no technical setup beyond what you were already doing for Google Analytics, and it doesn’t take a developer to build targeting for a very specific audience. Pricing Optimizely starts from under $100/month, but to get access to enterprise features (e.g. for geo-targeting) you will need to spend $2000 plus per month. Google Optimize is currently being sold at a flat rate of $5000 / month for the basic tier of Google 360 customers (which have between 1M to 50M sessions per month), but in future, it could be offered at a lower price to smaller companies. Conclusion Where you’ll appreciate the benefits of Google Optimize is for running personalisations based on complex rules about previous user behaviour, or the campaigns they have seen. The more different tests you are running, the more time and simplicity saving you will get from building the audience in Google Analytics rather than some custom scripts. Google Optimize 360 is currently in beta but you can currently add your email to invite list. For smaller customers, or those with less complex needs, Optimizely still offers better value – but that might change if Google were to offer a limited version of Optimize at a lower price.   Get Social! Follow us on LinkedIn, Twitter, and Facebook and keep up-to-date with our Google Analytics insights.   Further reading: Create and customise dashboards and widgets in Google Analytics New in Littledata: an improved navigation, trend detection algorithm, and more How to set up internal searches in Google Analytics Image credit: Blastam  

2016-10-05

Why your business shouldn't go freemium

I took part in an interesting discussion about when the popular ‘freemium’ model for web apps is viable. Startup dogma says that scalable software/web products must be (at least partly) free, so it's worth reiterating the downsides of this approach. Here’s how I see the economic realities: 1. Free brings you the wrong sort of users UK supermarkets are currently locked in a price war to try to grab market share, so let’s imagine Tesco were crazy and desperate enough to offer free cases of beer to all shoppers. Do you think their overall sales would suddenly rise that day? Or would freeloaders come from around town to collect free beer… and then buy their groceries from Asda or Sainsbury’s, as usual? Giving away free products, including free web apps, discourages users from thinking about whether they value the product – and would ever pay for it. Often free attracts the kind of time-rich, cash-poor user who will go to extreme lengths to avoid paying – so frustrating the ‘pay for extra convenience’ premium package of many freemium models. Conversely, offering a free trial and taking payment options up front confirms that customers can and will be able to pay. GoToMeeting’s CFO found their conversion rate of ACTIVE trial users to paying customers was 45% when credit card details were taken up front – as opposed to 3% when they were not. 2. Low payment conversion rates need massive active user bases Most freemium products report less than 5% of active users paying for the service, with the conversion rate generally closer to 1% if you look at all users (including inactive). So with a standard consumer subscription fee of $20/month you would have an Average Revenue Per User (ARPU) of $20 x 12 x 1% = $2.40. To get to a respectable turnover of $10m per year, (I'd suggest the minimum aim for an Angel or seed funded startup) you would need over 4m users. And to get to VC-exit/IPO scale you would need 50m users. That is achievable for mass-adoption products like Evernote and Dropbox but really isn’t if you’re in a niche market like schools. There are less than 4m teachers in the whole of the USA, and expecting to get more than 10% of them adopting your product is cuckoo-land talk. For example, Busuu (a language learning marketplace) boasted 45m million users last year but only $12m in revenue – under 30 cents per user. Busuu is probably just safe with a huge market, but for an app with impressive global traction that is a very small reward: Facebook makes $6 per user per year just from advertising. 3. Low customer lifetime values limit your marketing options If your lifetime value per user is $3 - since the average subscription length is likely to be around a year – there are very few marketing options beyond SEO or word-of-mouth. You can’t justify affiliate deals, pay-per-click or display advertising if you can’t afford to buy customers. e.g. If you buy a keyword for even $0.30 you would need a bullish 10% signup rate even to break even on the marketing spend. Freemium businesses have genuinely got to sell themselves, and so must focus on the product first. The exact opposite was ScreenSelect (which merged into LoveFilm and then Amazon film rental) – customer growth could be bought with the predictable recurring revenue. All LoveFilm did, was promise a marketing agency the first few months of a customer’s subscription payments, and the agency worked out which tactics would be profitable at that level. See William Reeve’s great explanation of the economics. But that only worked when the customer lifetime value was $100 or more. 4. Freemium generates huge buzz but little sustainable profit A big trap in startup business model innovation is following pundits saying ‘freemium is really working for X company’ when ‘working for’ means they are getting loads of users and publicity. In itself publicity is a good thing – ‘product as the message’ – but it will only translate into profit if there is a massive market to capture. Here's the dirty secret: many venture-capital funded businesses are more focused on user growth than revenue because hyper-growth of users increases their valuation faster than moderate revenue growth. So don’t copy them if you plan to grow your company without massive VC funding! How many truly big businesses make the majority of their revenue from premium subscriptions backed by free software? From an article in 2011 here is a decent list who are still going strong: LogMeIn (switched to free trial) Dropbox Skype Spiceworks Lookout Eventbrite Zendesk Evernote SurveyMonkey GitHub What they have in common is mass-market, simple tools with massive international business audiences, and masses of venture funding behind them. But there are plenty of other former tech darlings who flamed out before making the critical mass of users – e.g. Helpstream in 2010. Conclusion: freemium is not for bootstrapped companies I’m not saying freemium can’t work for you, but be very wary of following the freemium orthodoxy unless you have: A potential user base of more than 10m (and preferably 100m users) A product so simple it doesn’t need training or support to get set up Substantial funding – it takes a long time to build enough users to generate cost-covering income For many businesses, the fabled networked effects of all those free users will be out-weighted by the opportunity cost of not charging some of them from the start. To profitability and beyond! Have any questions? Comment below or get in touch! (Chart: How Much Is the Average Facebook User Worth? | Statista)   Get Social! Follow us on LinkedIn, Twitter, and Facebook and keep up-to-date with our Google Analytics insights.

2016-09-27

Get the Littledata analytics app

Complete picture of your ecommerce business. Free Google Analytics connection, audit and benchmarks.

Sign up

Insights from analytics experts

Subscribe to the Littledata blog for the latest posts and updates

No Thanks
We respect your privacy. Your information is safe and will never be shared.
Don't miss out. Subscribe today.
×
×