---
title: "How to Detect and Verify CMP on Your Website"
description: "How to check what Consent Management Platform (CMP) a website uses. Verify Cookiebot, OneTrust, Usercentrics, and Google Consent Mode integration."
date: 2026-01-24
category: Analytics
tags: ["CMP", "Consent Management", "GDPR", "Privacy", "Cookiebot", "UPER SEO Auditor"]
url: https://uper.pl/en/blog/verify-google-consent-mode-v2/
---

# How to Detect and Verify CMP on Your Website

Cookie consent banners are everywhere, but how do you know if they're properly implemented? Which CMP (Consent Management Platform) does a website use? Is it integrated with Google Consent Mode? In this article, I'll show you how to detect and verify CMP implementation without digging through code.

## What Is a CMP (Consent Management Platform)?

A CMP is a tool that manages user consent for cookies and tracking. It handles:

- Displaying the cookie banner
- Recording user choices
- Blocking scripts until consent is given
- Communicating consent state to other tools (like Google Analytics)

### Popular CMP Platforms

| CMP | Description |
|-----|-------------|
| **Cookiebot** | Popular in EU, automatic cookie scanning |
| **OneTrust** | Enterprise solution, advanced compliance |
| **Usercentrics** | German-based, GDPR-focused |
| **Termly** | Budget-friendly, good for small sites |
| **Iubenda** | Italian, multilingual support |
| **Cookie Notice** | WordPress plugin |
| **Complianz** | WordPress-focused solution |

### Why CMP Detection Matters

- **GDPR compliance** - verify proper consent handling
- **Competitor analysis** - see what solutions others use
- **Audit preparation** - document CMP before privacy audit
- **Troubleshooting** - identify consent-related tracking issues

## UPER SEO Auditor - CMP Detection

