Klaviyo is one of the most popular email marketing platforms for Shopify stores, but the analytics setup is often overlooked. By following a few simples rules, you can ensure accurate Klaviyo data alongside other sales and marketing data in Google Analytics.
In this article we cover how to set up Google Analytics tracking for Klaviyo, including best practices for UTM parameters and dynamic variables, and how this tracking works alongside Littledata's Shopify to Google Analytics connection.
Klaviyo is a popular customer engagement platform used by over 50,000 Shopify merchants. Their focus is on email and SMS automation, and they have been one of the major success stories in the Shopify ecosystem, recently closing a $200 million funding round.
Klaviyo's features for Shopify include:
- Codeless signup forms
- Pre-built flow templates for quick automation
- Email campaigns for customers and leads
- Advanced segmentation and personalization, including product recommendations
Many of Littledata's Shopify customers use Klaviyo in one way or another, as do almost all of our Shopify Plus customers. But we've noticed a trend where even the biggest Klaviyo users aren't correctly tracking Klaviyo flows in GA, which ends up blocking data-driven decisions for growth. Read on to see how to fix this.
Why Google Analytics
The Klaviyo dashboard has useful built-in reporting, but for ecommerce managers focused on more than just email, there are some significant limitations compared with a dedicated analytics platform like Google Analytics (GA).
One key limitation is for sales attribution (marketing attribution for online sales). In Klaviyo, any sale that happens after engagement with an email is attributed to that email. This overstates Klaviyo's contribution to sales. For example, if a user first comes from a Facebook Campaign, then clicks on an abandoned cart email from Klaviyo, then goes on to complete a purchase after being retargeted in Facebook, Klaviyo will claim this as owned revenue attributed to that email engagement and credit Facebook with nothing!
Another limitation of reporting in Klaviyo's dashboard is that it's hard to see the contribution of an entire email flow to sales, as opposed to the impact of a particular email message in the flow.
What is UTM tracking?
UTM parameters are extra data in the link the user clicks to tell Google Analytics (and Shopify) where the click came from. These parameters are automatically added by Google Ads, but for other platforms (e.g. Facebook or Klaviyo) you will need to add them manually or via the software.
Why does this matter? Because link clicks coming without a UTM tag will typically be treated by GA as "direct" traffic -- in other words, the source of those visits will be unknown.
Note: Read Littledata's free guide to common reasons Shopify doesn't match Google Analytics
To provide the most reporting flexibility we recommend having the same standard UTM parameters across all email flows and campaigns.
Klaviyo allows dynamic variables to be used in your default UTM tracking settings. To get the most out of your Klaviyo reporting in GA, we recommend using static values for Source and Medium, and dynamic values for Campaign and Content. You can change these defaults in go to Account > Settings > UTM Tracking
|UTM Parameter||Campaign Email Value||Flow Email Value|
|Campaign (utm_campaign)||Campaign name (Campaign id)||Flow email name (Flow email id)|
|Content (utm_content)||Link text or alt text||Link text or alt text|
Tip: Content is not a default parameter in Klaviyo, so you will need to add that manually (enter `utm_content` as a new parameter).
With static values for Source and Medium (Klaviyo / email), you will be able to see Klaviyo compared against other marketing channels in GA, and in particular how Klaviyo campaigns contribute to customer lifetime value and other key metrics for Shopify sales and marketing. We do not recommend sticking with Klaviyo's default UTM settings, where Klaviyo flows, for example, are given a dynamic variable that pulls in the name of the flow. You can already see that type of data in the Klaviyo analytics dashboard -- better to use GA for complete marketing analysis.
Whichever naming convention you choose, consistency is essential. Many Littledata customers create internal spreadsheets to manage UTM naming conventions and channel groupings in GA, and run regular QA checks to ensure consistency. Note that we have analytics audit checks within the Littledata app, and we now offer analytics training on Plus plans.
Enabling UTM parameters
In addition to setting up the UTM Parameter values in your Klaviyo account, you need to enable UTM tracking to ensure that those parameters are applied to all emails in flows and campaigns.
The first step is to enable global UTM settings.
- Go to Account > Settings > UTM Tracking
- Switch Automatically add UTM parameters to links to ON. Then click Update UTM Tracking Settings. This will ensure that the UTM parameters are added automatically to all emails sent via Klaviyo.
Now that you have enabled UTM tracking, you need to make sure that you are using 'account defaults' for UTM tracking in your flows and email campaigns (as opposed to custom tracking). This should already be the case, but it's good to double-check.
- Disable any custom UTM tracking for flows or campaigns
- Make sure that the UTM settings for individual flows are set to 'Yes, use account defaults'
- Make sure that overall email campaign settings are set to use default UTM tracking as well. In your overall campaign settings, select 'Yes, use account defaults'
- In addition, when creating/editing a campaign, go to Tracking and make sure that 'Include tracking parameters' is ON and 'Customize tracking parameters' is OFF
Tracking across all marketing channels
The UTM settings above only solve part of the marketing attribution problem: getting the campaign information to the landing page. Commonly this marketing attribution is lost between the landing page and the order completing.
You can try to do this manually with an in-house dev team, but Littledata has built a complete ecommerce tracking solution for Shopify and Google Analytics that works automatically.
Our connections use a combination of client-side and server-side tracking to make sure that all marketing channels -- including email, paid channels, organic search and referrals -- are linked to sales, along with all touch points in between. We also track returns/refunds, repeat purchases, and subscriptions, so you can understand customer lifetime value on a deeper level.
Read about all of the the events Littledata sends automatically. You can use these events for reporting and analysis, and also to build audiences for your Klaviyo campaigns!
Reporting on Klaviyo flows in Google Analytics
Google Analytics is a powerful reporting tool once you get to know how channel groupings and custom dimensions work. Here's a quick look at how to analyze your Klaviyo data in GA.
Looking at campaign conversions in Google Analytics
After you have enabled our recommended settings for UTM tags, you will have access to Klaviyo flow and campaign data in GA. You can look at this on its own, but also compared against other channels for engagement and acquisition.
To see revenue and orders attributed to these campaigns, drill into the
Klaviyo source and add
campaign as a secondary dimension.
If you set up the Flow email name as the
utm_campaign above, then you can look at the contribution of that whole flow to sales. For example, without caring if the user clicked on email 1 or 2 in a 4-email flow, did clicking on any of the emails in that flow -- for example, the 'Browse Abandonment' flow -- result in sales?
Going further, you could create a segment of users who came via an Instagram campaign, and see to what degree they were influenced by the email sequence.
Will Google Analytics match Klaviyo?
How does the data you now have in Google Analytics compare with what you see in your Klaviyo dashboard?
Under the Conversions > Multi-Channel Funnels > Model Comparison Tool in GA, you can compare the default email attribution in GA (last non-direct click), with other attribution models more similar to Klaviyo's dashboard. Keep in mind that there is no model for 'all click' attribution, so the numbers you'll see in GA will always be lower.
You can also look at the Multi-Channel Funnels > Top Conversion Paths report to see where Klaviyo fits into the user journey on your ecommerce site.
Note: Google Analytics data can also be used as a source for other reporting tools, such as Data Studio and Tableau.
Using Klaviyo with Segment
If you are looking to do more with your Shopify and Klaviyo data, consider Segment. Littledata's Shopify source for Segment automatically sends a rich data set for use with a range of Segment destinations.
Not only does our Segment connection get all of the post-click events into Segment, but it also sends any event associated with an email address onto Klaviyo as well -- providing a richer set of events, without a developer, than Klaviyo's own Shopify event tracking. For example, you can retarget users in Segment who have purchased a certain value, or got certain products to a stage of the checkout -- all without writing a line of code.
Read more about how Littledata's Segment connection works, and check out the latest updates to our Shopify source for Segment. The connection now supports analytics destinations such as Mixpanel, Vero and Kissmetrics, and email marketing destinations including Klaviyo, Hubspot and Iterable.