Consentik™

Verify Consent Mode

May 18, 2026
Share to:

Ensuring your Google Consent Mode implementation is correctly set up is essential for accurate measurement and compliance. This guide walks you through how to verify your implementation using the Consentik diagnostic tool and manual methods.

What the diagnostic checks

The Consentik diagnostic tool scans your pages and evaluates five criteria:

Check What it means
CMP first The Consentik script loads before any Google tag (GTM, gtag.js, Google Ads)
Default fired A gtag('consent', 'default', {...}) command is present in dataLayer on page load
Default valid The default consent values match your Consentik configuration
No late consent Consent signals are sent before Google tags start executing, not after
Tag Gateway Whether Google Tag Gateway (GTG) is active on the page

A page passes all checks only when all five criteria are met. Any failure means consent data may be incomplete or inaccurate.

Using the built-in diagnostic tool

The fastest way to verify your implementation is through the Consentik dashboard.

  1. Log in to your Consentik account
  2. Go to Google Consent Mode V2 from the left navigation
  3. Scroll to the Consent Mode Diagnostic section
  4. Click Run diagnostic scan (or Re-scan if a previous scan exists)
  5. Wait for the scan to complete — results appear as a per-page table

Reading the results

Column Green (pass) Red / Warning (action needed)
Default fired ✗ — consent default is missing or fires too late
CMP first ✗ — Consentik script loads after Google tags
Late consent ⚠ Late — consent update fires after Google tags
Tag Gateway None Active — GTG detected, may affect load order
Status OK Fix needed

If any page shows Fix needed, the tool will display specific guidance below the table explaining what is wrong and how to resolve it.

Manual verification

You can also verify your implementation without the dashboard using browser developer tools.

1. Check the dataLayer for consent commands

Open your site in Chrome, press F12 to open DevTools, go to the Console tab and run:

dataLayer.filter(e => e[0] === 'consent')

You should see at least two entries:

  • ['consent', 'default', { ad_storage: 'denied', ... }] — fires on page load before any tags
  • ['consent', 'update', { ad_storage: 'granted', ... }] — fires after the user makes a choice

If the default entry is missing or appears after GTM entries, your CMP is not configured correctly.

2. Check script load order

In DevTools, go to the Network tab and filter by Script. Reload the page.

Look for:

  • index.js (your Consentik script) — this must appear before gtm.js or gtag/js
  • If gtm.js loads first, move the Consentik embed code above your GTM snippet in the HTML <head>

3. Check the consent state in the console

// Current consent state read by Consentik
window.otkConsent

This object should reflect the user’s actual consent choice. If it is empty or undefined, the Consentik script may not have loaded correctly.

4. Use Google Tag Assistant

Google Tag Assistant can verify that consent signals are being received by Google tags. Look for a green Consent status on each tag. A yellow or red status indicates consent is not being passed correctly.

Common issues and fixes

CMP first = ✗ (Consentik loads after Google tags)

Cause: The Consentik embed script is placed in the HTML after the GTM or gtag snippet.

Fix: Move the Consentik script to the very top of the <head> section, before any other scripts:

<head>
  <!-- 1. Consentik embed code (copy from Dashboard → Settings → Embed) -->
  [Consentik embed code here]

  <!-- 2. Google Tag Manager snippet — placed AFTER Consentik -->
  [GTM snippet here]
</head>

Late consent detected

Cause: A consent update command is firing after Google tags have already started loading. This is commonly caused by Google Tag Gateway (GTG), which injects Google scripts via CDN before your CMP can set the default.

Fix: Switch to Advanced Consent Mode (U+C) in your Consentik settings. This is the only mechanism that is guaranteed to work when GTG controls the script load order.

Default not fired

Cause: Google Consent Mode is not enabled in Consentik, or the script is not loading at all.

Fix:

  1. In the Consentik dashboard, go to Google Consent Mode V2
  2. Enable Google Consent Mode and save settings
  3. Confirm the embed code is present on your site by checking for #cst-package in DevTools → Elements

Default valid = ✗ (consent values do not match)

Cause: The default consent values sent to Google do not match what is configured in Consentik. This can happen if the embed code is outdated (cached version of index.js).

Fix: Force a cache refresh by appending a version parameter to your Consentik script URL, or clear your CDN/server cache so the latest index.js is served.

Further reading

Leave a Comment

Your email address will not be published. Required fields are marked *

Copy this page as Markdown for LLMs
View this page as plain text
Ask questions about this page in ChatGPT
Ask questions about this page in Claude
Ask questions about this page in Perplexity
Verify Consent Mode

Simplifying privacy compliance, protecting data and building trust.

© 2026 Consentik™. All Rights Reserved.