---
type: "product"
id: 329
url: "https://prestadev.pl/en/google-tag-manager-pro-module-for-prestashop.html"
markdown_url: "https://prestadev.pl/en/markdown/product/329.md"
title: "Google Tag Manager Pro module for PrestaShop"
description: "Implement GTM in PrestaShop with e-commerce DataLayer, GA4 events, and Consent Mode v2. Export the container and control purchase and refund events in the panel."
image: "https://prestadev.pl/2150/google-tag-manager-pro-module-for-prestashop.jpg"
sku: "PDGTMPRO"
brand: "PrestaDev.pl"
price: 246.00
price_tax_excluded: 200.00
currency: "PLN"
tax_included: true
availability: "in_stock"
is_pack: false
customization_required: false
condition: "new"
categories: ["Advertising and analytics", "Google integrations", "Main", "PrestaShop integrations", "PrestaShop modules"]
language: "en"
updated: "2026-04-13"
---

# Google Tag Manager Pro module for PrestaShop

**PD Google Tag Manager Pro** is an advanced PrestaShop module for implementing **Google Tag Manager** with full **e-commerce DataLayer**, **GA4** integration, and support for **Google Consent Mode v2**. The module automatically embeds the GTM code in the *head* section and in the *noscript* part after the opening *body* tag, can work with a **second GTM container**, and also supports a **server-side GTM** address. On the storefront, it sends standard GA4 events for the purchase journey as well as additional supporting events such as **login**, **sign\_up**, **search**, **search\_no\_results**, **page\_error**, **checkout\_progress**, **scroll\_depth**, **time\_on\_page**, and **cart\_abandonment**. In the payloads, it passes product data, categories, variants, prices, discounts, availability, GTIN/MPN identifiers, and on the product page also the rating and number of reviews, if product comments are available in the store. The module also supports **Enhanced Conversions**, **Google Ads Dynamic Remarketing**, supporting variables for **Meta Pixel**, **TikTok**, and **Pinterest**, while refund events are queued and sent to GA4 without generating a back-office page view. In the administration panel, you get per-store configuration, GTM container export, a signed debug preview link, and a log of purchase and refund events. This is a solution for stores that want to run precise marketing and analytics measurement in PrestaShop without building the entire data layer from scratch.

## Description

### **Module features**

 - Automatic implementation of **Google Tag Manager** in PrestaShop, including the *head* and *noscript* code.
- Support for **one or two GTM containers** within a single store installation.
- Ability to specify a **server-side GTM URL** for first-party data collection.
- Support for **14 standard GA4 e-commerce events**, including view\_item, add\_to\_cart, begin\_checkout, purchase, and refund.
- Additional events supporting user behavior analysis: **search**, **search\_no\_results**, **page\_error**, **checkout\_progress**, **scroll\_depth**, **time\_on\_page**, and **cart\_abandonment**.
- Configurable **item\_id**: product ID, ID with variant, SKU, or EAN13, to match data with the Google Merchant Center feed.
- Extended product data in the DataLayer: brand, categories, variant, price, discount, availability, **GTIN**, and **MPN**.
- Custom DataLayer variables for segmentation, including **page\_type**, **customer\_logged**, **customer\_group**, **cart\_value**, hashed **customer\_id**, email hash, country, newsletter, and customer account age.
- Built-in **Google Consent Mode v2** with granular default signals for analytics\_storage, ad\_storage, ad\_user\_data, and ad\_personalization.
- Detection of popular cookie consent solutions, including **PD Cookie Pro**, **LGCookiesLaw**, **Axeptio**, and **Cookiebot**, as well as a simple fallback banner when the external runtime is unavailable.
- Export of a **ready-to-use GTM container** with GA4 tags, triggers, and helper variables for Google Ads.
- Built-in **debug panel** and a signed link to preview the front office with active debug valid for 6 hours.

 ### **Benefits for your store**

 - **Faster analytics implementation**, because the module builds the data layer and container export without manually assembling everything in GTM from scratch.
- **Better marketing data quality** thanks to consistent e-commerce, checkout, promotion, remarketing, and refund events.
- **Greater compliance with Google requirements** thanks to support for Consent Mode v2, Enhanced Conversions, and Dynamic Remarketing.
- **Easier diagnostics** thanks to the event log, debug panel, and signed front-office preview.
- **Greater implementation flexibility** through support for a second GTM container, server-side GTM, and cross-domain tracking.
- **Better readiness for advertising campaigns**, because the module provides helpers for Google Ads, Meta, TikTok, and Pinterest.
- **Safe operation in multistore**, because key runtime, consent, and export settings are stored per store.
- **Refund support** — a refund can be queued after a credit slip is created. Optional server-side sending via Measurement Protocol requires automation configuration, Measurement ID, API Secret, preserved customer context, consent, and a CRON task.

 ### **Module functionalities**

 - Tracking of product pages, listings, cart, checkout, order confirmation, and 404 error pages.
