15 Most Common Enhanced Ecommerce Issues
Enhanced Ecommerce belongs to the most powerful features of Google Analytics. Are you confident about your Enhanced Ecommerce implementation and data in Google Analytics?
I can say it’s definitely not an easy implementation and you will probably face many challenges along the way. But, it’s all worth it!
The Google Analytics implementation and configuration audit usually reveals a lot of gaps within the Enhanced Ecommerce setup.
And in this blogpost I will discuss 15 of those issues that I come across regularly.
Issue #1: No Time Invested in Background of Enhanced Ecommerce (Strategic)
I strongly recommend to dig through several resources (online) before you try to implement anything new on your website.
This is especially true for modules like Enhanced Ecommerce.
You will have a much higher risk to go wrong if you skip the important resources that are already available and try to do everything on your own.
Here are three resources to check out:
- Enhanced Ecommerce Guide for Google Tag Manager. (Simo Ahava)
- Enhanced Ecommerce (UA) Developers Guide. (Google)
- Top 15 Enhanced Ecommerce Implementation Tips. (Online Metrics)
Issue #2: Not Defining the Scope of Your Project First (Strategic)
The Enhanced Ecommerce module comes with a full set of reports in Google Analytics. You can find it by navigating to Conversion > E-commerce (make sure to first enable it in Google Analytics at the view level).
You will only see meaningful data in all reports if you implement all the Enhanced Ecommerce activities shown below:
- Product Impressions
- Product Clicks
- Product Detail Impressions
- Add / Remove from Cart
- Promotion Impressions
- Promotion Clicks
However, the good thing is that you don’t have to do everything in one time. I actually often recommend splitting the implementation in two or sometimes even more parts.
Here is how I usually go about it (working backwards):
- Phase 1a: purchase and checkout.
- Phase 1b: add / remove from cart and product detail impressions.
- Phase 2: product clicks and impressions.
- Phase 3: rest of actions (if applicable).
Large companies – with enough development resources and knowledge – can implement phase 1a and 1b at the same time.
Note: tracking refunds can be very challenging as refunds are sometimes processed months after the initial purchase (and completely in backend).
Issue #3: Not Being Realistic About Implementation Time (Strategic)
I hope by now you understand that implementing (the entire) Enhanced Ecommerce module is not something to fix in a day.
There might be plugins out there offering some help for your specific store, but still you need some time to carefully plan everything.
Implementation time varies, but you need commitment from developers and the marketing team to get the job done. Be realistic upfront when planning out all activities and better to start collecting data one week later than collecting wrong data in your Google Analytics account.
We will talk about several Google Tag Manager issues soon, but let’s first discuss three Google Analytics configuration mistakes.
Issue #4: Not Enabling Enhanced Ecommerce (GA)
Google Analytics will only show you Enhanced Ecommerce date if you enable the correct settings at the view level.
Here is an example of the Google Demo Store:
Make sure to configure both settings as “ON”.
Issue #5a: Implementing the Wrong Checkout Steps (GA)
You have the option to implement and configure checkout details as part of the Enhanced Ecommerce module.
This requires both work on the GA as well as GTM side. The GA is the easy part, but still often goes wrong.
“In Google Analytics, you only need to define the steps that you have identified and implemented as checkout steps. And never include the purchase.”
Here is a good example from Google:
Two things to keep in mind:
- Don’t implement / configure the cart page or action as a checkout step.
- Never add the purchase to the GA Enhanced Ecommerce configuration.
Issue #5b: Not Implementing Checkout Labels (GA)
This is something you want to avoid:
Always add labels for the checkout steps that you have identified and implemented.
The Google Analytics setup part is easy; many more issues can occur in relation to GTM and the dataLayer implementation (most companies choose that implementation option).
Issue #6: Using the Wrong Universal Analytics Tag (GTM)
Create a Universal Analytics tag and set the Track Type to Transaction.
This is what you should do when you want to implement standard Ecommerce (not recommended).
You should always choose Enhanced Ecommerce, even if you only want to implement the purchase action.
For Enhanced Ecommerce, make sure to send all information either with a pageview or event tag to Analytics. And don’t forget to enable Enhanced Ecommerce features. Here you can review an example:
Issue #7: Incorrectly Applying the Non-Interaction Setting (GTM)
You need to define the “non-interaction” setting for all events that you set up via GTM.
Here is an example of tracking a “product click” action:
This is set up correctly as a “product click” is indeed an interaction that should impact (lower) the bounce rate of a particular page.
Be mindful when using events to convey EE data to Google Analytics.
“Product detail page event: a visitor lands on a product detail page and immediately leaves the website. This event – showing the product detail page – shouldn’t impact bounce rate. Non-interaction should be set to true to accommodate for this.”
- The advantage of using events to convey EE data is that debugging in Google Analytics is more easy. Also, for most of you if will be easier to apply segmentation to certain Enhanced Ecommerce actions.
- The advantage of using pageviews to convey EE data is that you don’t send extra hit to Google Analytics. Something to consider if you are close to the GA hit limit / not on a paid plan.
Issue #8: Triggering Duplicate Pageviews (GTM)
As mentioned above you can choose to send Enhanced Ecommerce data to Google Analytics via an event or pageview tag.
Maybe you want to limit the hits sent to GA and you decide to use pageviews to convey Enhanced Ecommerce data.
Here is how you can prevent this to happen in your account (two sample tags):
You will generate two pageviews for each product detail page visit if you don’t modify the GTM setup.
Therefore you need to add an exclusion trigger to the GA – Pageview – All Pages tag to prevent it from firing on a product detail page (or any other page within your Enhanced Ecommerce implementation).
The best way is to set it up on the page level so that the Exception Event matches the Trigger Event.
In the example above the duplicate pageview won’t occur as there is an exception set up on “Page View – Product Detail”. It means that only the “GA Ecommerce – Product Detail” tag will fire on PDPs.
Issue #9: Directly Using GTM to Send Product-Level Custom Dimension (GTM)
I have seen several GTM setups where these product-scoped attributes where included in a GTM tag. This won’t work though!
These are extra data points that can and should be added directly into the objects within a products array, example of Simo Ahava below.
In this example, dimension5 is in the object within the products array.
Issue #10: Sending Duplicate Transaction Data (GTM)
I have come across many cases where duplicate transactions are stored in Google Analytics.
An example (custom report) is shown below:
The screenshot above indicates there are multiple transactions captured under the same Transaction ID.
This will negatively impact many data points in Google Analytics. Google Analytics is not really capable to deduplicate transactions by itself.
Two options to solve this issue:
- Make sure the developer activates the tracking code (or dataLayer.push) one time per transaction.
- Implement a GTM solution to prevent duplicate transactions in Google Analytics.
Issue #11: Not following the right EE structure and naming conventions (Data Layer)
Here is how Enhanced Ecommerce is most often implemented:
- Ecommerce date is pushed to the Data Layer by a developer (e.g. product detail impression, purchase etc.).
- The Universal Analytics Tag (with Enhanced Ecommerce enabled) sends the data to Analytics (via pageview or event tag).
However, it is crucial to know that the develop needs to send the ecommerce data in the right format and use proper naming conventions.
Three rules for the “dataLayer.push”:
- An ecommerce object that contains data related to a particular funnel step / action you want to track must be present.
- The name of the action is required and should not be modified.
- E.g. detail, add, purchase.
- Related data to a particular action should be pushed to Google Analytics.
Here is a correct (add to cart) example from Simo Ahava’s blog:
The example includes an ecommerce object, the name of the action (“add” in this case) and related (product) data to that action.
The dataLayer.push does not have to include all fields shown above, some are optional. For example, “variant” is an optional field. Ensure that the developer always uses the right names (attribute) when referring to a particular item. Otherwise, it won’t work.
Issue #12: Not Sending Product-Level Information in the Entire Funnel (Data Layer)
Consistency is really key when it comes to Enhanced Ecommerce.
Here is an example:
“The developer sends product details such as product variant and brand in a Product Detail View. In that case, you will want to send these with all other relevant actions (e.g. Add to Cart, Checkout and Purchase) as well.”
You will miss these data points on pages other than the PDP if you don’t add it to every step of the funnel.
There is very limited automatic persistence or attribution when it comes to Enhanced Ecommerce, find out more here.
Issue #13: Unclear and Inconsistent Product Category Structure (Data Layer)
Again and as a reminder, consistency is key!
The category in traditional Ecommerce had just one layer where you could store the category information. However, within Enhanced Ecommerce, you can have five layers/levels of product category data.
Required: Send the category with every single product in all funnel steps you want to query against.
Here you can see there are potentially five product category levels you can implement.
The category to which the product belongs (e.g. Apparel). Use / as a delimiter to specify up to 5-levels of hierarchy (e.g. Apparel/Men/Shorts).
- Product Category Level 1: Apparel
- Product Category Level 2: Men
- Product Category Level 3: Shorts
And here is a quick code example:
It can be very useful, since bringing this hierarchy into your product category implementation allows you to analyze product category performance on many different levels.
Issue #14: Mixing Up Checkout and CheckoutOption (Data Layer)
Enhanced Ecommerce allows you to send multiple pieces of information in relation to the checkout:
- Checkout step.
- Checkout option.
Make sure to send the checkout option always after the corresponding checkout Step has been sent. Otherwise it won’t work!
You can use the checkout option hit to send extra information about a specific checkout step.
For example, if checkout step 3 is where the user chooses the payment method, you’ll want to send checkout step 2 when the user first lands on the payment method selection page. Then, after the user clicks or selects the payment method, you can send the checkout option hit with payment details.
Issue #15: Not Running Tests Properly (Debugging)
Many times companies implement Enhanced Ecommerce with all its features in one time and without proper testing.
I highly recommend taking a different approach and careful plan the rollout of Enhanced Ecommerce first.
Also, you really need to test before go-live. Preferably first in a testing environment and after again in the live environment. Fixing bugs in the testing environment first is crucial.
In short, take the time when rolling out Enhanced Ecommerce!
Enhanced Ecommerce is one of the greatest features of Google Analytics. And as you have seen, it can be a great challenge to implement correctly.
You will have a head start if you apply the learnings from this blogpost and solve the most common Enhanced Ecommerce issues.