Google Analytics Enhanced Ecommerce GA4
Google Analytics Enhanced Ecommerce GA4
Google Analytics Enhanced Ecommerce GA4
The add-on sends e-commerce events to Google Analytics 4: product and product list views, cart actions, checkout steps and the purchase itself, as well as customer login and sign-up. GA4 uses these events to build sales funnel, product performance and traffic source reports.
Events are sent one of two ways, at your choice: directly via Google tag (gtag.js) or through a Google Tag Manager container. The add-on does not modify theme templates and requires no code changes, so it is compatible with any theme.
This documentation describes add-on version 1.5.0. Settings and the set of events may differ in earlier versions — the current version is always available in the "License management" section of our website.
The add-on is compatible with CS-Cart 4.3.1 and newer, with such editions as CS-Cart, CS-Cart Ultimate, Multivendor, Multivendor Plus, Multivendor Ultimate. The add-on does not modify theme templates, so it works with any theme. In case of a conflict with your theme, please contact our support center.
Starting from version 1.5.0 the add-on is compatible with PHP 8.3.
After success payment, your order will be automatically marked as Paid within a few minutes. Once order changed to Paid status - add-on License activation passed success and you will received an e-mail with confirmation the receipt of payment and a second e-mail with a download add-on link. You can also download the add-on in our License Management section of our website. To install the add-on on your website, please follow these steps:
- Download the latest version of the add-on on our website in the "License Management" section or via the link sent by e-mail.
- Go to Add-ons → Manage Add-ons and in the gear button, select Manual Installation.
- Select the downloaded file and complete the installation of the add-on.
Add-on installation is completed. To go to the add-on settings page, select the installed add-on in the top menu Add-ons → CS-Commerce add-on
All add-on settings live on a single tab in Add-ons → CS-Commerce add-ons → Google Analytics Enhanced Ecommerce GA4.
Setting it up comes down to three steps:
- choose the connection method to Google Analytics 4 and enter the identifier;
- select which events to send;
- make sure the events reach GA4.
Each step is covered in its own subsection.
Connection method
Defines how the add-on sends events to Google Analytics 4:
- Google tag (gtag.js) — the recommended option. The add-on inserts the tracking code itself and sends events straight to GA4. All you need is the data stream identifier;
- Google Tag Manager — the add-on pushes events into the
dataLayerand you configure the tags inside the container yourself. Choose this option if the site already uses GTM for other tags or if a marketer manages the tags. The procedure is described in the "Connecting via Google Tag Manager" section.
GA4/GTM code is already installed on the site
Enable this if the tracking code is already added to the site by other means — through theme settings or a third-party add-on, for example. The add-on will stop inserting the code again but will keep sending events in the format of the selected connection method.
If the tracking code ends up on the page twice, GA4 will count page views and events twice. Check the storefront page source before enabling this setting.
Data stream identifier
An identifier like G-XXXXXXX from your Google Analytics account: Admin → Data streams → your web stream. The field is shown when the connection method is "Google tag" and the "GA4/GTM code is already installed on the site" setting is off.
Google Tag Manager container ID
An identifier like GTM-XXXXXXX from your Google Tag Manager account. The field is shown when the connection method is "Google Tag Manager" and the "GA4/GTM code is already installed on the site" setting is off.
Brand feature
An optional setting. CS-Cart has no dedicated "brand" field, so brands are usually stored as a product feature. Select that feature here and its value will be sent to GA4 in the item_brand field, making brand reports work without extra configuration. The value is taken in the default admin panel language.
Every event is toggled by its own checkbox. Event names follow the standard Google Analytics 4 e-commerce schema, so the built-in GA4 reports work without extra configuration. All events are enabled by default.
Catalog events
- View product (
view_item) — a product page has been opened; - View products list (
view_item_list) — a product list has been shown to the customer: a category, search results, a selection. The event is only sent when the list is actually displayed.
Cart events
- Add/remove to cart (
add_to_cart,remove_from_cart) — a product has been added to or removed from the cart, or its quantity has changed; - View cart (
view_cart) — the cart page has been opened; - Add to wishlist (
add_to_wishlist); - Begin checkout (
begin_checkout); - User selected shipping (
add_shipping_info) — sent at the moment a shipping method is selected at checkout; - User selected payment method (
add_payment_info) — sent at the moment a payment method is selected; - Placing an order (
purchase) — the order has been placed.
Customer events
- Login (
login); - Sign up (
sign_up).
How the amounts are calculated
In the purchase event the add-on sends the order total without the shipping cost, and passes shipping and tax in separate shipping and tax fields. This is what Google Analytics recommends: otherwise shipping ends up in revenue and the reports overstate the turnover.
This calculation applies starting from version 1.5.0. If you are upgrading from an earlier version, keep this change in mind when comparing revenue before and after the upgrade.
With the Google Tag Manager connection method the add-on only pushes events into the dataLayer. Sending those events to GA4 has to be configured inside the container — GTM does not do it on its own.
This is the most common reason behind "the add-on is enabled but there are no events in GA4": the container is connected but the tags inside it are not configured. If you do not need other tags in GTM, it is simpler to choose the "Google tag" connection method — then nothing needs to be configured.
What to do inside the container
- Create a Google configuration tag with your data stream identifier (G-XXXXXXX) and the Initialization — All Pages trigger;
- For every event create a custom trigger of the "Custom Event" type, using the event name from the "Events sent by the add-on" section —
view_itemorpurchase, for example; - Create a GA4 event tag for each of those triggers, passing the required parameters from the
dataLayer; - Check everything in GTM preview mode and publish the container.
Until the container is published, the changes are only visible in preview mode.
Once configured, make sure the events really reach Google Analytics 4.
- Open the storefront in a browser and walk through the customer path: product page → add to cart → checkout;
- In your Google Analytics account open Admin → DebugView or the Reports → Realtime report;
- Check that the events arrive with the expected names:
view_item,add_to_cart,begin_checkout,purchase.
If there are no events
- check that the add-on is enabled and the events you need are ticked in the settings;
- make sure the data stream identifier (or container ID) is filled in and belongs to the right property;
- if the Google Tag Manager method is selected — check that the tags inside the container are configured and the container is published;
- if the "GA4/GTM code is already installed on the site" setting is on, check that the code is really present in the page source;
- clear the CS-Cart cache and the browser cache, then repeat the check;
- browser ad blockers block event delivery — test in incognito mode with extensions disabled.
If the events still do not show up, please contact our support center.
In order to have access to add-on upgrades, you must have an active upgrade subscription. If the subscription period has expired, you will only have access to upgrades released before the expiration date of your subscription. You can renew your upgrades subscription in the "License Management" section on our website.
The add-on supports instant upgrades via the CS-Cart Upgrade Center. The built-in CS-Cart Notification Center (bell) will notify you about new versions release of the add-on. Upgrades via Upgrades Center will allow you to switch to a newer version without losing add-on data and settings.
Before start an upgrade process, it is highly recommended to make a full backup of the site (database and files) of your store using the server or hosting methods.
Upgrade through the Upgrade Center
- In the top menu, go to Administration → Upgrade Center;
- In the gear menu, click "Refresh available upgrades"
- Find and add-on on list of available upgrades and click the Download button and than Install button;
- Follow all the instructions that will be shown during the upgrade process;
- It is recommended to clear the CS-Cart templates cache after the upgrades are installed by deleting the var/cache folder on your server or adding the ctpl parameter to the address bar (example: https://domain.com/admin.php?ctpl).
Addon Reinstallation by uninstall old and install new:
Reinstalling an add-on means deleting the add-on's settings and data. Reinstallation will allow you to get a clean installation of the latest addon version. To reinstall the add-on with saving the add-on settings and data, please contact us via our Support Center to provide this service.
To completely reinstall an add-on without saving data, follow these steps:
- Go to Add-ons → Manage add-ons and find the old installed add-on.
- Click the delete button in the gear menu of the add-on.
- Download the latest version of the add-on on our website in the "License Management" section.
- Go to Add-ons → Manage add-ons and in the gear menu select Manual Installation. Select the previously downloaded file and complete the installation of the add-on.
The technical support of the add-on is already included in its price. Before contacting the support center, please make sure you are using the latest released version of the add-on. Old versions of the add-on are not supported by technical support.
To use our technical support, follow these steps:
- On our support center site https://helpdesk.cs-commerce.com/, log in with your account;
- Click on the "Create ticket" button;
- Fill in all the required fields and create ticket (you will receive a confirmation email);
- Expect a response from a specialist (a notification will be sent to your e-mail about the response) in accordance with the regulations of the technical support service.
If you have not received an answer within the time frame specified in the regulations, write us a message to the e-mail [email protected] with the subject of the ticket and we will try to resolve your issue as soon as possible.
Technical support via chat on the site, direct phone calls or e-mail letters is not provided. All help discuss goes through the support center. Carefully study the documentation for the add-on and the terms of technical support before creating a ticket. We recommend that you familiarize with the general restrictions:
- Fragments of code or some files of an add-on may have a private (encoded) part. The coded part does not create problems on add-on customizations;
- The add-on will work only on those domains that are specified in the user's license. If you try to use the solution the domains of which are not included in the license, the add-on will be automatically disabled;
- Installing on local machines is not allowed by the licensing system. For the add-on to work on an additional domain (alias), specify this alias on the license management page. Up to three aliases are allowed per domain for testing and development purposes. You can change the main license domain yourself on the license management page.
To have possibility to add or change license domains and aliases, the upgrade subscription must be active. To change the license domain of an expired upgrades subscription, you must first renew your subscription.
Version 1.5.0 of September 10, 2026
- [+] Added a choice of connection method to Google Analytics 4: directly via Google tag (gtag.js) or through Google Tag Manager, with detailed explanations in the add-on settings;
- [+] Added PHP 8.3 compatibility;
- [!] Fixed event delivery with the Google tag (gtag.js) method: events could fail to reach Google Analytics;
- [!] Fixed cart event accuracy: customer login/logout and service operations could produce spurious removal events, and quantity changes were counted incorrectly;
- [!] Fixed compatibility with page caching: with the cache enabled events could be lost or duplicated;
- [*] Shipping and payment selection events are now sent at the moment of selection at checkout and are no longer duplicated; the product list view is sent only when the list is actually shown to the visitor; AJAX page updates no longer create repeated events;
- [*] Refined amount calculation in the events: the order total is sent without shipping, while shipping and tax are passed as separate fields, as Google Analytics recommends;
- [*] Updated the look of the add-on service blocks; basic add-on security updates.
Version 1.4.0 of April 16, 2026
- [+] Added selected payment and shipping method events;
- [*] Optimized the script: prevented data from being merged in the dataLayer;
- [*] Basic add-on security updates;
- [*] Added PHP 8.3 compatibility;
- [!] Fixed a PHP warning.
Version 1.3.1 of December 10, 2025
- [!] Fixed passing values in numeric data format.
Version 1.3.0 of December 8, 2025
- [*] Code optimization for better interaction.
Version 1.2.0 of December 2, 2025
- [!] Fixed the add-on settings issue on Ultimate editions;
- [*] Basic add-on security updates.
Version 1.1.1 of February 14, 2025
- [+] Added the ability to send the user's e-mail and phone number.
Version 1.1.0 of September 9, 2024
- [+] Added the ability to choose the code integration type.
Version 1.0 of September 5, 2024
This is the first release of the add-on