Press enter to see results or esc to cancel.

GDPR compliance, cookies and consent

The GDPR (General Data Protection Regulation) is a regulation in European Union (EU) on data protection and privacy for all individuals within the EU and the European Economic Area (EEA) that was designed to harmonize data privacy laws across Europe. If you collect personal information from any EU citizen (within or outside the EU), you must first obtain explicit and unambiguous consent.

Ad Inserter Cookies

Ad Inserter itself does not use cookies except for debugging to store enabled debugging functions and for ad blocking detection when you use delayed action to store pageviews and action settings.

Debugging cookie is only created for administrator using debugging functions or for the user using remote debugging functions via url.

When ad blocking detection is enabled and delayed actions used, 3 cookies may be created for every visitor: aiADB, aiADB_PV and aiADB_PR. However, no personal data is stored in the cookies, only pageviews and action settings.

The ads you may insert with the plugin may use own cookies – please check with ad networks for details.

How to display a GDPR compliant cookie message?

You can use any WordPress plugin for GDPR compliance / cookie consent, for example:

Cookie Notice for GDPR
Cookie Consent
GDPR Cookie Consent
Complianz | GDPR/CCPA Cookie Consent
Borlabs Cookie (paid)

Installing GDPR plugin alone does not make your site GDPR compliant. Since ads you insert may use various cookies, you may need to make sure you have necessary configurations in place.

How to show ads based on visitors’ consent?

Ad Inserter supports inserting (showing) ads based on cookies or cookie values. If you have used a plugin for cookie consent you can define cookie condition to insert or show ads by black/white-listing Url parameters (where also cookies are checked).

If you are using one of the following plugins for cookie consent you need to white-list (button Lists) the following cookie value in Url parameter list:

Cookie consent plugin List type List value
GDPR Cookie Consent White viewed_cookie_policy=yes
Cookie Notice for GDPR White cookie_notice_accepted=true
Cookie Consent White catAccCookies=1
Complianz Cookie Consent White complianz_consent_status=allow
Borlabs Cookie White borlabs-cookie[consents][essential][*]=borlabs-cookie


If you are using caching (very likely) you also need to set Dynamic blocks to Client-side insert (tab / tab General) in order to check cookies in visitor’s browser and not when the page is generated.

PRO How to display ads as soon as the consent is given?

Normally, when you configure the plugin as described above, the ads will be loaded with the next page load after the consent is given. However, with Ad Inserter Pro it is possible to immediately display the ads as Ad Inserter Pro supports manual loading. Manual loading means that the code block (ad) is not loaded (inserted) until you call a Javascript function for loading.

If your consent plugin supports custom action when the consent is given (or changed), you need to set Manual loading to Auto and Dynamic blocks to Client-side. The block will be processed according to the settings. If url parameter list (used also for cookies) fails, the block will be marked for manual loading. To check again for cookies and load the block if the conditions (cookies present) are met, the Javascript function ai_load_blocks (block) needs to be called. The block number parameter is optional, if it is not provided all blocks enabled for manual loading (and not loaded yet) will be loaded. Of course, the code for the ads needs to support asynchronous loading (loading after the page is created).

Example of Javascript code for Complianz Cookie Consent plugin which supports javascript hooks for consent actions:

  $(document).on("cmplzEnableScripts", aiScriptHandler);
  function aiScriptHandler (consentData) {
    console.log (' cmplzEnableScripts CONSENT LEVEL', consentData.consentLevel);
    if (consentData.consentLevel === 'all'){
      console.log ('AI LOAD BLOCKS');
      ai_load_blocks ();