Big changes in ecommerce: what’s new and how to update your current tracking

Tag Manager

Analytics

In May 2023, we are excited to announce the launch of a new ecommerce setup that will include several enhancements to improve your online store’s reporting. Our new setup will feature new dimensions, metrics and product scope, along with several other convenient functionalities that are designed to make your reporting better.

If you’re currently using an ecommerce setup on your site, we highly recommend that you switch to our new setup to take advantage of the added functionalities. However, please note that the old setup will still continue to work.

Here’s a closer look at what’s new and what’s changed in our new ecommerce setup.

Product scope

Our new setup offers a new product scope, which is an addition to our existing session scope and event scope. The product scope lets you use dimensions and metrics related to products to get a deeper understanding of how they are performing. We use it when a report or its filter includes at least one product-scoped dimension. However, when that product-scoped dimension is converted into a metric, the product scope is no longer used. The product scope is now available in all reports, including custom reports, web API and raw data.

While the new product scope offers more precise reporting, it’s important to note that certain combinations of dimensions and metrics are not possible due to conflicting scopes. If you use a product-scoped dimension, the following metrics can’t be used:

  • Average, median and sum calculated from a session-scoped dimension (Example: average session time)
  • Average, median and sum calculated from an event-scoped dimension (Example: sum of revenue)

On the other hand, if you use a session-scoped or event-scoped dimension, you can freely use metrics calculated from product-scoped dimensions, such as average product price or sum of product revenue.

Note: For more about conflicting scopes, see this article.

New dimensions and metrics

We are introducing several new dimensions and metrics that will help you better analyze your online store data. Here are two full lists of the added items.

New dimensions

Dimension name Description Category Scope
Adds to cart in session The number of adds to the cart during a session. Ecommerce Product
Product brand The brand of the product in your online store. Ecommerce Product
Product category A category that includes all product category levels in your online store. Example: Clothes/Men/T-shirts. Ecommerce Product
Product detail views in session The number of product detail views during a session. Ecommerce Product
Product variant The variant of the product in your online store. Example: color and size. Ecommerce Product
Removes from cart in session The number of removes from the cart during a session. Ecommerce Product

Note: See the full list of ecommerce dimensions.

New metrics

Metric name Description Category
Adds to cart The number of times shoppers added products to their carts. Ecommerce
Cart abandonment rate The percentage of sessions during which shoppers abandoned their carts. Cart abandonment rate = Sessions with abandoned cart / Sessions * 100%. Ecommerce
Cart-to-detail rate The percentage counted as: Product adds to cart / Product detail views * 100%. This metric helps you gauge how product details affect cart additions. Ecommerce
Order-to-detail rate The percentage counted as: Orders / Product detail views * 100%. This metric helps you gauge how product details affect product sales. Ecommerce
Product detail views The number of times shoppers viewed the product detail page. Ecommerce
Removes from cart The number of times shoppers removed products from their carts. Ecommerce

Note: See the full list of ecommerce metrics.

Renamed dimensions and metrics

We also renamed a few dimensions and metrics to make the reports more consistent and easier to read. Here are two full lists of what has changed.

Renamed dimensions

Old dimension name New dimension name Description Category Scope
Ecommerce conversions in session Orders in session The number of orders placed during a session. Ecommerce Session
Lost revenue Abandoned cart value The potential revenue (excluding discounts, shipping and tax) that your online store is losing due to abandoned carts. An abandoned cart happens when a shopper places products in a cart but doesn't complete the purchase. Ecommerce Event
Price Product price The price of the product. Ecommerce Product
Quantity Product quantity The total number of products. When a customer orders two iPhone 14s, the product quantity will be 2, and the unique product count will be 1. Ecommerce Product
Revenue (discount) Discount The total value of discounts included in the order. Ecommerce Event
Revenue (shipping) Shipping The total shipping cost of the order. Ecommerce Event
Revenue (subtotal) Subtotal The total order value. Doesn't include shipping and discounts. Ecommerce Event
Revenue (tax) Tax The total tax included in the order. Ecommerce Event
Unique item count Unique product count The number of unique products. When a customer orders two iPhone 14s, the product quantity will be 2, and the unique product count will be 1. Ecommerce Event

Note: See the full list of ecommerce dimensions.

Renamed metrics

Old metric name New metric name Description Category
Ecommerce conversions Orders The total number of orders placed in your online store. An order is placed when a shopper completes the checkout process and pays for the product. Ecommerce
Ecommerce abandoned carts Abandoned carts The total number of abandoned carts. An abandoned cart happens when a shopper places products in a cart but doesn't complete a purchase. Ecommerce
Ecommerce conversion rate Order rate The percentage of sessions during which shoppers completed their orders. Order conversion rate = Sessions with order / Sessions * 100%. Ecommerce