- Support for **add\_shipping\_info** and **add\_payment\_info** events via AJAX based on the actual delivery and payment selection.
- Support for **view\_promotion** and **select\_promotion** for promotions, including a built-in scenario for the price promotions page and custom `data-pdgtmpro-promotion` attributes.
- Recording of **login** and **sign\_up** events after customer authentication and registration.
- Support for **add\_to\_wishlist** based on click or a fallback hook for the wishlist module.
- Building remarketing payloads with **google\_tag\_params** and canonical helpers **pdgtmpro\_ads\_event**, **pdgtmpro\_ads\_value**, and **pdgtmpro\_ads\_items**.
- Passing **user\_data** and **enhanced\_conversion\_data** payloads for Enhanced Conversions on purchase.
- Generating helper DataLayer variables for **Meta Pixel**, **TikTok Events API**, and **Pinterest Tag**.
- Normalization of the domain list for **cross-domain tracking** and storing it in the module configuration.
- Maintaining a **purchase and refund event log** in a dedicated table and automatically cleaning entries older than 90 days.

 ###
Link to the module demo:

 **Demo admin panel:**
[https://moduly-prestashop.eu/pdgoogletagmenagerpro/admin-dev](https://moduly-prestashop.eu/pdgoogletagmenagerpro/admin-dev)

**Demo front-end panel:**
[https://moduly-prestashop.eu/pdgoogletagmenagerpro](https://moduly-prestashop.eu/pdgoogletagmenagerpro)

  ## Guides and documentation

Learn the implementation context and limitations described in the guide. You can find the detailed scope of this product in the description above.

- [No purchases in GA4: how to check sales tracking](https://prestadev.pl/pl/blog/baza-wiedzy/ga4-prestashop-brak-zakupow-pomiar-sprzedazy)

   ### What needs to be configured after installing GTM Pro 2.3.4?

The exported container requires import, verification, and publication in GTM. Optional server-side purchase recovery and refund automation require enabling the appropriate module options, Measurement ID, API Secret, saved customer context and consent, as well as a CRON task. A custom gtm.js download URL does not automatically launch the server-side GTM infrastructure.

In this version, the browser-side purchase is generated on order confirmation; it does not use the same paid-status definition as GA4 Pro. See the [comparison of GA4 architecture via module and GTM](https://prestadev.pl/pl/blog/baza-wiedzy/ga4-modul-czy-google-tag-manager-prestashop). If you only need container embedding, check the [older basic GTM module](https://prestadev.pl/pl/google-tag-manager-dla-prestashop.html).

You can find the license, trial copy, and update terms in [§7 of the store Terms and Conditions](https://prestadev.pl/pl/content/7-regulamin-sklepu#licencje).

  ## After importing the container, check publication and events

The export from the module is material for GTM configuration. Select the correct workspace, check the tags and rules, and then publish the verified version. Compare this scope with [basic GTM embedding](https://prestadev.pl/pl/google-tag-manager-dla-prestashop.html) and [direct GA4 Pro integration](https://prestadev.pl/pl/google-analytics-4-pro-modul-dla-prestashop.html).

### What should be checked before launch?

- In preview mode, check the data for the product, combination, and purchase process, as well as the absence of a second emitter for the same events.
- Separate browser-side purchase from optional server-side recovery. Measurement Protocol and CRON requirements apply to a specific path.
- Changing the gtm.js download URL does not mean the GTM server is launched automatically. The architecture must match the actual configuration.

## Features

| Feature | Value |
| --- | --- |
| Prestashop 9.x support | Yes |
| Support for Prestashop 8.x | Yes |
| Prestashop 1.7.x support | Yes |
| Free support | Yes |
| Free updates (1 year) | Yes |
| Easy Installation | Yes |

## Categories

- Advertising and analytics
- Google integrations
- Main
- PrestaShop integrations
- PrestaShop modules

## Questions and answers

### What is the PD Google Tag Manager Pro module used for?

Language: en

The module is used to implement Google Tag Manager in a PrestaShop store together with an advanced DataLayer layer for e-commerce. It embeds the GTM code in the head section and as a noscript immediately after the opening body tag, and then sends purchase events, product data, consent signals, and additional analytical events for use in GTM, GA4, and ads.

### What standard GA4 e-commerce events does the module support?

Language: en

The module supports 14 standard GA4 e-commerce events: view\_item, view\_item\_list, select\_item, add\_to\_cart, remove\_from\_cart, add\_to\_wishlist, view\_cart, begin\_checkout, add\_shipping\_info, add\_payment\_info, purchase, refund, view\_promotion, and select\_promotion. Some of them are triggered on the PHP side, while others are triggered via JavaScript and AJAX based on the customer's actual actions in the store.

### What additional events beyond standard e-commerce can the module send?

Language: en

In addition to standard e-commerce, the module also sends search, search\_no\_results, page\_error for 404 pages, login, sign\_up, checkout\_progress, scroll\_depth, time\_on\_page, and cart\_abandonment. This allows you to analyse not only sales, but also search, user behaviour, and points where traffic drops off.

### Does the module support two GTM containers and server-side GTM?

Language: en

Yes. In the configuration, you can provide the primary GTM Container ID, an optional second GTM container, and the server-side GTM address. The second container is useful, for example, when the marketing and analytics teams use separate containers, and the server-side URL allows you to replace the default googletagmanager.com domain with your own endpoint.

### How does Google Consent Mode v2 work in this module?

Language: en

The module can send the default Google Consent Mode v2 signals even before GTM is loaded. You configure the values for analytics\_storage, ad\_storage, ad\_user\_data, and ad\_personalization separately. If the store does not have an external runtime consent solution, the module can display a simple Accept/Reject banner and update the consent signals accordingly.

### Which cookie consent solutions can the module work with?

Language: en

The module code detects and can use the consent runtime for pdcookiepro, lgcookieslaw, axeptiocookies, and cookiebotconsent. For PD Cookie Pro, the module does not add a second consent layer, but only respects the existing runtime. When no compatible module is available, it can launch its own fallback consent banner.

### What product data is sent to the DataLayer?

Language: en

The module passes, among others, item\_id, item\_name, price, discount, item\_brand, up to five category levels, item\_variant and quantity. Optionally, it can also add item\_availability, item\_gtin and item\_mpn. On the product page, it also retrieves item\_rating and item\_review\_count if a product comments table exists in the database and ratings are available for the product.

### Can I match the item\\\_id to the Google Merchant Center feed?

Language: en

Yes. The module allows you to choose what the item\_id should be: product ID, product ID with combination ID in two separator variants, SKU reference, or EAN13. This is important for Dynamic Remarketing, because the identifier in the DataLayer should correspond to the Product ID in the Google Merchant Center feed.

### Does the module support Google Ads Enhanced Conversions and Dynamic Remarketing?

Language: en

Yes. When purchasing, the module can push user\_data and enhanced\_conversion\_data payloads to the DataLayer for Enhanced Conversions, as well as remarketing helpers for Google Ads. Additionally, it maintains compatibility with the legacy google\_tag\_params and its own variables pdgtmpro\_ads\_event, pdgtmpro\_ads\_value, and pdgtmpro\_ads\_items.

### Does the module export a ready-made GTM container?

Language: en

Yes. In the Debug & Export tab, you can provide the GA4 Measurement ID and download a JSON file for import into Google Tag Manager. The export includes the GA4 configuration tag, GA4 event tags with triggers, the base Google Ads Conversion and Dynamic Remarketing tags, as well as the auxiliary Data Layer variables required for implementation.

### Does the module also transmit data for Meta Pixel, TikTok, and Pinterest?

Language: en

Yes. The module has separate switches for Meta Pixel, TikTok Events API, and Pinterest Tag. Once enabled, pre-mapped variables for these platforms are sent to the DataLayer, e.g. content\_ids, value, and num\_items for Meta, contents for TikTok, and product\_id, product\_name, product\_price, and product\_quantity for Pinterest.

### How does the module track checkout and cart abandonment?

Language: en

On the checkout page, the module listens for changes to the delivery and payment methods, retrieves the current cart data via AJAX, and sends add\_shipping\_info and add\_payment\_info. Additionally, it can record checkout\_progress for subsequent steps as well as cart\_abandonment when the user leaves the cart or checkout page with products still in the cart.

### How does the debug panel and preview link work?

Language: en

When the Debug option is enabled, the module panel displays a real-time preview of DataLayer events on the front end, including the event name, timestamp, and full JSON payload. The back office can also generate a signed link to the front-office debug preview. Such a link works without an active employee session and remains valid for 6 hours.

### How does the module handle refunds and the event log?

Language: en

Purchases and refunds are saved to the module’s dedicated log table. A refund can be queued after creating a credit slip and then sent to GA4 from a lightweight back-office controller without generating a back-office page\_view. In the configuration and in a separate controller, you can browse the Event Log, and entries older than 90 days are automatically cleaned up.

### Does the module work in multistore mode?

Language: en

Yes. The module code maintains configuration per store and ensures that active stores have a complete set of their own settings. This applies, among other things, to the GTM ID, Consent Mode, export settings, and runtime flags. In the context of multistore, the module requires indicating a specific store for configuration so as not to mix data between stores.

### Which versions of PrestaShop and PHP is the module compatible with?

Language: en

According to the declaration, the module supports PrestaShop from version 1.7.0.0 to 9.99.99, and the code has been prepared in a style compatible with PHP 7.x and 8.x. The module uses the classic PrestaShop module system, does not require Composer, and includes its own helper classes for building the DataLayer, products, cart, and consent.

