How to check Google Consent Mode v2: A practical guide

Learn how to check Google Consent Mode v2 by inspecting network requests and dataLayer. This guide shows you exactly where to look in Chrome and Tag Manager.

Eptekhar Hasan7 min read

To check Google Consent Mode v2, you must verify that your website sends the ad_storage, analytics_storage, and ad_user_data signals to Google before any ads or analytics scripts fire. You need to confirm these signals are present in the HTTP request headers or the JavaScript object on your page. If the signals are missing, Google treats the data as non-compliant. This guide walks you through the exact steps to find these signals in your browser and your tag manager.

This is the first question you need to answer. You cannot assume it is working just because you installed a cookie banner. You need to see the data in motion. The fastest way to determine if the signals are present is to use a dedicated checker. You can use this consent mode checker to scan your URL. It tells you if the required parameters are being sent in the request. If the checker says the signals are missing, you need to look at your code. If it says they are present, you still need to verify the values are correct.

Step 1: Inspect the Network Tab in Chrome

You need to see what your browser actually sends to Google servers. Open your website in Chrome. Press F12 or Cmd + Option + I to open Developer Tools. Click the Network tab.

Clear the network log by clicking the circle with a line through it. Then, refresh your page. Look for requests to google-analytics.com or googleadservices.com.

Click on one of those requests. Look at the Headers section. You are looking for the Sec-Fetch-Dest or specific query parameters in the request URL. In Consent Mode v2, the signals are often passed as query parameters in the URL or in the body of the POST request.

Look for these specific keys:

  • ad_storage
  • analytics_storage
  • ad_user_data
  • ad_personalization

If you see granted next to these keys, the signal is active. If you see denied, the signal is active but blocking data. If you do not see them at all, Consent Mode v2 is not firing.

Step 2: Check the JavaScript Console

Sometimes the signals are set in JavaScript before the network request is made. You can inspect the global object to see if the consent state exists.

In the Chrome Developer Tools, click the Console tab. Type the following command and press Enter:

gtag('consent', 'default', {
  'ad_storage': 'denied',
  'analytics_storage': 'denied',
  'ad_user_data': 'denied',
  'ad_personalization': 'denied'
});

Do not run this to test. This command sets the consent. To check the current state, you need to look at the dataLayer object.

Type this in the console:

dataLayer

Expand the array. Look for an object that contains event set to consent. Inside that object, you will see the consent object. Check the values for ad_storage and analytics_storage.

If the dataLayer is empty, your tags are not firing. If the dataLayer exists but does not contain a consent event, your consent management platform is not pushing the state to Google Tag Manager.

Step 3: Verify in Google Tag Manager

You need to confirm that the consent variables are defined in your Google Tag Manager container. Go to your Google Tag Manager account. Select the container for your website.

Click on Variables in the left menu. Look for a variable named Consent State or similar. Click on it. You should see that it is linked to the dataLayer value consent.

Next, click on Tags. Find your Google Analytics 4 Configuration tag. Click on it. Look at the Settings section. Ensure that Enable Google Consent Mode is selected. If this box is not checked, the tag will not wait for consent signals. It will fire immediately, ignoring your compliance settings.

Check your Google Ads conversion tags as well. They must also have Enable Google Consent Mode checked. If you have multiple tags, you must check each one. A single tag without this setting can break your compliance.

Step 4: Test the User Journey

Consent Mode v2 is dynamic. It changes based on user action. You need to test two scenarios: the initial load and the consent update.

Scenario 1: Initial Load

  1. Open your website in an Incognito window.
  2. Do not click anything on the cookie banner.
  3. Open the Network tab.
  4. Refresh the page.
  5. Check the requests to Google. They should show denied for ad_storage and analytics_storage.

Scenario 2: Consent Granted

  1. Click "Accept All" on your cookie banner.
  2. Refresh the page.
  3. Check the requests to Google. They should now show granted for ad_storage and analytics_storage.

If the values do not change after you click accept, your CMS is not updating the dataLayer. This is a common error. Your cookie banner might be saving the choice in a cookie, but it is not pushing that choice to Google Tag Manager.

Common Errors and How to Fix Them

Here are the most frequent issues you will encounter when checking Google Consent Mode v2.

  1. Missing ad_user_data signal. Many older implementations only set ad_storage and analytics_storage. Consent Mode v2 requires ad_user_data and ad_personalization. If these are missing, Google will not process the data correctly. You must add these keys to your default consent update.

  2. Conflicting signals. If one tag sends granted and another sends denied, the behavior is undefined. Ensure all your tags use the same consent variable. Do not hardcode granted in one tag and use the dynamic variable in another.

  3. Cookie banner not pushing to dataLayer. Your banner might work visually, but it might not be connected to Google Tag Manager. You need a function that pushes the consent state to dataLayer when the user makes a choice. This function must run after the user clicks a button.

  4. Server-side tagging issues. If you use a server-side Google Tag Manager container, the consent signals must be passed from the browser to the server. You need to ensure your server-side container receives these parameters. Check your server-side container variables to confirm they are mapped correctly.

Verifying the Data in Google Analytics

Once you have confirmed the signals are firing, you need to see if the data is landing in Google Analytics. Go to your Google Analytics 4 property.

Navigate to Reports > Life cycle > Acquisition > Traffic acquisition. Look at the data for the last 24 hours. If Consent Mode v2 is working, you should see data from users who consented. You will not see data from users who denied consent. This is expected.

You can also check the DebugView in Google Analytics. Go to Admin > Data Streams. Click on your web stream. Click DebugView. This shows real-time events. If you see events from your test session, the tracking is working. If you see nothing, the tags are not firing.

Why This Matters for Your Business

Compliance is not just about avoiding fines. It is about data quality. When you use Consent Mode v2, you model the behavior of users who denied consent. This helps Google provide more accurate reports. If you ignore this, your data will be skewed. You will see less traffic than you actually have. You will see lower conversion rates. This makes it harder to make business decisions.

You need to know if your system is compliant. If you are not sure, you are guessing. Guessing with marketing data is risky. You need to verify the setup. You need to test the journey. You need to check the signals.

If you find that your setup is broken, or if you do not have time to debug the code, you can look into server-side tracking services to handle the complexity for you. This ensures that your data is clean and compliant without you needing to manage the technical details.

Final Checklist

Before you consider this task done, run through this list:

  • Network tab shows ad_storage and analytics_storage signals.
  • Signals change from denied to granted after user consent.
  • ad_user_data and ad_personalization are present in the signals.
  • Google Tag Manager tags have Enable Google Consent Mode checked.
  • Data is appearing in Google Analytics DebugView.
  • No console errors related to gtag or dataLayer.

If you pass this checklist, your Google Consent Mode v2 is working. If you fail any step, you need to fix the issue before you run any paid campaigns. Broken tracking leads to wasted spend. Broken compliance leads to legal risk. Fix the code. Test the flow. Verify the data.

Keep reading

All guides