What is Google Consent Mode?
What is Google Consent Mode? Google Consent Mode is a framework that allows websites to communicate a user’s consent status…

Create a tailored Privacy Policy, Terms & more in under 5 minutes.
In this guide, we’ll show you how to setup Google Consent Mode v2 (advanced consent mode) using a Consent Management Platform (CMP) and Google Tag Manager. We’ll be using GetTerms as our CMP of choice, but all of the settings and features mentioned should be available if you’re using a CMP that supports Advanced Consent Mode.
Try Google Consent Mode with GetTerms
Try our CMPGoogle Consent Mode works by communicating a user’s consent states to Google tags and tools, so they can adjust their behavior in accordance to the users consent preferences and in compliance with privacy laws like the GDPR.
This guides uses Google Tag Manager to configure Google Consent Mode correctly. If you’ve installed your Google Tag directly into your site’s <head>, we strongly recommend removing it and installing it with Google Tag Manager to ensure it doesn’t fire before consent settings are updated.
If you haven’t installed Google Tag Manager yet, follow this guide first.
In your GTM workspace, go to the Templates tab.
Under Tag Templates, click Search Gallery.
Search for “GetTerms” or your CMP’s tag template.
Select GetTerms Consent Management.
Click Add to workspace.
Review the required permissions, then click Add.
Open the Tags tab in GTM and click New.
Click anywhere in the Tag Configuration box to open the ‘Choose tag type’ menu.
Select the GetTerms Consent Management tag template (or your chosen CMP’s tag template).
Leave the default consent preferences as denied.
Scroll down and click within the Triggering box.
Select Consent Initialization – All Pages.
While not explicitly required, enabling the consent overview panel helps you identify and edit which tags have or haven’t been configured for consent. You may find it useful if you have several tags to configure as it enables you to set tag consent settings in bulk.
Open your container settings from the Admin tab.
Enable Consent Overview.
Once enabled, the consent overview panel can be opened from the tag tab of your work space.
If you’ve never setup your tags for consent, the consent overview window should inform you that none of your tags are configured for consent.
If Advanced Consent Mode is implemented, tags will fire without waiting for user consent but block data collection if the current consent status is denied. For this reason, you should only use advanced consent mode with tags that have built-in consent checks such as your Google Tag.
You can see in the above image that our HotJar tag does not contain built in consent checks.
Select Initialization – All Pages as your primary trigger.
Note: Do not use ‘Consent initialization – All Pages’ as this may result in your Google Tag firing before the the current consent state is updated by your CMP. If this happens, the current consent state may still be set to the default state – denied – and your Google Tags built in consent checks will block data from being collected.
Click the + button to add another trigger.
Choose Custom Event as the trigger type.
Enter consentUpdate
as the event name. This is an event sent by our consent banner that contains the users updated consent preferences. It fires on every page load or when a user updates their consent preferences.
Save the tag configuration.
In a Basic Consent Mode setup, tags are configured to require additional consent checks before they can fire. This is perfect for non-Google any non-Google tracking codes, e.g. your HotJar or Klaviyo tacking codes.
For these tags, you can use the same triggering and tag firing settings used by your Google Tag.
Publish your GTM container by clicking ‘submit’ in the top right of the window, your GTM is configured and consent mode should be active!
Open Preview / Debug mode in GTM using the ‘Preview’ button in the top right of your workspace.
Navigate to the Consent tab in the box labelled Output of GTM-########.
Confirm that consent values match the settings from your consent banner. If you haven’t accepted cookies, all except Security storage should show Denied.
If you have consented to all cookies, but the event your Google Tag fires on displays all types of cookies as ‘denied’, you may be firing our cookie banner or the GetTerms Consent Management tag after your Google Tag. This means we are not able to update the current state of consent state before your Google Tag fires.
If all consent types display as Denied despite full user consent:
Check the firing order of your tags.
Ensure the Consent Management tag or banner fires on Consent Initialization.
Ensure your Google Tag fires on Initialization – All Pages.
Confirm your CMP installation includes Google Consent Mode initialization code. It should look something like this:
<!– 1. Initialise Google Consent Mode –>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
// Set all consent categories to “denied” by default.
gtag(“consent”, “default”, {
“ad_storage”: “denied”,
“ad_user_data”: “denied”,
“ad_personalization”: “denied”,
“analytics_storage”: “denied”,
“functionality_storage”: “denied”,
“personalization_storage”: “denied”,
“security_storage”: “denied”,
});
</script>