CJM
PixelGDPR & consent

Connect your cookie banner

Configure Iubenda, Cookiebot, a custom banner, or GTM.

A CMP is the tool displaying your cookie banner and collecting preferences. The Pixel does not detect it automatically; connect it to updateConsent using the actual choice.

From the dashboard

  1. Install the Pixel and open Setup → Pixels → Pixel → Settings → Privacy and consent.
  2. Under Make your pixel GDPR-ready, choose Iubenda, Cookiebot, Manual, or GTM.
  3. Fill the fields and select Generate script, where available.
  4. Have your developer integrate the code with existing website configuration and handle load order.
  5. Publish and test acceptance, refusal, partial choice, withdrawal, and return visits.

Iubenda fields

FieldRequiredValue
Site IDYesIubenda site identifier as a string.
Cookie Policy IDYesIubenda policy identifier as a string.
LanguageNoLanguage code, such as it.

Generated code contains _iub.csConfiguration and the Iubenda script loader. If your banner already exists, merge callbacks into its configuration without loading it twice or replacing unrelated options. Do not blindly append the generated code to an existing installation.

Current generation maps purpose 4 to statistics and purpose 5 to advertising signals when preference.purposes is available; otherwise it uses the overall answer. Verify the mapping against your banner configuration. Callbacks cover granting, rejection, and expressed preferences. See the official Iubenda guide.

Cookiebot fields

FieldRequiredValue
Cookiebot IDYesBanner identifier as a string.
Blocking modeNoAuto or Manual; generation defaults to auto.

Generated code includes the Cookiebot loader and CookiebotOnAccept, CookiebotOnDecline, and CookiebotOnLoad handlers. statistics maps to analyticsStorage; marketing maps to the other three signals. preferences is not mapped.

For an existing banner, keep one installation and merge handlers. Register them in time to catch saved choices too. See the official Cookiebot reference.

The dashboard offers Manual and generates data-blockingmode="manual", while Cookiebot documents none for manual blocking. If you choose this mode, have the final script value corrected and verify the banner configuration with its administrator.

Prevent load-order problems

Generated callbacks call window.CJMPixel.updateConsent directly. Tag order alone does not guarantee the asynchronous Pixel script is available. Your integration must retain the banner's latest actual choice and apply it when CJM becomes available. Never replace an early failed call with an automatic consent grant.

Custom banner

Manual shows examples using accept-btn, reject-btn, and accept-analytics-only-btn. These are sample IDs: replace them and register handlers after both buttons and Pixel are available. Do not paste unchanged when those elements do not exist.

Connect acceptance, refusal, partial choices, and withdrawal to the consent APIs. Restore the banner's saved choice on subsequent pages. getConsentState() checks CJM state but does not replace your banner UI.

Publish through GTM

  1. Configure and save Account, Container, and Workspace in Installation & test → Google Tag Manager.
  2. Return to Settings → Privacy and consent, choose Iubenda or Cookiebot, and fill the fields.
  3. Review workspace changes before Push to GTM: this publishes the tags in the container.
  4. Review Sync Status, tag names, and errors. The GTM tab summarizes the connection; it does not generate a standalone provider.

Iubenda creates an initialization tag with callbacks. Cookiebot creates tags for its acceptance/refusal dataLayer events. The Cookiebot GTM variant does not install the banner: verify its presence and events on return visits too. Always check Pixel loading and saved preferences in preview.

Expected result

getConsentState().signals must reflect actual preferences after refusal and withdrawal too. If it stays unspecified, check loading, callbacks, and wiring. A visible banner alone does not prove successful integration.

On this page