Iubenda logo
Start generating

Documentation

Table of Contents

Google Ads Consent Mode – Everything You Need To Know

With an ever-growing interest in data protection, user consent and privacy are not just buzzwords, but essential components of any activity online. Google Consent Mode for Google Ads helps advertisers respect user privacy while running effective ad campaigns.

But what is Google Consent Mode? And why do you need to use it?

In this guide, we explain what Google Consent Mode is, why it’s important for Google Ads, and how it could benefit your marketing efforts. Let’s dive right in!

What is Google Ads Consent Mode?

In Google Ads, Consent Mode is a framework that helps website owners gain more accurate insights into conversion data while honoring user consent preferences as legally required. Google Consent Mode allows you to adjust how your Google Tags behave based on your users’ consent status and helps you to gather data for non-consented users, at an aggregate level. Through conversion modeling, Google Consent Mode is able to recover up to 70% of reported conversion losses due to user consent choices.

Google Consent Mode adds two new tag settings that help manage advertising and analytics cookies: ad_storage and analytics_storage. These tags control the behavior of Google products based on the user consent choices, adjusting the conversion measurement accordingly:

  • When a user consents to advertising cookies, the conversion measurement continues normally.
  • When advertising cookies are rejected, Google Consent Mode still provides useful insights at an aggregate level through modeled conversions. Conversion modeling uses machine learning and observable user journeys to analyze trends and model the relationship between conversion rates and user consent — without identifying individual users.
Credit: Google

This ensures that the website offers a higher level of data protection without completely losing the ability to track user interactions and campaign performance.

So far, the Google products which support Google Consent Mode are:

  • Google Ads
  • Google Analytics
  • Floodlight
  • Conversion Linker

Do I need Google Consent Mode?

As Google specifies, Google Consent Mode isn’t suitable for all advertisers.

Google Ads Consent Mode is specifically designed for advertisers who serve ads to users in the European Economic Area or the UK, and who:

  • Have already implemented a strict consent banner; and
  • Are blocking tags that help with conversion measurement.

If this is your situation, then enabling Google Consent Mode may be beneficial for you and your business.

But please note: you need to meet a certain threshold for Consent Mode modeling to work. Google defines this threshold as follows:

The click threshold for conversion modeling is 700 ad clicks over 7 days for a domain x country grouping.

Absolutely. Under regulations like the GDPR, users must opt in to the use of non-essential cookies, which include those used for advertising purposes. Google Ads consent is critical as it directly impacts the effectiveness of your advertising efforts. Without proper consent, your ability to track conversions, retarget visitors, and personalize ads is significantly reduced.

Google Ads Consent Mode can help you recover conversion losses, but it doesn’t make your website compliant with privacy laws! You still need to add a cookie consent banner and implement the prior blocking of cookie scripts, as required by privacy laws.

Moreover, Google Consent Mode does not work with scripts that don’t belong to Google. For example, if you’re using the Facebook Pixel, you would need to block it before users give their consent.

There are many ways of prior-blocking cookies and other trackers. For example, you could do it manually. This method requires you to identify the scripts that are subjected to the requirement of prior consent. Then, the scripts must be manually modified, so they can be recognized, stopped, and then released depending on what the user chooses.

A much simpler way is to rely on solutions that allow you to automatically block cookie scripts, without coding. That’s what iubenda’s Autoblocking feature is for!


iubenda is a Google CMP Partner that helps you with cookie consent requirements: create your cookie consent banner, add a cookie policy and automatically block cookie scripts from running before consent. All this from a single dashboard!

iubenda’s CMP is Google-certified and comes with Google Consent Mode support, to help you maximize your ad revenue.

In order for the Google Consent Mode to work properly, you need to implement the correct Google consent setting. This will allow the Google services to behave based on the consent given by the user.

Note ⚠️

Google Consent Mode requires gtag.js or Google Tag Manager to run. Find out how to set up Google Tag Manager here.

  1. Start with the Consent Initialization trigger: the Consent Initialization trigger is used for tags that set or update the user consent state for your site, such as a consent management platform. Make sure to enable it for all your pages in Google Tag Manager.
  2. Then you need to make sure that the default consent for Google Consent Mode tags is set to "denied". If the consent is granted, the tags will be updated.

You can learn more about Google’s consent setting in this guide by Google.

How to implement Google Consent Mode with a CMP

Google Consent Mode can be implemented both manually or through a Consent Management Platform (CMP).

A Consent Management Platform (CMP) is a platform designed to handle users’ consent preferences in a transparent and documented manner. To simplify the implementation of its Consent Mode, Google is partnering closely with a few Google-certified CMPs that are already integrated with Google Consent Mode. iubenda is one of them!

Let’s take a look at how to implement Google Consent Mode with iubenda’s CMP.

1. Autoblocking

By selecting the autoblocking of cookie scripts in the Privacy Controls and Cookie Solution, Google Consent Mode will be automatically enabled and it will run on Google services-related scripts. That’s it!

Autoblocking enabled iubenda

2. Google Tag Manager template

As a CMP Partner, iubenda is making the support for Google Consent Mode easier for our users. Our Google Tag Manager template is part of this process.

The template is a straightforward way to implement Google Consent Mode on your website, as it requires way less coding than the manual implementation. You just need to add it to your GTM installation, configure the tags, and embed it.

Google Tag Manager template iubenda

3. Manual tagging

