---
title: "Google Analytics 4, Google Ads and Tag Manager"
description: "Connect your store to Google Analytics 4, Google Ads and Google Tag Manager, and find the exact list of events your site sends to each of them."
url: https://www.ciklik.academy/en/parametres-marketing/google-analytics-ads-et-tag-manager/
lang: en
lastUpdated: 2026-10-09
---

# Google Analytics 4, Google Ads and Tag Manager

> Box store
>
> This page applies to box stores hosted by Ciklik. Using the PrestaShop module? [See the PrestaShop documentation](https://www.ciklik.academy/en/prestashop/).

Your store can send its data to three Google tools: Google Analytics 4 (GA4), Google Ads and Google Tag Manager (GTM). You only enter their IDs: Ciklik adds the scripts to every page of your site.

## Enter the IDs

1. Go to **Settings > Sites**, then click the **Edit** icon (pencil) of your site.

2. Open the **Marketing Parameters** tab.

3. Fill in the fields you need:

   - **Google Analytics ID**: the measurement ID of your GA4 web data stream, in the format `G-XXXXXXXXXX`. The `UA-123455` example shown in the field dates from Universal Analytics, which Google has shut down: do not enter a `UA-` ID anymore.
   - **Adwords Tag ID**: the ID of your Google Ads tag, in the format `AW-XXXXXXXXX`.
   - **Google Tag Manager**: the ID of your web container, in the format `GTM-XXXXXXX`.

4. Click **Update**.

> Caution
>
> The **Adwords Tag ID** field is only used when **Google Analytics ID** is filled in: the Google Ads tag is loaded by the same script as GA4. Without a GA4 ID, Google Ads receives nothing.

## What Ciklik installs

### With Google Analytics ID

Ciklik loads the Google tag (`gtag.js`) with your GA4 ID, then your Google Ads ID if it is filled in.

- Consent mode is declared “denied” by default, then switches to “granted” between half a second and one second after the page loads.
- The automatic page view is turned off (`send_page_view: false`). GA4 only receives the page views listed below, sent by the site at specific steps. To measure all your page views, add a GA4 Google tag in Google Tag Manager (see below).
- The script is loaded on every page, without waiting for the visitor’s choice in the cookie banner.

### With Google Tag Manager

Google Tag Manager lets you add your own tags (pop-ups, banners, analytics tools) without touching the site’s code. For Affilae affiliation there is no need: Ciklik installs its scripts itself.

Ciklik adds your container at the top of the `<head>` of every page, and its `<noscript>` version at the top of the `<body>`. Before the container, the data layer (`dataLayer`) receives:

- `default_consent`: `ad_storage`, `analytics_storage`, `ad_user_data` and `ad_personalization` consent set to `denied`;
- `update_consent`: the same set to `granted`, between half a second and one second later;
- `user`, only when the customer is logged in: `user_id`, `user_agent`, `email_hash` (SHA-256 hash of the email), `user_ip`, and `phone` (phone number of their latest address, in clear text) when it exists.

Once the tracking scripts are loaded, a `gdpr_accept_<service>` event is pushed for each active service, for example `gdpr_accept_analytics`.

> Avoid duplicates
>
> Pick a single way to install GA4. If you set up GA4 in Google Tag Manager, leave the **Google Analytics ID** field empty. Otherwise every event is counted twice. The same rule applies to the Facebook pixel and the TikTok pixel, which Ciklik already installs from the **Advanced trackers** tab.

## Events sent to Google Analytics 4

These events go straight to GA4 when the **Google Analytics ID** field is filled in.

| GA4 event           | When                                                             | Parameters                                                                                                                                                                        |
| ------------------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_view`         | Steps of the profile questionnaire and of plan customization     | `page_path`: page address followed by `#` and the step number                                                                                                                     |
| `page_view`         | Account created in the checkout                                  | `page_path`: `utilisateur-enregistre.html`                                                                                                                                        |
| `page_view`         | Address step displayed                                           | `page_path`: `page-livraison.html`                                                                                                                                                |
| `page_view`         | Address selected                                                 | `page_path`: `add_shipping_info`                                                                                                                                                  |
| `page_view`         | Carrier selected                                                 | `page_path`: `page-transport.html`                                                                                                                                                |
| `page_view`         | Payment form displayed                                           | `page_path`: `paiement-form.html`                                                                                                                                                 |
| `page_view`         | Order confirmation page                                          | `url`: `order-confirmation.html`                                                                                                                                                  |
| `sign_up`           | Account created in the checkout                                  | `email` and `eventId`: SHA-256 hash of the email                                                                                                                                  |
| `add_to_cart`       | Plan, add-on or product added to the cart, or quantity increased | `items`: `id`, `name`, `quantity`, `price`                                                                                                                                        |
| `begin_checkout`    | Cart page displayed                                              | `ecommerce`: `currency`, `value`, `coupon`, `items`                                                                                                                               |
| `add_shipping_info` | Carrier selected                                                 | `currency`, `value` (shipping cost), `coupon`, `shipping_tier` (carrier name), `items`: `item_id`, `item_name`, `coupon`, `discount`, `price`, `quantity`                         |
| `purchase`          | Order confirmation page                                          | `transaction_id` (order number), `affiliation` (site name), `value`, `shipping`, `tax`, `currency` (`EUR`), `items`: `item_id`, `item_name`, `item_category`, `quantity`, `price` |
| `action`            | Shop product page displayed                                      | `value`: `view_item`, `item`: the product                                                                                                                                         |
| `action`            | Steps of the cancellation flow                                   | `event_category`: `unsub`, `value`: the step (see `layer_action` below)                                                                                                           |
| `action`            | Reactivation offer accepted                                      | `event_category`: `restart-offer`, `value`: `restart-offer-validated`                                                                                                             |

For an order whose plan has a set total price, `value` and the item price use that total price.

## Data layer events (Google Tag Manager)

These events are pushed to the `dataLayer` when the **Google Tag Manager** field is filled in. In Google Tag Manager, fire your tags with a **Custom Event** trigger that has exactly the event name.

| `dataLayer` event        | When                                                               | Content                                                                                                                                                                                                                                                                                                                       |
| ------------------------ | ------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `GA_page_view`           | Same steps as the `page_view` events above (except confirmation)   | `url`: same value as `page_path`                                                                                                                                                                                                                                                                                              |
| `product_page`           | Shop product page displayed                                        | `ecommerce.detail.products`: `name`, `id`, `price`, `brand` (`product`), `category`                                                                                                                                                                                                                                           |
| `addToCart`              | Plan, add-on or product added to the cart, or quantity increased   | `ecommerce`: `currency`, `value`, `tax`, `total_discount` (cart), `add.products` and `items` (the item: `name`, `id`, `price`, `brand`, `category`), `user_data`                                                                                                                                                              |
| `removeFromCart`         | Item removed or quantity decreased                                 | `ecommerce.remove.products`: the item (at least its `id`)                                                                                                                                                                                                                                                                     |
| `view_cart`              | Defined in the code, no page sends it today                        |                                                                                                                                                                                                                                                                                                                               |
| `begin_checkout`         | Cart page displayed                                                | `ecommerce`: `currency`, `value`, `coupon`, `items`, `tax`, `total_discount`, `user_data`                                                                                                                                                                                                                                     |
| `sign_up`                | Account created in the checkout                                    | `email`, `eventId`: SHA-256 hash of the email                                                                                                                                                                                                                                                                                 |
| `lead.user.registration` | Account created in the checkout                                    | `lead.user.registration.email`: SHA-256 hash of the email                                                                                                                                                                                                                                                                     |
| `checkout`               | Checkout steps                                                     | `ecommerce.checkout.actionField`: `step` and `option` (`1` / `new_account`, `4` / `delivery`, `4` / `transport`, `5` / `payment`)                                                                                                                                                                                             |
| `add_shipping_info`      | Address selected                                                   | `ecommerce`: `currency`, `value`, `tax`, `total_discount`, `items`, `user_data` with the address added (first and last name as SHA-256, street, city, region, postal code, country in clear text)                                                                                                                             |
| `add_shipping_method`    | Carrier selected                                                   | `ecommerce`: `currency`, `value`, `tax`, `total_discount`, `items`, `user_data`, `shipping_tierce` (carrier name)                                                                                                                                                                                                             |
| `order.confirmation`     | Order confirmation page                                            | `ecommerce.purchase.actionField`: `id`, `affiliation`, `revenue`, `tax`, `shipping`, `coupon`; `ecommerce.purchase.products`: `id`, `item_id`, `item_name`, `item_brand`, `item_category`, `name`, `category`, `quantity`, `price`                                                                                            |
| `order.info`             | Order confirmation page                                            | `orderDetails`: `orderId`, `total`                                                                                                                                                                                                                                                                                            |
| `purchase`               | Order confirmation page                                            | `ecommerce`: `transaction_id`, `currency`, `value`, `tax`, `total_discount`, `coupon`, `shipping_tierce`, `items` (`name`, `id`, `price` incl. tax, `brand`, `category`, `quantity`), `user_data`                                                                                                                             |
| `layer_action`           | Plan customization, cancellation flow, reactivation offer accepted | `value`: `composition-personnalisation`, `page-desabo-raisons-validees-choix-pause-ou-annulation`, `page-desabo-choix-pause`, `page-desabo-pause-x-mois-validee`, `page-desabo-refus-pause`, `page-desabo-refuse-reduction`, `page-desabo-accepte-reduction`, `page-desabo-annulation-confirmee` or `restart-offer-validated` |

Useful values:

- `brand` is `plan` for a plan, `addon` for an add-on and `product` for a product.
- `user_data` only exists when the customer is logged in: `ordersCount` (completed orders), `sha256_email_address`, `sha256_phone_number` and their address.
- `coupon` is the code of the applied discount.
- Events are pushed one second after the visitor’s action.

## Set up GA4 in Google Tag Manager

If you prefer to manage GA4 in Google Tag Manager rather than with the **Google Analytics ID** field:

1. In your container, create a **Google Tag** with your `G-XXXXXXXXXX` ID, fired on **Initialization - All Pages**. It sends a page view on every page.

2. For each event you want to measure, create a **Google Analytics: GA4 Event** tag with the GA4 event name you want (for example `purchase`), and a **Custom Event** trigger with the `dataLayer` event name (for example `purchase`).

3. For e-commerce events, enable sending e-commerce data from the data layer. For a specific value, create a **Data Layer Variable** with the path shown in the table, for example `ecommerce.transaction_id` or `ecommerce.value`.

4. Check with Google Tag Manager’s **Preview** mode and GA4’s **DebugView**, then publish the container.

## Measure your sales in Google Ads

Ciklik does not send a Google Ads conversion event (`conversion` with `send_to`). Two ways to count your sales:

- import the `purchase` key event of your GA4 property into Google Ads;
- or create a **Google Ads Conversion Tracking** tag in Google Tag Manager, fired by the `purchase` event, with `ecommerce.value` as the value, `ecommerce.transaction_id` as the transaction ID and `EUR` as the currency.

## Conversion funnel and dashboards

To see where your visitors drop off, create a funnel exploration in GA4 with these steps, in checkout order: `begin_checkout` (cart), `sign_up` (account), `page_view` on `page-livraison.html` (address), `add_shipping_info` (carrier), `page_view` on `paiement-form.html` (payment), then `purchase`.

For a dashboard, connect Looker Studio (formerly Google Data Studio) directly to your GA4 property.

## See also

[Marketing Parameters and Advanced trackers tabs](https://www.ciklik.academy/en/parametres-marketing/onglets-parametres-marketing-et-trackers-avances/)

[Add Facebook Ads](https://www.ciklik.academy/en/parametres-marketing/ajouter-facebook-ads/)

[Add your TikTok pixel and conversion API](https://www.ciklik.academy/en/parametres-marketing/ajouter-votre-pixel-tiktok-et-son-api-de-conversion/)

[Set up an affiliate program with Affilae](https://www.ciklik.academy/en/acquisition/programme-d-affiliation-affilae/)