Note: See the full list of ecommerce metrics.

Deprecated metrics

Finally, we decided to remove one metric because it was duplicated.

Deprecated metric New metric
Total quantity Transform the Quantity dimension to Sum of quantity.

New shopping stage

We also added a new value for the shopping stage dimension: Viewed product details. If a visitor enters a page with product details and doesn’t add or remove anything from their cart or place an order, their session will end at this stage.

Note: Make sure you track the Product detail view event so that the shopping stage can be assigned accurately.

New events

In the new setup, we implemented three new events that will improve the tracking of your online store. Here they are:

  • Add to cart: Tracks one or many products added to the cart. This event fuels the following metrics with data: Adds to cart, Cart-to-detail rate, Adds to cart in session (a dimension that can be transformed to sum, average, median, min, max). You can use it in all kinds of reports, including a user flow and funnels.
  • Remove from cart: Tracks one or many products removed from the cart. This event supplies the following metrics with data: Removes from cart and Removes from cart in session (a dimension that can be transformed to sum, average, median, min, max). You can use it in all kinds of reports including a user flow and funnels.
  • Product detail view: Tracks views of the product detail page, allowing you to report product-scoped data like name, category, brand, variant and SKU that’s not available in regular page views. Data for the following metrics is sourced from this event: Product detail views, Product detail views in session (a dimension that can be transformed to sum, average, median, min, max), Cart-to-detail rate and Order-to-detail rate.

    Note: If you use a product-scoped dimension with page views, the number of page views will be 0 because page views are not in the product scope.

    Note: This event won’t be treated as an action used in our pricing.

New tracking methods and tags

The new setup comes with new tracking methods and tags, which we highly recommend implementing to take advantage of all the updates and added functionalities. However, the old methods will still work if you choose to continue using them.

Here’s a list of the new JS methods:

Here’s a list of the new tags we added:

ecommerceCartUpdate() is now optional

The ecommerceCartUpdate() method now only needs to be used to initialize the cart if the user abandoned it in the previous session. It’s especially useful in cases when your online shop remembers cart content. Once you use the ecommerceCartUpdate() method, you can follow it with the ecommerceAddToCart() and ecommerceRemoveFromCart() methods.

In the pervious setup, the cart update method had to be called with each cart change.

Note: Always use the ecommerceAddToCart() and ecommerceRemoveFromCart() methods after the ecommerceCartUpdate() method. If you use them in a different order, the ecommerceCartUpdate() method will erase any adds or removes you made to the cart.

Product deduplication

With the new setup, we’ve also made changes to our product deduplication process. Now a unique identifier called a hash is created based on SKU, name, price, category, brand and variant to avoid merging products into one entry. Products will not be merged as long as there is at least one difference in the listed elements.

The old setup used to merge products with the same SKU.

Uniqueness of the order ID

To improve report consistency and readability, we’ve also made changes to the Order ID. Now, you can only track the same Order ID once during a single session. If you try to track multiple orders with the same ID, it’s considered a problem with the setup and won’t be included in the report. We treat this as a broken event.

Extracting values from nested object keys in a data layer

We’ve also made it easier for you to fetch product data from a data layer by introducing the ability to extract values from nested object keys and array items. Previously, you had to create custom variables because data layer variables could only access values from the main keys. However, with the recent changes, you can directly refer to nested object keys and array items in a data layer variable.

For example, if you have the following data layer:

dataLayer.push({
  "product": {
      "price": "100"
  }
})

To extract the nested price value, you can simply use product.price.

This functionality is similar to the one defined as Data Layer Version 2 in Google Tag Manager. You can use it in Piwik PRO without making any changes to the data layer structure.

Refreshed ecommerce reports

In addition to the new ecommerce setup, we’ve also made significant improvements to our ecommerce reports. The new version is easier to read and gives you a better idea of what’s happening in your online store. With this update, you can quickly understand how your products are performing and what your customers like. This will help you get the information you need to make better decisions and optimize your online business.

You can see the new ecommerce reports in Menu > Analytics > Ecommerce.

Ecommerce reports in Piwik PRO

With the new setup, we recommend taking the following steps:

  1. Remove all old tracking methods from your online store.
  2. Apply the new tracking methods to your online store.
  3. Discover new ecommerce reports in Menu > Analytics > Ecommerce.

Was this article helpful?

Technical support

If you still have any questions, visit our community.
There’s always someone happy to help!

Back to help center