If you’re using the old iubenda Cookie Solution script and relying on manual tagging for prior blocking, you need some extra coding to enable Google Consent Mode.

Let’s use the old Google Analytics script as an example.

The code needs to go from this:

  1. <!-- Global site tag (gtag.js) - Google Analytics -->
  2. <script async src="https://www.googletagmanager.com/gtag/js?id=GA_MEASUREMENT_ID"></script>
  3. <script>
  4. window.dataLayer = window.dataLayer || [];
  5. function gtag() {
  6. dataLayer.push(arguments);
  7. }
  8. gtag('js', new Date());
  9. gtag('config', 'GA_MEASUREMENT_ID');
  10. </script>

To this:

  1. <script>
  2. // Initialize the data layer for Google Tag Manager (this should mandatorily be done before the Privacy Controls and Cookie Solution is loaded)
  3. window.dataLayer = window.dataLayer || [];
  4. function gtag() {
  5. dataLayer.push(arguments);
  6. }
  7. // Default consent mode is "denied" for both ads and analytics as well as the optional types, but delay for 2 seconds until the Privacy Controls and Cookie Solution is loaded
  8. gtag("consent", "default", {
  9. ad_storage: "denied",
  10. analytics_storage: "denied",
  11. functionality_storage: "denied", // optional
  12. personalization_storage: "denied", // optional
  13. security_storage: "denied", // optional
  14. wait_for_update: 2000 // milliseconds
  15. });
  16. // Improve ad click measurement quality (optional)
  17. gtag('set', 'url_passthrough', true);
  18. // Further redact your ads data (optional)
  19. gtag("set", "ads_data_redaction", true);
  20. </script>
  21. // Global site tag (gtag.js) - Google Analytics
  22. <script async src="https://www.googletagmanager.com/gtag/js?id=GA_MEASUREMENT_ID"></script>
  23. <script>
  24. window.dataLayer = window.dataLayer || [];
  25. function gtag() {
  26. dataLayer.push(arguments);
  27. }
  28. gtag('js', new Date());
  29. gtag('config', 'GA_MEASUREMENT_ID'); //replace GA_MEASUREMENT_ID with the ID of your Google Analytics property
  30. </script>

Basically, the data layer that forces ad_storage, analytics_storage and the other tags to denied needs to be added to your page before the Google service-related script is loaded.

Then you need to add the Privacy Controls and Cookie Solution snippet to the same code:

  1. <!-- Global site tag (gtag.js) - Google Analytics -->
  2. <script>
  3. // Initialize the data layer for Google Tag Manager (this should mandatorily be done before the Privacy Controls and Cookie Solution is loaded)
  4. window.dataLayer = window.dataLayer || [];
  5. function gtag() {
  6. dataLayer.push(arguments);
  7. }
  8. // Default consent mode is "denied" for both ads and analytics as well as the optional types, but delay for 2 seconds until the Privacy Controls and Cookie Solution is loaded
  9. gtag("consent", "default", {
  10. ad_storage: "denied",
  11. analytics_storage: "denied",
  12. functionality_storage: "denied", // optional
  13. personalization_storage: "denied", // optional
  14. security_storage: "denied", // optional
  15. wait_for_update: 2000 // milliseconds
  16. });
  17. // Improve ad click measurement quality (optional)
  18. gtag('set', 'url_passthrough', true);
  19. // Further redact your ads data (optional)
  20. gtag("set", "ads_data_redaction", true);
  21. // Google Tag Manager
  22. (function(w, d, s, l, i) {
  23. w[l] = w[l] || [];
  24. w[l].push({
  25. 'gtm.start': new Date().getTime(),
  26. event: 'gtm.js'
  27. });
  28. var f = d.getElementsByTagName(s)[0],
  29. j = d.createElement(s),
  30. dl = l != 'dataLayer' ? '&l=' + l : '';
  31. j.async = true;
  32. j.src =
  33. 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
  34. f.parentNode.insertBefore(j, f);
  35. })(window, document, 'script', 'dataLayer', 'GTM-XXXXXX'); //replace GTM-XXXXXX with the ID of your Google Analytics property
  36. </script>
  37. <!-- iubenda Privacy Controls and Cookie Solution -->
  38. <script>
  39. var _iub = _iub || [];
  40. _iub.csConfiguration = {
  41. lang: "en",
  42. siteId: 12345678, //use your siteId
  43. cookiePolicyId: 12345678, //use your cookiePolicyId
  44. countryDetection: true,
  45. perPurposeConsent: true,
  46. purposes: "1,4,5",
  47. consentOnContinuedBrowsing: false,
  48. banner: {
  49. position: "float-top-center",
  50. acceptButtonDisplay: true,
  51. customizeButtonDisplay: true,
  52. rejectButtonDisplay: true
  53. }
  54. };
  55. </script>
  56. <script src="https://cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>

Find more detailed instructions in our step-by-step guide.

iubenda: your Google-certified CMP

According to Google, from January 2024, if you do not use a Google-certified CMP integrated with the Transparency and Consent Framework, your ads will not be served to EEA and UK traffic.

Are you looking for a trusted ally in your digital advertising journey? iubenda’s got your back!

Our Google-certified CMP simplifies the consent practices, offering a simple integration with both Google Ads Consent Mode and IAB’s Transparency and Consent Framework. Our CMP empowers you to stay on the right side of the law while maximizing your ad performance.