The [UPER SEO Auditor](https://chromewebstore.google.com/detail/uper-seo-auditor/khhpbeckpphaoiemjdijhbfpjnendage) extension automatically detects what CMP a website uses.

![UPER SEO Auditor - CMP Detection](../../assets/images/blog/uper-seo-auditor-consent-mode.png)

### What Will You See?

In the **Trackers** tab, you'll find CMP information showing:

- **CMP detected** - the name of the consent platform
- **Version** - if available from the implementation
- **Integration** - whether it integrates with Google Consent Mode

### Detected CMP Platforms

| Platform | Detection Method |
|----------|------------------|
| Cookiebot | `CookieConsent` object, `cookiebot.com` scripts |
| OneTrust | `OneTrust` object, `onetrust.com` scripts |
| Usercentrics | `UC_UI` object, `usercentrics.eu` scripts |
| Termly | `termly.io` scripts |
| Iubenda | `iubenda.com` scripts |
| TrustArc | `truste.com` scripts |

## Google Consent Mode Integration

Many CMPs integrate with Google Consent Mode, which tells Google services (Analytics, Ads) about user consent status.

### What Is Google Consent Mode?

Consent Mode is Google's protocol for consent communication:

| Category | Description |
|----------|-------------|
| `analytics_storage` | Analytics cookies (GA4) |
| `ad_storage` | Advertising cookies (Google Ads) |
| `ad_user_data` | Sending user data to Google |
| `ad_personalization` | Ad personalization |

### Verifying Consent Mode Integration

When a CMP properly integrates with Consent Mode:

1. **Before consent** - all categories should be `denied`
2. **After "Accept All"** - categories change to `granted`
3. **After "Reject"** - analytics/ads stay `denied`

```javascript
// Default state (before consent)
gtag('consent', 'default', {
  'analytics_storage': 'denied',
  'ad_storage': 'denied',
  'ad_user_data': 'denied',
  'ad_personalization': 'denied'
});

// After user accepts
gtag('consent', 'update', {
  'analytics_storage': 'granted',
  'ad_storage': 'granted',
  'ad_user_data': 'granted',
  'ad_personalization': 'granted'
});
```

## Manual CMP Detection Methods

### Method 1: Check Global Objects

Open DevTools Console and try:

```javascript
// Cookiebot
typeof CookieConsent !== 'undefined'

// OneTrust
typeof OneTrust !== 'undefined'

// Usercentrics
typeof UC_UI !== 'undefined'

// IAB TCF
typeof __tcfapi !== 'undefined'
```

### Method 2: Network Tab

Look for requests to CMP domains:
- `consent.cookiebot.com`
- `cdn.cookielaw.org` (OneTrust)
- `app.usercentrics.eu`

### Method 3: Check dataLayer

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

## CMP Comparison

| Feature | Cookiebot | OneTrust | Usercentrics |
|---------|-----------|----------|--------------|
| Auto-scan cookies | ✅ | ✅ | ✅ |
| Google Consent Mode | ✅ | ✅ | ✅ |
| IAB TCF 2.2 | ✅ | ✅ | ✅ |
| Free tier | ✅ (1 domain) | ❌ | ✅ (limited) |
| WordPress plugin | ✅ | ✅ | ✅ |

## Common Implementation Issues

### ❌ No CMP Before Tracking

```html
<!-- Wrong - GA4 loads before CMP -->
<script src="https://www.googletagmanager.com/gtag/js?id=G-XXXXX"></script>
<script src="https://cdn.cookielaw.org/..."></script>
```

**Problem:** Tracking scripts load before consent check.

**Solution:** Load CMP script first, use GTM consent-aware triggers.

### ❌ CMP Without Consent Mode

The CMP shows a banner but doesn't communicate with Google services.

**Problem:** Google Ads may lose conversion data in EU.

**Solution:** Enable Consent Mode integration in CMP settings.

### ❌ Consent Mode Without CMP

```javascript
gtag('consent', 'default', {
  'analytics_storage': 'granted',  // Always granted!
});
```

**Problem:** GDPR violation - tracking without actual consent.

**Solution:** Use a proper CMP that updates consent based on user choice.

## Testing CMP Implementation

### Test 1: New User (Incognito)

1. Open site in incognito mode
2. Open UPER SEO Auditor
3. Check: CMP detected, trackers blocked

### Test 2: Accept All

1. Click "Accept All" on the banner
2. Refresh UPER panel
3. Check: GA4/GTM scripts now active

### Test 3: Reject All

1. Clear cookies, reload
2. Click "Reject" / "Essential Only"
3. Check: Analytics trackers still blocked

### Test 4: Partial Consent

1. Open cookie preferences
2. Accept only "Analytics"
3. Check: GA4 active, ads trackers blocked

## Export and Reporting

CMP detection results are included in PDF export:

- CMP platform name
- Integration status
- Consent Mode compatibility
- Detected issues

## IAB TCF Compliance

For advertising, many CMPs implement IAB TCF (Transparency and Consent Framework):

```javascript
// Check TCF presence
__tcfapi('ping', 2, (pingReturn) => {
  console.log('TCF Version:', pingReturn.cmpVersion);
  console.log('GDPR Applies:', pingReturn.gdprApplies);
});
```

UPER SEO Auditor detects TCF implementation and shows the TCF version.

## Summary

Detecting and verifying CMP implementation requires checking:

1. **CMP presence** - which platform is used
2. **Consent Mode** - is it integrated with Google
3. **Script blocking** - are trackers blocked before consent
4. **Update flow** - does consent state change correctly
5. **IAB TCF** - for advertising compliance

UPER SEO Auditor shows CMP detection in the Trackers tab, making it easy to verify consent implementation.

Try [UPER SEO Auditor](https://chromewebstore.google.com/detail/uper-seo-auditor/khhpbeckpphaoiemjdijhbfpjnendage) and check how any website handles consent.

## Sources

1. **IAB Europe - TCF 2.2**
[https://iabeurope.eu/tcf-2-0/](https://iabeurope.eu/tcf-2-0/)

2. **Google - Consent Mode**
[https://developers.google.com/tag-platform/security/guides/consent](https://developers.google.com/tag-platform/security/guides/consent)

3. **Cookiebot Documentation**
[https://www.cookiebot.com/en/help/](https://www.cookiebot.com/en/help/)

4. **OneTrust - Consent Management**
[https://www.onetrust.com/products/consent-management/](https://www.onetrust.com/products/consent-management/)
