Error 1.1 : Google, as a vendor, is not allowed under consent or legitimate interest.
Indicates that Google Ads was allowed to load despite the visitor not having given consent to Google as a vendor.
To fix this, you need to ensure Google Ads doesn't load unless Marketing consent has been given. If you implement Google Ads inline and use manual blocking mode, ensure that the script doesn't load by ensuring it has the following attributes:
type="text/plain"
data-cookieconsent="marketing"
When using auto blocking, Google Ads should automatically be blocked prior consent.
In both cases, if users previously accepted marketing cookies, but don't have a consent string that indicates that Google has consent, the script will load, despite Google not having explicitly having consent. This error will occur as a result.
Forcing users to renew consent by using the Renew now button in the Cookiebot Manager will resolve this issue.
Advanced:
You can "ask" __tcfapi
if Google as a vendor has been consented to using the following method:
const callback = (tcData, success) => { if (success && tcData.eventStatus === "tcloaded") { /* Determine whether or not Google has been consented to using: tcData.vendor.consents[755] Determine whether or not to use personalized ads using: tcData.purpose.consents[4] */ __tcfapi("removeEventListener", 2, (success) => { if (success) { // Event fired, and eventListener removed } }, tcData.listenerId); } }; __tcfapi("addEventListener", 2, callback);
Error 2.1a : Tag or SDK isn’t receiving a TC string due to CMP status being stub
, loading
, or error
.
Typically, this is due to Google Ads attempting to retrieve the tcString before consent has been submitted by the visitor. At this time the tcString hasn't been generated yet, making it impossible for Google Ads to determine if consent has been given or not.
This can be due to the Cookiebot script not having been loaded when the Google Ads script loads, or the lack of mark up in manual mode.
You can fix this by ensuring that:
- Cookiebot in implemented correctly and capable of blocking scripts
- Scripts that set marketing cookies are blocked prior consent, either by using the auto blocking function, or by ensuring elements are manually marked up
- Cookies are correctly categorized as "Marketing" cookies in the Manager.
- Visitors don't have a CookieConsent cookie that allows marketing cookies, but doesn't include a tcString. Renew consents in the Manager to ensure this isn't the case.
Advanced:
You can also manually load scripts using __tcfapi
or Cookiebot's "CookiebotOnAccept"
events, to ensure that the tcString will only be requested when the tcString has been generated:
__tcfapi("addEventListener", 2, function (tcData, success) {
if (success && tcData.eventStatus === "tcloaded") {
// do something with tcData.tcString
}
});
or:
window.addEventListener("CookiebotOnAccept", function () {
// do something with Cookiebot.IABConsentString;
});
Error 3.1 : The TC string creation date was more than 13 months ago.
This should never happen since the CookieConsent cookie expires after 12 months. Forcing users to renew consent will resolve this issue though.
Error 4.1 : The TC string was generated using a version of the GVL in which Google is not yet listed.
Since Google wasn't listed before August 1st 2020, the tcString may not include Google (vendor id 755).
Forcing users to renew consent will resolve the issue by using the Renew now button in the Cookiebot Manager
Advanced:
Alternatively, you can delete the CookieConsent cookie if it was set before August 1st 2020 (when Google was added to the Global Vendor List):
window.addEventListener("CookiebotOnLoad", function () { var consentDate = new Date(Cookiebot.consentUTC), limit = new Date(); limit.setFullYear(2020, 7, 1); consentDate < limit && (Cookiebot.deleteConsentCookie(), Cookiebot.show()); });
Comments
0 comments
Please sign in to leave a comment.