The Consent Preferences Manager makes it easy to deploy a tracking preferences option to your website to allow customers to specify which categories of tags they will allow. This tools offers full access to customize the code that generates the preferences pop-up and the ability to translate content for your global customers.

In this article:

Table of Contents Placeholder

How It Works

The Consent Preferences Manager works together with the Consent Prompt Manager to present tracking options to your customers. It replaces the functionality previously offered by the Privacy Manager extension. Once a customer opts-in or opts-out, the prompt is no longer shown, but preferences about the types of tracking to allow can be accessed via the consent preferences pop-up.  The preferences manager puts tags into categories based on their function and purpose, such as "Analytics", "Display Ads", or "Email Marketing" to name a few. These categories are presented to the customer with toggle buttons to allow or disallow that tracking to occur.

Example preferences pop-up:


The Consent Preferences Manager in Tealium iQ makes it easy to create and deploy a tracking preferences prompt to your website using your existing iQ installation. Once published, you will add a simple JavaScript function call to your page code to trigger the pop-up. 


The Consent Preferences Manager offers the following features:

  • Display Templates
  • Customizable Style and Layout
  • Multi-Language Support
  • Tag Categories

All of the configuration is bundled with your existing installation of the JavaScript library (utag.js).

Once you activate and configure the preferences prompt, the changes are released in your next publish. 

JavaScript Code

Once enabled and published, the consent preferences popup will introduce a JavaScript function into the utag namespace to allow you to integrate additional functionality. Use the following function to launch the consent preference dialog.


Displays the consent preferences popup. This function should be integrated into your site to provide visitors a way to change their consent preferences.


<a href="#" onClick="utag.gdpr.showConsentPreferences()">Consent Preferences</a>

To set the language dynamically pass a language code value to the function. This will override both the  window.utag_cfg_ovrd.gdprDLRef configuration and the browser detection logic.


utag.gdpr.showConsentPreferences('de-DE'); // German/Germany
utag.gdpr.showConsentPreferences('fr'); // French


The Consent Preferences Manager is configured using the following screens:

  • Content
    Use this screen to enter the message displayed to your customers, add multiple language translations, and provide your company's logo URL and privacy policy link.
  • Customization
    Customize the design and layout of your prompt by editing the CSS, HTML, and JavaScript used to display the pop-up.
  • Categories
    Groups your tags into categories based on their purpose or function.
  • Options
    Adjust additional options, like logging consent changes using DataAccess or marking non-tracking tags that are not governed by consent management (e.g. chat widget).


Global Settings

The Consent Preferences Manager can be configured for multiple profiles at once using global settings. This allows you to configure the preferences pop-up at the account level and have each profile inherit the global configuration. 

To learn more, see Managing Global Consent Content.

Getting Started

To begin setting up the Consent Preferences Manager, go to the My iQ tab and in the left side bar click Privacy Management. Click Get Started to launch the configuration modal. If your preferences prompt is already set up, you can toggle it on or off from this screen.


On the Content screen you will customize the message displayed in the preferences pop-up, add languages for translated content, define custom parameters, and see a preview of the pop-up.

The pop-up is templatized so that the content is separated from the code. The code uses parameters to substitute content using placeholder parameters. Parameters are referenced using the format: {{parameter_name}}.

The standard built-in content parameters are:

  • Title  {{title}} 
    The main heading of the consent prompt.
  • Message  {{message}} 
    Your message to customers to inform them about your tracking intentions and links to other resources such as a privacy policy or contact form.
  • Opt-in/Opt-out  {{opt_in}} / {{opt_out}}
    The two options available: opt-in - grant consent, opt-out - deny consent.
  • Confirmation Button  {{confirmation_button}} 
    The label on the submission button.

To edit the content of the standard parameters, modify the text fields and click Finish.

Sample HTML code with parameters:

<div class="example_body">
<div class="privacy_prompt">
<div class="privacy_prompt_content">
<div class="privacy_prompt_footer">
<div class="button right">{{confirmation_button}}</div>
<div class="close_btn_thick"></div>

Custom Parameters

Custom parameters can be added to further customize the pop-up. Custom parameters can be referenced within the standard parameters or in the CSS/HTML/JavaScript code.

Best Practice: Avoid putting translatable text directly in the HTML or JavaScript. Instead, construct the code with {{parameters}} and define the values using custom parameters.

To add a custom parameter:

  1. Click +Add Parameter. The Custom Parameter dialog appears.
  2. Enter a name for the parameter.
  3. Click Apply. The new custom parameter will appear in the list.
  4. Enter a value for the new parameter. This value will be substituted whereever the parameter is referenced.
  5. Click Finish.


The preferences pop-up is built with automatic language detection. The browser's language setting of the browser is detected (two-character language code eg. 'de' for German) and the pop-up presents the corresponding version of the content (if that language has been configured). The preferences pop-up is configured in English (en) as the default.

You can however override the language with a value provided in the datalayer (provided it is in the ISO format). Add this code as a preloader extension. This will tell the Consent which variable to use to switch the language. This will affect the language shown for both explicit and  preferences manager.

window.utag_cfg_ovrd = window.utag_cfg_ovrd || {}; 
window.utag_cfg_ovrd.gdprDLRef = "<some data layer var e.g. meta.lang/page_lang>";


To add a language:

  1. In the Language side panel, click +Add. The Add Language dialog appears.
  2. Select the desired language and click Apply. The new language will appear in the Language side panel.
  3. Click the new language to configure its content.
  4. Enter the translated values in the standard parameter boxes (Title, Message, and Confirmation Button).
  5. Click Finish.

Set a default language by checking the box named Make Default Language located in the language title bar. The default language will be used to display the preferences pop-up when the customer's detected browser language does not have a matching language configured in the consent prompt manager.



Preview your configuration by clicking Preview from the language title bar.

Customization (CSS, HTML, JavaScript)

On the Customization screen you will see the code behind the consent prompt--the CSS, HTML, and JavaScript that runs the prompt. This code can be edited to adjust the look and design of the pop-up to match your website. 


On the Categories screen you will adjust the categories that tags are grouped into. The categories are presented to the customer as options to toggle on or off.

To adjust a tag category:

  1. Select a category from the sidebar. The list of tags appears in the main panel.
  2. Click the drop-down menu and select a new category for the tag.
  3. Click Finish.


On the Options screen you can configure the Tealium cookie behavior and tags to omit.

Cookie Preferences

Select whether or not to retain the Tealium cookie. This setting will override any other preferences that disable tracking. The Tealium cookie is used for visitor, session and timestamp information. It addition, it can be used with the Persist Data Values extension to store custom values.

Default State for Categories

This setting applies to two scenarios where a default state for the categories is needed:

  • Explicit consent prompt is active but the user ignores it
    When the consent preferences modal is shown the default state for categories is used.
    • On: categories are enabled by default in the preferences modal until the user makes changes, but tracking follows the consent prompt policy until the user gives consent.
    • Off: categories are disabled by default in the preferences modal until the user makes changes, but tracking follows the consent prompt policy until the user gives consent.
  • Explicit consent prompt is inactive and the user has not set preferences
    The default state for categories will determine if tags should fire.
    • On: tracking will occur until preference categories are disabled
    • Off: tracking will be suppressed until preference categories are enabled

Tag to Omit

Not all tags deployed via iQ Tag Management are for tracking or data collection. Tags and extensions can also be used to serve site functionality, such as pop-up modals, product feedback, site support, or chat clients. Use the Tags to Omit setting to create a list of tags to be exempted from the consent preferences pop-up.