> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.poool.fr/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How to connect Poool Engage with GA4 via GTM?

Connecting Poool data with Google Analytics will allow you to get accurate results and refine your strategy according to your goals.

If you use **Google Tag Manager (GTM)** to send your data to **GA4**, we provide a code to implement to activate the connection.

This procedure involves three main steps:

* **Integrate** the connection into the Poool technical configuration.
* Configure GTM and GA4 to ensure proper data transmission.
* Validate in GA4 that the Poool event is present.

# Connecting Poool Engage and GTM

Start by implementing the following code in your Poool Engage configuration:

```
<script id="poool-engage" src="https://assets.poool.fr/engage.min.js" async></script>
<script>
function pushEvent(eventType, evt) {
    if (!evt || !evt.element || !evt.element.slug) return;
    const eventData = {
        event: 'poool_engage',
        engageAction: eventType,
        eventCategory: 'engage',
        engageLabel: evt.element.slug,
        nonInteraction: eventType === 'seen',
        ...(evt.id && { engageButtonID: evt.id })
    };
    window.dataLayer.push(eventData);
}
const script = document.getElementById('poool-engage');
script.addEventListener('load', function () {
    // Ensure dataLayer is initialized
    window.dataLayer = window.dataLayer || [];
    Engage.init('<your-app-id>')
    .on('click', (evt) => pushEvent('click', evt))
    .on('seen', (evt) => pushEvent('seen', evt))
    .on('destroy', (evt) => pushEvent('destroy', evt))
    .on('formSubmit', (evt) => pushEvent('formSubmit', evt))
    .autoCreate()
});
</script>
```
# Configuring the GTM space

Once you have added the corresponding lines to your code, you need to define a custom trigger in GTM associated with Poool. There are three essential steps to follow.

### 1/ Create your Data Layer variables

Click on **"Variables"** > **"New"**.

In the **"Variable Configuration"**, select **"Data Layer Variable"**.

Create the three variables below:

* eventCategory
* eventAction
* eventLabel

![](https://storage.crisp.chat/users/helpdesk/website/-/5/f/5/0/5f50f52b22503800/capture-decran-2026-04-14-a-14_nhayhg.png =278x600)

### 2/ Define a new tag

Click on **"Tags"** > **"New"** > **"Tag Configuration"**.

Choose the tag type **"Google Analytics"** > **"Google Analytics: GA4 Event"**.

In the **"Tag Configuration"** section, enter:

* Your **GA4 Measurement ID**
* Event name: `poool_engage`

In the **"Event Parameters"** section, you need to define the 3 event parameters and assign them the values of the variables defined in step 1:

* `event_category` => `{{eventCategory}}`
* `event_action` => `{{eventAction}}`
* `event_label` => `{{eventLabel}}`

![](https://storage.crisp.chat/users/helpdesk/website/-/5/f/5/0/5f50f52b22503800/capture-decran-2026-04-14-a-14_1mdl4xc.png)

### 3/ Define a custom event

Go to the **"Triggering"** section.

Choose **"Custom Event"** as the trigger type and name it `poool_engage`.

This trigger must now be associated with your Google Analytics tag.

![](https://storage.crisp.chat/users/helpdesk/website/-/5/f/5/0/5f50f52b22503800/capture-decran-2026-04-14-a-14_gcb88m.png)

# Finding the data in GA4

To find the data in GA4, you also need to declare the custom definitions in your GA4 account.

![](https://storage.crisp.chat/users/helpdesk/website/-/5/f/5/0/5f50f52b22503800/capture-decran-2026-04-14-a-14_kjq62n.png)

Name these 3 definitions: event_category, event_action and event_label.

Scope => event.

![](https://storage.crisp.chat/users/helpdesk/website/-/5/f/5/0/5f50f52b22503800/capture-decran-2026-04-14-a-14_1ukslgn.png =371x400)

# What information can be found in GA4?

### seen
The element was seen by the user (entered the browser viewport).

### click
The user clicked on a button / clickable component in the element.

### formSubmit
The user submitted a form.

### destroy
The user clicked on a button/image configured to destroy the element.