Are you using Google Tag Manager to load Axeptio? We have prepared a complete video tutorial just for you!
As soon as you use Google services on your website, this concerns you! If you do not adopt it, your Google services will not be able to adapt their behaviour to your visitors' consent choices, and you risk a deterioration of measurements in Google Analytics and Google Ads.
The configuration takes place in 2 steps:
On the Axeptio administration side, you will activate the dedicated Consent Mode v2 screen
On the side of your Axeptio integration and your consent conditioning logic, you will:
set the default signals for the 4 Consent Mode parameters
adapt your conditioning logic according to the Consent Mode v2 mode you have chosen (basic or advanced)
⚠️ You must complete both of these steps for your Consent Mode v2 implementation to be valid!
💉 Need a refresher on what Consent Mode v2 is? Read our blog article on the topic.
Activate the dedicated screen in your banner
With Axeptio, you manage the Consent Mode signals directly from your cookie banner. In just a few clicks, you can activate a dedicated screen for managing Consent Mode v2.
To do this, go to your widget configuration.
Under the "classic" screens, you will find the option "Enable Consent Mode v2 (step)":
By checking this option, a new screen will be added to your widget, with the 4 Google Consent Mode parameters:
Once the option is checked, don't forget to republish your project!
Set the default Consent Mode parameters
Here, you will configure the default values for Consent Mode, i.e. for each parameter, whether it will be accepted or denied, before any choice made by the user.
This configuration must be done in the same place where you load Axeptio.
For example, if you load Axeptio via our WordPress module, the configuration will be done in that module. If you load Axeptio directly via our hardcoded script, the change will be made directly in the script. And if you load Axeptio via GTM, it will be done in GTM.
Denied or granted by default: choosing your signals — The default signals you need to define depend on the regulation applicable to your visitors' region. For example, for visitors from European Union countries (and therefore subject to GDPR), you must set all 4 parameters to denied by default.
Go to the section corresponding to your Axeptio integration method below!
If you have chosen integration via Google Tag Manager
▶️ Do you prefer a video explanation? Watch our tutorial here.
First, you will need to retrieve our "Axeptio CMP" tag template, available in the Google Tag Manager tag gallery.
🚧 Note: if you are already loading Axeptio in GTM via a custom HTML tag, it is recommended to replace that tag with the Axeptio CMP tag we are about to create here.
To do this, go to the "Templates" section in your GTM container, then click "Search Gallery":
Search for "Axeptio CMP" in the window that opens. Once found, add it to your workspace:
Now that the template has been added, we can create a tag from it.
Go to the "Tags" section of your container and create a new one.
In your new tag's configuration, select the "Axeptio CMP" template:
Then fill in your Axeptio project ID and the cookie version in the corresponding fields. This is the section that will handle loading Axeptio.
As a reminder, if you were already loading Axeptio via GTM in another way, you will need to disable the old tag in favour of this one.
If you were already using the Axeptio CMP template to load Axeptio and these fields are already filled in, you can skip this step.
We will now look at the "Google Consent Mode v2" section of this tag.
You will find a checkbox to enable Consent Mode v2 support.
Once checked, new fields will appear:
Here we can define the default Consent Mode values, by region.
Click "Add a row".
In the "Region" field, enter the region code to which these default parameters will apply. If you leave this field empty, it will apply to everyone. This field must be filled in according to the ISO 3166-2 standard — for example, for France the code is "FR".
You then have a dropdown menu for each of the 4 Consent Mode v2 parameters. For each parameter, you can set whether it will be Granted (accepted) or Denied (refused) by default. As a reminder, here are the 4 Consent Mode parameters:
analytics_storage: allows Google Analytics to measure how the visitor uses the site
ad_storage: allows Google to save advertising information on the visitor's device
ad_user_data: allows the visitor's activity data to be shared with Google for targeted advertising
ad_personalization: allows personalisation of the visitor's advertising experience by letting Google customise the ads they see.
Here is an example where the ad_storage and analytics_storage parameters are accepted (granted) by default, while ad_user_data and ad_personalization are denied by default. This is only an example and regulations may vary by region.
Once the various fields are filled in, you can confirm the addition of your row.
Note that it is possible to create multiple rows, in particular to have different configurations depending on regions.
For example, I will create a default row, and a specific row for the United States.
In my default row, I will set all 4 parameters to Denied, while in the one for the United States, everything will be Granted. I then get two rows like this:
With this configuration, my visitors will not be tracked by default, except for visitors coming from the United States.
Regarding the last two options "Redact Ads Data" and "Pass through URL parameters", these are additional behaviour options explained when hovering over the "?" next to the option.
All that remains is to fire our tag at the right moment — as early as possible!
To do this, go to the "Triggering" section of your tag, and add a "Consent Initialization - All Pages" trigger like this:
All that remains is to save your tag, and Consent Mode is now active on your site! Congratulations
If you have chosen a hardcoded integration
If you load Axeptio directly via our script, you should have something like this:
<script>window.axeptioSettings = { clientId: "votreProjectID",}; (function(d, s) { var t = d.getElementsByTagName(s)[0], e = d.createElement(s); e.async = true; e.src = "//static.axept.io/sdk.js"; t.parentNode.insertBefore(e, t);})(document, "script");</script>We are going to add a googleConsentMode object to the axeptioSettings object, which will contain the default Consent Mode parameters — i.e. for each parameter, whether it is accepted or denied before any choice by the user, from the moment they arrive on the site.
As a reminder, here are the 4 Consent Mode parameters:
analytics_storage: allows Google Analytics to measure how the visitor uses the site
ad_storage: allows Google to save advertising information on the visitor's device
ad_user_data: allows the visitor's activity data to be shared with Google for targeted advertising
ad_personalization: allows personalisation of the visitor's advertising experience by letting Google customise the ads they see.
Each of these parameters can be set by default to either "denied" (refused) or "granted" (accepted).
We will also pass a "wait_for_update" parameter which will tell Google services to wait for consent for a defined period of time before doing anything.
This parameter takes an integer value, corresponding to the number of milliseconds that this waiting period will last.
Another optional parameter is the "region" parameter, which allows you to specify default parameters for a given region. This parameter takes the ISO 3166-2 code of the region as its value. For example, for France, this code is "FR".
Here is an example in which all 4 parameters are denied by default, for all regions, with a 500-millisecond delay, which is the standard waiting period.
window.axeptioSettings = { clientId: "votreProjectID", googleConsentMode: { default: { analytics_storage: 'denied', ad_storage: 'denied', ad_user_data: 'denied', ad_personalization: 'denied', wait_for_update: 500, } }};Now let's look at an example where, for all my visitors, everything is denied by default, except for those coming from the United States, where the Consent Mode parameters will be accepted by default.
window.axeptioSettings = { clientId: "votreProjectID", googleConsentMode: { default: [ { analytics_storage: 'denied', ad_storage: 'denied', ad_user_data: 'denied', ad_personalization: 'denied', wait_for_update: 500, }, { region: ['US'], analytics_storage: 'granted', ad_storage: 'granted', ad_user_data: 'granted', ad_personalization: 'granted', wait_for_update: 500, } ] }};Once your parameters are properly defined, Consent Mode is now active on your site. Congratulations!
If you have chosen integration via your CMS
Basic mode or advanced mode: which one to choose?
Google describes two operating modes for Consent Mode: basic mode and advanced mode.
Depending on the mode you have chosen, you will then need to adapt your consent conditioning logic (either in GTM or in your hardcoded script).
If you are in basic mode: You must always add vendors to your Axeptio banner
If you are in advanced mode: No need to add Google vendors in addition to the Consent Mode V2 screen in the banner
Basic mode
In basic mode, your Google services must only be loaded after consent. This corresponds to a "classic" Axeptio integration, where Axeptio acts as the orchestrator deciding when Google services are loaded. To set up this integration, you can rely on our existing documentation:
If you load your Google services with Google Tag Manager: Google Tag Manager interface
If you load your Google services with Gtag.js: Custom integration / synchronisation
With basic mode, you can be sure that nothing is loaded on your site before the visitor's consent!
Advanced mode
In advanced mode, your Google services will be loaded as soon as the visitor arrives on the site, regardless of whether they have already accepted or refused cookies. According to Google, this mode allows more precise modelling of visitors who have refused, by collecting anonymous data about them.
In this mode, you will therefore not need to control consent before loading your Google services.
For example:
in Google Tag Manager, you can load your Google tags on "All pages"
or if you load your Google services via Gtag.js, you can load the script directly without any condition, as would be the case in a "classic" Axeptio integration
When a visitor refuses cookies in advanced mode, Google services continue to operate in cookieless mode: they do not use cookies and do not perform any individual targeting. Only anonymous signals are sent to Google to allow it to model unobserved conversions.
With advanced mode, you give your Google services every opportunity to get the highest-quality data!
📌 For more details, we invite you to consult the official Google documentation.
Creating a banner compliant with Google's requirements
For your Consent Mode v2 implementation to be complete, Google requires that your consent banner meets three specific requirements:
Inform visitors that data is collected for the purposes of personalisation and measuring advertising effectiveness
Include a link to Google's privacy policy: https://business.safety.google/privacy/
Provide an explicit acceptance button (an "Accept" button or clearly visible equivalent)
When you add Google Analytics 4 or Google Ads to your Axeptio banner, the dedicated Consent Mode v2 screen is automatically activated. This screen presents the 4 Consent Mode parameters with the information and link required by Google — the three requirements above are thus satisfied without any additional action.
In basic mode, Google services (Google Analytics 4, Google Ads) must be present in your banner: they are the ones that emit the GTM events on which your triggers will be based to block or unblock tags according to the user's consent.
In advanced mode, only the Consent Mode screen is needed — adding Google services to the banner is not required. Google tags fire unconditionally without any prior consent check; Axeptio passes the signals via the GTM configuration or the script.
Verify your Consent Mode v2 implementation
You can verify the correct implementation of Consent Mode v2 by following one of the tutorials below:
About the old Axeptio Consent Mode v2 tag template
About the old Axeptio Consent Mode v2 tag template
🚧 If you followed the old documentation on implementing Consent Mode v2 via the "Axeptio Consent Mode v2" template in Google Tag Manager, you do not need to update your current implementation.
Furthermore, you do not need to activate the special Consent Mode screen in your cookie widget, because the Axeptio Consent Mode v2 template is based directly on the acceptance of Google Analytics and Google Ads. Just make sure you have these two services listed in your cookie widget.
The Axeptio Consent Mode v2 template will continue to work, but may not be maintained if Consent Mode updates were to arrive. If you wish, you can therefore update your implementation to the new method today, but it is not mandatory.
Official Google documentation
To go further on Consent Mode parameters and operation, consult the official Google resources:
Manage consent settings — gtag implementation — guide for sites that load Google Tag directly (gtag.js)
Create a GTM tag template for Consent Mode — guide for implementations via Google Tag Manager
Need help?
If you detect issues related to the absence of Consent Mode or TCF signals on Google tags, contact Axeptio in the first instance.

