Category : Analytics Setup
Why does shop.app appear as a referral source in Google Analytics?
You may have noticed a new referral source appearing in your Google Analytics, or an increase in sales from the 'Referral' channel. This is a change Shopify made with the launch of the new Shop app, and can be easily fixed. What is Shop.app? SHOP by Shopify is a consumer mobile app, aggregating products and experiences from many Shopify merchants. It is heavily integrated with ShopPay, and so Shopify is now directing one-click checkout traffic to the shop.app domain instead of pay.shopify.com. How would SHOP fit into the user journey? There are two scenarios: 1. Customer is using Shop.app for checkout and payment Example journey: User clicks on Facebook Ad Lands on myshop.myshopify.com?utm_source=facebook Selects a product Logged in, and directed to shop.app for checkout Returns to myshop.myshopify.com for order confirmation In this scenario we should exclude shop.app as a referrer, as the original source of the order is really Facebook 2. End customer is using Shop.app for browsing / product discovery Example journey: User discovers product on shop.app Clicks product link to myshop.myshopify.com?utm_source=shop_app Logged in, and directed to shop.app for checkout Returns to myshop.myshopify.com for order confirmation Here, shop.app is the referrer but it will show up with UTM source How do I see the true source of the referral in Google Analytics? Firstly, you need to exclude shop.app as a referral source. Only in scenario 2 is SHOP genuinely a source of customers, and there the UTM source tag will ensure it appears as a referrer. Littledata's latest tracking script sets this up automatically. The second fix is harder. Unfortunately, at the time of writing, Shopify only sets utm_source=shop_app in the URL query parameters in scenario 2, and Google Analytics won't consider this a referral unless utm_medium is also set. So it appears under the (not set) channel. I've written a patch for our tracking script so that we set utm_medium as referral if only the source is specified, but you can also edit the default channel grouping in GA so that shop_app is grouped as a referral. Thirdly, you want to differentiate orders going through shop.app from the normal Shopify checkout. Littledata's Shopify app does this by translating the order tag shop_app into the transaction affiliation in Google Analytics, so the affiliation is Shopify, Shop App. Conclusion So if you're a Littledata customer: our app has got you covered. And if not there's a few changes you'll need to make in Google Analytics settings to make sure shop.app traffic is treated correctly.
How to set up cross-domain tracking in Google Analytics
Is Google Analytics accurate? 6 common issues and how to fix them
Google Analytics is used by tens of millions of websites and apps around the world to measure web visitor engagement. Due to some users choosing not to be tracked or blocking cookies, Google Analytics can't measure 100% of visitors. But when set up correctly, GA measures over 95% of genuine visitors (as opposed to web scrapers and bots). At Littledata, our customers come from a range of industries. But when they first come to the Littledata app for help fixing their analytics, we hear many of the same questions: Is Google Analytics accurate? How do I know if my Google Analytics setup is giving me reliable data? In this blog post, we dissect some common issues with Google Analytics before providing a solution to help your ecommerce tracking be as accurate as possible. 6 common issues with Google Analytics 1) Your tracking script is not implemented correctly There are two common issues with the actual tracking script setup: It's implemented twice on some pages It's missing completely from some pages When the script is duplicated, you’ll see an artificially low bounce rate (usually below 5%), since every page view is sending twice to Google Analytics. When the script is missing from pages, you’ll see self-referrals from your own website. How to fix it Our recommendation is to use Google Tag Manager across your whole site to ensure the tracking script is loaded with the right web property identifier at the right time during the page load. 2) Your account has lots of spam When it comes to web traffic and analytics setup, spam is a serious issue. Spammers send 'ghost' referrals to get your attention as a website owner. This means that the traffic you see in Google Analytics may not come from real people, even if you have selected to exclude bots. How to fix it Littledata’s app filters out all future spammers and Pro Reporting users benefit from having those filters updated weekly. 3) Your own company traffic is not excluded Your web developers, content writers and marketers will be heavy users of your own site, and you need to filter this traffic from your Google Analytics to get a view of genuine customers or prospects. How to fix it You can do this based on location (e.g. IP address) or pages they visit (e.g. admin pages). [subscribe] 4) One person shows up as two or more users Fight Club aside (spoiler alert), when the same person re-visits our site, we expect them to look the same each time. Web analytics are more complicated. When Google Analytics speaks of 'users', what it's really tracking is a visit from a particular device or browser instance. For example, if I have a smartphone and a laptop computer and visit your site from both devices (without cross-device linking), I’ll appear as two users. Even more confusingly, if I visit your site from the Facebook app on my phone and then from the Twitter app, I’ll appear as two users — the two apps use two different internet browser instances. How to fix it While Google is looking at ways to use its accounts system (Gmail, Chrome, etc.), there's not a lot which can be done to fix this at the moment. 5) Marketing campaigns are not attributed to revenue or conversions If the journey of visitors on your site proceeds via another payment processor or gateway, you could be losing the link between the sale (or goal conversion) and the original marketing campaigns. You will see sales attributed to Direct or Referral traffic, when they actually came from somewhere else. How to fix it This is a remarkably common issue with Shopify stores. That’s why we built a popular Shopify reporting app that solves the issue automatically. [subscribe heading="Get the Littledata Shopify reporting app" background_color="grey" button_text="get the app" button_link="https://www.littledata.io/shopify"] For other kinds of sites, the issue can often be resolved by setting up cross-domain tracking. 6) You aren't capturing key events (like purchases or button clicks) Google Analytics only tracks views of a page by default, which may not be meaningful if you have a highly interactive website or app. How to fix it Sending custom events is the key to ensuring your tracking is both accurate and relevant. Google Tag Manager makes this easier than it would be otherwise. However, you may need to speak to a qualified Google Analytics consultant to decide what to track. Wrapping up For better certainty that your analytics are fully accurate, try our free Google Analytics audit or get in touch with our Google Analytics consulting team for a quick consultation. If you're ready to give it a shot, go ahead and try Littledata free for 30 days — we'll even walk you through the app! We ❤️ analytics and we're always here to help. Quick links How to get extra support from our team of Google Analytics experts Enterprise plans to help you scale your store faster EBOOK: Why does my data in Google Analytics not match what I see in Shopify?
How to fix marketing attribution for iOS 14
The latest version of Safari, and all browsers running on iOS for iPhones or iPads, limit the ability for Google Analytics (and any other marketing tags) to track users across domains, and between visits more than a day apart. Here’s how to get this fixed for your site. This article was updated January 2021 to include the changes for iOS 14 How does this affect my analytics? Safari's Intelligent Tracking Prevention (ITP) dramatically changes how you can attribute marketing on one of the web's most popular browsers, and ITP 2.3 makes this even more difficult. How will the changes affect your analytics? Currently your marketing attribution in Google Analytics (GA) relies on tracking users across different visits on the same browser with a first-party user cookie - set on your domain by the GA tracking code. GA assigns every visitor an anonymous ‘client ID’ so that the user browsing your website on Saturday can be linked to the same browser that comes back on Monday to purchase. In theory this user-tracking cookie can last up to 2 years from the date of the first visit (in practice, many users clear their cookies more frequently than that), but anything more than one month is good enough for most marketing attribution. ITP breaks that user tracking in major ways: Any cookie set by the browser, will be deleted after 7 days (ITP 2.1)Any cookie set by the browser, after the user has come from a cross-domain link, will be deleted after one day (ITP 2.2)Any local storage set when the user comes from a cross domain link is wiped after 7 days of inactivity (ITP 2.3)With Safari 14, any script known to send events about the user is blocked from accessing cookies or any way of identifying the userFrom iOS 14 onwards all browsers will implement these restrictions by default, unless the user opts in to 'allow cross-website tracking'. This will disrupt your marketing attribution. Let’s take two examples. Visitor A comes from an affiliate on Saturday, and then comes back the next Saturday to purchase: Before ITP: sale is attributed to AffiliateAfter ITP: sale is attributed to ‘Direct’Why: 2nd visit is more than one day after the 1st Visitor B comes from a Facebook Ad to your latest blog post on myblog.com, and goes on to purchase: Before ITP: sale is attribute to FacebookAfter ITP: sale is attributed to ‘Direct’Why: the visit to the blog is not linked to the visit on another domain The overall effect will be an apparent increase in users and sessions from Safari or iPhones, as the same number of user journeys are broken in down into more, shorter journeys. How big is the problem? This is a big problem! Depending on your traffic sources it is likely to affect half of all your visits. Apple released iOS 14 and Safari 14 on 16th September 2021, and at the time of writing around 20% of all web visits came from iOS 14, and another 20% of visits from Safari 12 or higher, on a sample of larger sites. The volume for your site may vary; you can apply this Google Analytics segment to see exactly how many iOS users you have. The affected traffic will be greater if you have high mobile use or more usage in the US (where iPhones are more popular). Why is Apple making these changes? Apple has made a strong point of user privacy over the last few years. Their billboard ad at the CES conference in Las Vegas earlier this year makes that point clearly! Although Google Chrome has overtaken Safari, Internet Explorer and Firefox in popularity on the desktop, Safari maintains a very dominant position in mobile browsing due to the ubiquitous iPhone. Apple develops Safari to provide a secure web interface for their users, and with Intelligent Tracking Prevention (ITP) they intended to reduce creepy retargeting ads following you around the web. Genuine web analytics has just been caught in the cross-fire. Unfortunately this is likely not to be the last attack on web analytics, and a permanent solution may not be around for some time. Our belief is that users expect companies to track them across their own branded websites and so the workarounds below are ethical and not violating the user privacy that Apple is trying to protect. How to fix this There is only one fix I would recommend. I’m grateful to Simo Ahava for his research on all the possible solutions. If you’re lucky enough to use Littledata's Shopify app then contact our support team if you'd like to test the private beta of our 'trusted cookie' solution. Server-side cookie service ITP limits the ability of scripts to set cookies lasting for longer than 7 days (or 24 hours in some cases). But this limit is removed if a web server securely sets the HTTPS cookie, rather than via a browser script. This also has the advantage of making sure any cross-domain links tracked using GA's linker plugin can last more than one day after the click-through with ITP 2.3. The downside is this requires either adapting your servers, proxy servers or CDN to serve a cookie for GA and adapt the GA client-side libraries to work on a web server. If your company uses Node.js servers or a CDN like Amazon CloudFront or Cloudflare this may be significantly easier to achieve. If you don’t have direct control of your server infrastructure it’s a non-starter. Also, a caveat is that Apple recommends settings cookies as HttpOnly to be fully future proof - but those would then be inaccessible by the GA client tracking. Full technical details. What about other marketing tags working on Safari? All other marketing tags which track users across more than one session or one subdomain are going to experience the same problem. With Google Ads the best solution is to link your Ad account to Google Analytics, since this enables Google to use the GA cookie to better attribute conversion in Google Ads reporting. Facebook will no doubt provide a solution of their own, but in the meantime you can also attribute Facebook spend in GA using Littledata’s connection for Facebook Ads. Are there any downsides of making these changes? As with any technical solution, there are upsides and downsides. The main downside here is again with user privacy. Legally, you might start over-tracking users. By resetting cookies from the local storage that the user previously requested to be deleted, this could be violating a user’s right to be forgotten under GDPR. The problem with ITP is it is actually overriding the user’s preference to keep the cookie in usual circumstances, so there is no way of knowing the cookie was deleted by the user … or by Safari supposed looking out for the user! Unfortunately as with any customisation to the tracking code it brings more complexity to maintain, but I feel this is well worth the effort to maintain marketing attribution on one of the world's most popular browsers.
Do I need the Google Analytics tracking code on every page?
Shopify's 'sales by traffic source' report is broken
If you're a Shopify store manager, one of your biggest questions should be 'which campaigns lead to sales?'. We looked at data from 10 Shopify Plus customers to see whether the sales by traffic source report can be trusted. Under the Shopify store admin, and Analytics > Reports tab, you can (in theory) see which sessions and sales came from which traffic sources. BUT this sales by traffic source report is broken. Looking at 180,000 orders for 10 stores in Q4 2018, here are the marketing channels which Shopify Analytics says brought the traffic: Direct 83.5%Social 9%Search 4.5%Unknown (other websites, not social or search) 3%Email ~0.1% And using comparative data from Google Analytics we know this is all wrong. Here's a comparison of Shopify's attribution to Google Analytics last-click attribution of sales for one of these customers: Marketing attribution comparison for 700 orders Shopify Google Analytics Direct 99% 43% Search (Paid + Organic) 0.6% 7% Social 0.4% 10% Email - 25% Affiliates - 15% Here's why it's broken 'Direct' traffic is when the source is unknown. But for Shopify's report this means where the source of the last session is unknown - the user most probably visited a search ad or product review previously. Having only 1% visibility on your marketing performance is just not acceptable!We know that tagged Facebook traffic alone represents 7% of traffic for the average store, so 10% of sales from Social is more normal. Social also brings more than the actual sales in terms of visibility and influencers.Google generates billions of pageviews a month for ecommerce stores. If your site gets only 1% of its traffic from search, we'd be very surprised! Including paid search this site is still well below the 40% average. (Check out our 6 essential benchmarks for Shopify stores.)Monthly emails and personalised retargeting emails are now a staple of online marketing, and we know all the customers in this analysis use email marketing of some form - including for new product launches, discounts and cart abandonment campaigns. The problem is, it's unlikely to be the only campaign which brought customers, so it gets drowned out by other 'last click' channels. The solution: multi-channel attribution.Affiliates are a really important channel to get right, as they are paid based on the sales attributed to them. Why should you rely solely on the report the affiliate marketer gives you, and not see the same numbers in Google Analytics? So don't leave your marketing analytics to guess-work! Try the Littledata app to connect Shopify with Google Analytics on a free trial today. All paid plans include unlimited connections, to ensure accurate marketing attribution for sales via ReCharge (subscriptions), CartHook (one-page checkout), Refersion (affiliates) and more.
Why don't my transactions in Google Analytics match those in Shopify?
How to set up Enhanced Ecommerce tracking via Google Tag Manager
Enhanced Ecommerce (EE) is a Google Analytics plug-in that provides merchants with better insights for the shopping behavior of users. Enhanced Ecommerce tracking requires your developers to send lots of extra product and checkout information in a way that Google Analytics can understand. So why use it? [note]Update: If you are using GA4, the new version of Google Analytics, Enhanced Ecommerce will be a bit different. Read more about GA4 for ecommerce[/note] Why use Enhanced Ecommerce? The main benefit of Enhanced Ecommerce (EE) over standard ecommerce implementation is the sheer number of valuable reports merchants have access to with EE. Enhanced Ecommerce is necessary to get complete checkout funnel reporting and similar reports in GA. Not only that, but merchants can segment data based on ecommerce events — which users visited your product pages, where the customer journey hit a roadblock (e.g. a customer pondered a product but didn’t add it to cart, etc.) or during which steps of the checkout process a user abandoned their cart. It's essential to capture checkout funnel events, and EE helps with that. Tracking checkout funnel steps in Google Analytics doesn't just offer insight into the checkout journey, it also gives you the tools you need to set up custom funnels. Ultimately, this kind of data helps merchants zoom in on their sales funnel and alter the parts of the process that don’t lead to conversion. [subscribe heading="GTM data layer for ecommerce tracking" button_link="https://blog.littledata.io/help/posts/gtm-and-google-analytics-data-layer-for-shopify/" button_text="Learn More"] Enchanced Ecommerce implementation is no small feat, but it also depends on a number of factors — the size of your store, the number and type of Google Analytics custom dimensions you need to add, etc. Without question, Google Tag Manager is the simplest and best way to enable Enhanced Ecommerce in Google Analytics. If you already use Google Tag Manager (GTM) to track page views, you must send ecommerce data via Google Tag Manager. If you don’t already use GTM, it’s simple to set up: just activate Enhanced Ecommerce within your Google Analytics tags and use a dataLayer as an ecommerce data source. Just make sure the dataLayer contains all ecommerce data. 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 listing view Product detail view Add to cart event Remove from cart event Checkout step 1 (views the checkout page) Checkout step 2 etc – whatever registration, shipping or tax steps you have Purchase confirmation Refund Step 5 Send the data to Google Analytics using the Data Layer. Instruct the tags to look into the Data Layer and pull the key-value pairs from the eCommerce object pushed most recently into dataLayer by selecting the correct Google Analytics variable. Step 6 This step involves checking the setup. After you have configured everything in place, you'll need to check your entire. What you should be looking for is: Are all the keys configured in the dataLayer.push() getting picked up and being sent to Google Analytics? Is the payload length too long? Is there a risk of data duplication with some hits? To debug these, you really only need three tools: GTM's own Preview mode, the Google Analytics Debugger browser extension, and Google Chrome browser's DevTools. Yes, there are plenty of other tools you can use, but these have proven to be more than enough in my own experience. [subscribe heading="GTM data layer for ecommerce tracking" button_link="https://blog.littledata.io/help/posts/gtm-and-google-analytics-data-layer-for-shopify/" button_text="Learn More"] Wrapping up Need some more help? Get in touch with our lovely team of Google Analytics experts and we'd be happy to answer any questions! At Littledata, our Google Analytics connection is the easiest way for you to automate GA for Shopify stores. With Littledata's app, you get: GTM and Google Analytics data layer that works automatically for ecommerce tracking, including checkout funnel tracking Seamless connections with apps like ReCharge and CartHook Raw data that remains available in Google Analytics or Segment Accurate analytics for Shopify with complete sales and marketing events captured automatically Try our Google Analytics app for Shopify free for 30 days on any plan. On Shopify Plus? Learn more about Littledata Plus.
Subscribe to Littledata news
Insights from the experts in ecommerce analytics
Try the top-rated Google Analytics app for Shopify stores
Get a 30-day free trial of Littledata for Google Analytics or Segment