Ad Server and GDPR
Due to the General Data Protection Regulation (GDPR), all standard and non-standard tag parameters must pass to the Ad Server acknowledgment of consent by the user allowing the use of personal data for targeting and other purposes. See the Verizon Media Ad Server Tag References Document for full details on how to define Standard Tags and Non-Standard Tags.
Tag Parameters
- Standard tag parameters - include tag domain, request type, gdpr, and gdpr_consent.
- Non-standard tag parameters - include the alias or cookie parameter.
Parameter | Description | Example |
---|---|---|
gdpr_consent |
This parameter passes a base64 websafe encoded IAB user consent string. The string represents user consent settings and contains the purpose and vendor bits. gdpr_consent must be sent along with the gdpr parameter.
|
Source: iAB Digital Advertising presentation |
gdpr |
gdpr: Denotes whether GDPR compliance applies to this user or not. If any of the below conditions is true, the request is subject to GDPR (gdpr=1) and Ad Server validates the consent string from the gdpr_consent parameter:
In case the network owner (= Publisher) knows his websites and users are always under GDPR compliance a network setting in the backend can be set corresponding to “always gdpr=1”. In this case this parameter would not be needed and the Ad Server would always check for consent in gdpr_consent. If the parameter gdpr is not present or the value is not valid the Ad Serverwill check the GDPR compliance . Ad Server performs a lookup of the users IP address to see if user is from EU or not. |
Yes: gdpr=1
No: gdpr=0 |
gdpr_pd |
Used for generic URL parameters and only in connection with Key Value and Keyword Targeting.
If no consent is present the Ad Server will ignore data in the KV or keyword parameters for Targeting and delete data before saving data from the ad request. Note: "defined" URL parameters, must state whether or not they include personal data. |
Default - gdpr_pd=1 Optiona - gdpr_pd=0 |
Standard Tag Examples
Standard Tags | Example Code |
---|---|
Example JavaScript tag |
<!--JavaScript Tag // Tag for network 25: CS - Doku // Website: ADTECH // Page: Home // Placement: Home 468x60 (1021145) // created at: Jan 12, 2010 3:44:22 PM--> <script language="javascript"><!-- document.write('<scr'+'ipt language="javascript1.1" src="http://adserver.adtech.de/addyn|3.0|25|1021145|0|1|ADTECH;gdpr=;gdpr_consent=;loc=100;target=_blank;misc='+new Date().getTime()+'"></scri'+'pt>'); //--> </script><noscript><a href="http://adserver.adtech.de/adlink|3.0|25|1021145|0|1|ADTECH;gdpr=;gdpr_consent=;loc=300" target="_blank"><img src="http://adserver.adtech.de/adserv|3.0|25|1021145|0|1|ADTECH;gdpr=;gdpr_consent=;loc=300" border="0" width="468" height="60"></a></noscript> <!-- End of JavaScript Tag --> |
Example IFRAME tag |
<!--IFRAME Tag // Tag for network 25: CS - Doku // Website: ADTECH // Page: Home // Placement: Home 468x60 (1021145) // created at: Jan 12, 2010 3:43:14 PM --> <IFRAME WIDTH="468" HEIGHT="60" SCROLLING="No" FRAMEBORDER="0" MARGINHEIGHT="0" MARGINWIDTH="0" SRC="http://adserver.adtech.de/adiframe|3.0|25|1021145|0|1|ADTECH;gdpr=;gdpr_consent=;target=_blank"><script language="javascript" src="http://adserver.adtech.de/addyn|3.0|25|1021145|0|1|ADTECH;gdpr=;gdpr_consent=;loc=700;target=_blank"></script><noscript><a href="http://adserver.adtech.de/adlink|3.0|25|1021145|0|1|ADTECH;gdpr=;gdpr_consent=;loc=300" target="_blank"><img src="http://adserver.adtech.de/adserv|3.0|25|1021145|0|1|ADTECH;gdpr=;gdpr_consent=;loc=300" border="0" width="468" height="60"></a></noscript></IFRAME> <!-- End of IFRAME Tag --> |
Example Image tag | <!-- Image Tag (Tag for Images only) // TAG for network 25: CS - Doku // Website: ADTECH // Page: Home // Placement: Home 468x60 (1021145) // created at: Jan 12, 2010 3:44:03 PM --> <a href="http://adserver.adtech.de/adlink|3.0...145|0|1|ADTECH;gdpr=;gdpr_consent=" target="_blank"><img src="http://adserver.adtech.de/adserv|3.0...145|0|1|ADTECH;gdpr=;gdpr_consent=" border="0" height="60" width="468" alt="[Alt-Text]"></a> <!-- End of Image Tag --> |
Non-Standard Tag Examples
Non-Standard Tags | Example Code |
---|---|
Adxml tag | http://adserver.adtech.de/?adxml|2.0|25|1423628|0|16|rettype=img;header=no;cookie=no;gdpr=;gdpr_consent= |
Agency Tag |
http://adserver.adtech.de/addyn|3.0|19|1055380|0|6|ADTECH;AdId=1069834;BnId=-1;loc=100;target=_blank;misc=[timestamp];rdclick=;gdpr=;gdpr_consent= |
Beacon tags |
Transaction tracking beacon tag http://adserver.adtech.de/utrack|3.0|25|0|0|0|BeaconId=60;rettype=img;subnid=1;Section=[Homepage];gdpr=;gdpr_consent= User tracking beacon tag http://adserver.adtech.de/utrack|3.0|25|0|0|0|BeaconId=60;rettype=img;subnid=1;Section=[Homepage];gdpr=;gdpr_consent= |
Bind Request |
http://adserver.mydomain.de/bind?ckey1=cookiename1;cvalue1=cookievalue1;ckey2=mykey;expiresDays=90;networkId=25;subNetworkId=1;gdpr=;gdpr_consent= Note: A Bind Request is required to write cookies.To support GDPR the bind request must include the networkId and subNetworkId parameters. Without these parameters, Ad Server is unable to verify the network is trusted or enabled for consent override. |
Friendly iframe tag | <SCRIPT TYPE="text/javascript"> var adtech_adurl_1423628 = 'http://adserver.adtech.de/addyn|3.0|25|1423628|0|16|ADTECH;loc=100;target=_blank;key=key1+key2+key3+key4;;gdpr=;gdpr_consent=; misc='+new Date().getTime()+''; document.writeln('<DIV ID="ADTECH_AdContainer_1423628"><IFRAME ID="ADTECH_IFRAME_1423628" FRAMEBORDER="0" STYLE="display:none;width: 0px; height: 0px;" SRC="/adtech/stubfile.html"></IFRAME></DIV>'); </SCRIPT> |
JavaScript Tag (with GroupID Generator) | <!--JavaScript Tag // Tag for network 25: CS - Testnetzwerk // Website: ADTECH // Page: Homepage // Placement: Homepage-728x90-1 x 1 (1423628) // created at: Jan 14, 2010 4:23:06 PM--> <script language="javascript"> <!-- if (window.adgroupid == undefined) { window.adgroupid = Math.round(Math.random() * 1000); } document.write('<scr'+'ipt language="javascript1.1" src="http://adserver.adtech.de/addyn|3.0|25|1423628|0|16|ADTECH;loc=100;target=_blank;key=key1+key2+key3+key4; grp=;gdpr=;gdpr_consent='+window.adgroupid+';misc='+new Date().getTime()+'"></scri'+'pt>'); //--> </script><noscript><a href="http://adserver.adtech.de/adlink|3.0|25|1423628|0|16|ADTECH;loc=300;key=key1+key2+key3+key4;gdpr=;gdpr_consent=" target="_blank"> <img src="http://adserver.adtech.de/adserv|3.0|25|1423628|0|16|ADTECH;loc=300;key=key1+key2+key3+key4;gdpr=;gdpr_consent=" border="0" width="1" height="1"></a></noscript> <!-- End of JavaScript Tag --> |
Mobile Tags |
EU http://a.adtech.de/addyn/3.0/1119.1/0/0/0/ADTECH;loc=100;grp=[group];gdpr=;gdpr_consent=;random=129906372986 US http://a.adtechus.com/addyn/3.0/1119.1/0/0/0/ADTECH;loc=100;grp=[group];gdpr=;gdpr_consent=;random=129906372986 |
MultiAd Tag | <script type="text/javascript"> document.write('<scr'+'ipt type="text/javascript" src="http://adserver.adtech.de/multiad/3.0/25/0/0/-1/ADTECH;mode=multiad;plcids=1509794,1509793;loc=100;target=_blank; key=bmw;gdpr=;gdpr_consent=;misc='+new Date().getTime()+'"></scri'+'pt>'); </script> <!-- call the javascript function to show the banner for the first placement, if a default ad is delivered it will be shown (because the third parameter is false) --> <script type="text/javascript"> ADTECH_showAd(1509794, document, false); </script> <!-- call the javascript function to show the banner for the second placement, if a default ad is delivered the function does nothing (because the parameter 'skipdefaults' is true) --> <script type="text/javascript"> ADTECH_showAd(1509793, document, true); </script> </body> </html> |
Newsletter Tag | http://adserver.adtech.de/adserv|3.0|25|1149530|0|225|ADTECH;key=key1+key2+key3+key4;grp=[group];cookie=no;uid=no;gdpr=;gdpr_consent= |
Raw Data tag | http://adserver.adtech.de/?adrawdata/3.0/25.1/1449005/0/16/header=yes;cookie=no;adct=204;grp=[group];gdpr=;gdpr_consent= |
Reload Tag | !-- Reload Tag (URL Tag for Rich Media) // Tag for network: CS - Testnetzwerk (ID: 25) ++ website:ADTECH ++ content unit: Homepage-728x90-1 x 1 (CU ID: 1423628) ++ Date: Jan 14, 2010 4:24:48 PM --> <nolayer><IFRAME WIDTH=1 HEIGHT=1 NORESIZE SCROLLING=No FRAMEBORDER=0 MARGINHEIGHT=0 MARGINWIDTH=0 ID="ADTECHIFRAME1423628" SRC="http://adserver.adtech.de/adiframe|2.0|25|1423628|28756|16|ADTECH;key=key1+key2+key3+key4;group=[group]"> <a href="http://adserver.adtech.de/adlink|2.0|25|1423628|28756|16|ADTECH;loc=300;key=key1+key2+key3+key4;group=[group];gdpr=;gdpr_consent=" target="_blank"> <img src="http://adserver.adtech.de/adserv|2.0|25|1423628|28756|16|ADTECH;loc=300;key=key1+key2+key3+key4;group=[group];gdpr=;gdpr_consent=" border=0 width="1" height="1"></a> </IFRAME></nolayer> <ilayer id="ADTECHILAYER1423628" src="http://adserver.adtech.de/adiframe|2.0|25|1423628|28756|16|ADTECH;key=key1+key2+key3+key4;group=[group];gdpr=;gdpr_consent=" WIDTH="1" HEIGHT="1" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"> </ilayer> <script> <!-- var ADTECH1423628_ReloadIntervall= 30000; function ADTECHReloadBanner1423628() { if (document.getElementById('ADTECHIFRAME1423628')) { document.getElementById('ADTECHIFRAME1423628').src="http://adserver.adtech.de/adiframe|2.0|25|1423628|28756|16|ADTECH;key=key1+key2+key3+key4;group=[group];gdpr=;gdpr_consent=;misc="+new Date().getTime(); }else if (document.ADTECHBanner1423628) { document.ADTECHBanner1423628.src="http://adserver.adtech.de/adserv|2.0|25|1423628|28756|16|ADTECH;loc=300;key=key1+key2+key3+key4;group=[group];gdpr=;gdpr_consent=;misc="+new Date().getTime(); } else return; setTimeout("ADTECHReloadBanner1423628()", ADTECH1423628_ReloadIntervall); } setTimeout("ADTECHReloadBanner1423628()", ADTECH1423628_ReloadIntervall); // --> </script> |