[{"data":1,"prerenderedAt":1388},["ShallowReactive",2],{"article-alternates":3,"article-\u002Fde\u002Fmarketing\u002Fconsent-mode-v2-tcf-2-2-modeling-loss-yonetimi":12},{"i18nKey":4,"paths":5},"marketing-006-2026-07",{"de":6,"en":7,"es":8,"fr":9,"it":10,"ru":11},"\u002Fde\u002Fmarketing\u002Fconsent-mode-v2-tcf-2-2-modeling-loss-yonetimi","\u002Fen\u002Fmarketing\u002Fconsent-mode-v2-ve-tcf-modeling-loss-minimize","\u002Fes\u002Fmarketing\u002Fconsent-mode-v2-tcf-2-2-modeling-loss","\u002Ffr\u002Fmarketing\u002Fconsent-mode-v2-tcf-2-2-modeling-loss","\u002Fit\u002Fmarketing\u002Fconsent-mode-v2-tcf-2-2-modeling-loss","\u002Fru\u002Fmarketing\u002Fkonsent-mode-v2-ve-tcf-22-modeling-loss-yonetimi",{"_path":6,"_dir":13,"_draft":14,"_partial":14,"_locale":15,"title":16,"description":17,"publishedAt":18,"modifiedAt":18,"category":13,"i18nKey":4,"tags":19,"readingTime":25,"author":26,"body":27,"_type":1382,"_id":1383,"_source":1384,"_file":1385,"_stem":1386,"_extension":1387},"marketing",false,"","Consent Mode v2 und TCF 2.2: Modeling Loss managen","Google Consent Mode v2 und IAB TCF 2.2 Integration für GDPR-konformen Messdatenverlust minimieren – mit praktischen Szenarien und Implementierungs-Checklisten.","2026-07-16",[20,21,22,23,24],"consent-mode","tcf","gdpr","conversion-modeling","gtm",9,"Roibase",{"type":28,"children":29,"toc":1367},"root",[30,38,45,67,72,85,92,97,143,148,154,167,188,517,522,572,578,583,709,722,728,733,764,777,782,929,942,948,1007,1019,1025,1030,1063,1076,1099,1119,1125,1130,1173,1186,1192,1197,1326,1349,1361],{"type":31,"tag":32,"props":33,"children":34},"element","p",{},[35],{"type":36,"value":37},"text","Google Consent Mode v2 und IAB TCF 2.2 sind nun verpflichtend. Seit März 2024 funktionieren Google Ads Remarketing und Audience Targeting im EWR + UK ohne Consent Mode nicht mehr. Doch wenn Sie Legal Compliance erreichen, stoßen Sie auf ein neues Problem: 40–70 % der Nutzer lehnen das Analytics-Cookie ab, und der Conversion Loss steigt auf 15–35 %. Googles Consent Modeling-Architektur soll diesen Verlust kompensieren – aber nur bei korrektem Setup. In diesem Artikel erklären wir die Implementierungsebenen, TCF-Integration und eine Data-Quality-Checkliste mit echten Szenarien, um Modeling Loss zu minimieren.",{"type":31,"tag":39,"props":40,"children":42},"h2",{"id":41},"consent-mode-v2-was-ist-das-und-warum-ist-modeling-unvermeidlich",[43],{"type":36,"value":44},"Consent Mode v2: Was ist das und warum ist Modeling unvermeidlich",{"type":31,"tag":32,"props":46,"children":47},{},[48,50,57,59,65],{"type":36,"value":49},"Consent Mode ist ein Protokoll, das den Nutzer-Consent-Status (granted\u002Fdenied) als Signal an Google-Plattform-APIs sendet. In v2 wurden zwei neue Parameter hinzugefügt: ",{"type":31,"tag":51,"props":52,"children":54},"code",{"className":53},[],[55],{"type":36,"value":56},"ad_user_data",{"type":36,"value":58}," (können Daten für Personalisierung erfasst werden?) und ",{"type":31,"tag":51,"props":60,"children":62},{"className":61},[],[63],{"type":36,"value":64},"ad_personalization",{"type":36,"value":66}," (kann der Nutzer in Remarketing-Audiences aufgenommen werden?). Ohne diese beiden funktioniert EWR-Traffic in Google Ads nicht für Zielgruppen-Personalisierung.",{"type":31,"tag":32,"props":68,"children":69},{},[70],{"type":36,"value":71},"Das klassische Problem von Consent Mode: Wenn ein Nutzer das Analytics-Cookie ablehnt, kann Google Analytics das Conversion-Event nicht erfassen. Dann fehlen Ihrer Google Ads Kampagne die Conversion-Daten – der Bidding-Algorithmus ist blind. Hier kommt Consent Modeling ins Spiel: Google versucht, das Verhalten von Nutzern ohne Consent zu schätzen, indem es ähnliche Cohorts mit erteiltem Consent analysiert und die Conversion-Zahlen modelliert.",{"type":31,"tag":32,"props":73,"children":74},{},[75,77,83],{"type":36,"value":76},"Damit Modeling funktioniert, braucht es zwei kritische Eingaben: (1) ausreichende granted-Consent-Daten (mindestens 100 Conversions täglich, ideal 1.000+), (2) korrekter Consent-Status-Ping (",{"type":31,"tag":51,"props":78,"children":80},{"className":79},[],[81],{"type":36,"value":82},"gtag('consent', 'update', {...})",{"type":36,"value":84},"). Fehlen diese beiden, rutscht Modeling in den „insufficient data\"-Modus und der Loss wird nicht geschlossen.",{"type":31,"tag":86,"props":87,"children":89},"h3",{"id":88},"faktoren-die-modeling-loss-beeinflussen",[90],{"type":36,"value":91},"Faktoren, die Modeling Loss beeinflussen",{"type":31,"tag":32,"props":93,"children":94},{},[95],{"type":36,"value":96},"Laut Googles Q4-2024-Dokumentation erreicht Consent Modeling auf Konten mit ~50 % Consent-Ablehnungsrate durchschnittlich ~70 % Recovery. Das heißt: Bei 50 % Consent Loss kann Modeling diesen auf ~15 % senken. Diese Quote hängt aber von Variablen ab:",{"type":31,"tag":98,"props":99,"children":100},"ul",{},[101,113,123,133],{"type":31,"tag":102,"props":103,"children":104},"li",{},[105,111],{"type":31,"tag":106,"props":107,"children":108},"strong",{},[109],{"type":36,"value":110},"Consent-granted-Traffic-Volumen:",{"type":36,"value":112}," Unter 100 täglich führt zu schwachen Modellen.",{"type":31,"tag":102,"props":114,"children":115},{},[116,121],{"type":31,"tag":106,"props":117,"children":118},{},[119],{"type":36,"value":120},"CMP-Implementierung:",{"type":36,"value":122}," Ein TCF-v2.2-konformes CMP (OneTrust, Cookiebot, Usercentrics) mit korrektem Purpose- und Vendor-Mapping erhöht die Signal-Qualität.",{"type":31,"tag":102,"props":124,"children":125},{},[126,131],{"type":31,"tag":106,"props":127,"children":128},{},[129],{"type":36,"value":130},"Server-side GTM:",{"type":36,"value":132}," sGTM ermöglicht Backend-Consent-Kontrolle und ergänzt das First-Party-Kontextwissen – Modeling-Input wird stärker.",{"type":31,"tag":102,"props":134,"children":135},{},[136,141],{"type":31,"tag":106,"props":137,"children":138},{},[139],{"type":36,"value":140},"Conversion-Typ-Vielfalt:",{"type":36,"value":142}," E-Commerce-Checkout + Add-to-Cart + Pageview zusammen lassen das Modell aus einem breiteren Funnel lernen.",{"type":31,"tag":32,"props":144,"children":145},{},[146],{"type":36,"value":147},"Wenn Modeling schwach bleibt, unterperformt Ihre Google Ads Bidding-Strategie (Target ROAS, Max Conversions), weil echte Conversion-Signale fehlen. Zur Kompensation braucht es Offline-Conversion-Import oder CAPI (Conversions API) für Backend-zu-Google-Integration.",{"type":31,"tag":39,"props":149,"children":151},{"id":150},"tcf-22-integration-purpose-mapping-und-vendor-liste",[152],{"type":36,"value":153},"TCF 2.2 Integration: Purpose-Mapping und Vendor-Liste",{"type":31,"tag":32,"props":155,"children":156},{},[157,159,165],{"type":36,"value":158},"Das IAB Transparency and Consent Framework (TCF) 2.2 teilt Nutzer-Consent in 10 Purpose-Kategorien auf. Für Google Ads braucht man mindestens Purpose 1 (Informationen speichern\u002Fabrufen) und Purpose 2 (Personalisierung). Die TCF-Consent-String wird vom CMP erzeugt und über ",{"type":31,"tag":51,"props":160,"children":162},{"className":161},[],[163],{"type":36,"value":164},"__tcfapi",{"type":36,"value":166}," Callback ausgelesen – dann in GTM zu Consent Mode konvertiert.",{"type":31,"tag":32,"props":168,"children":169},{},[170,172,178,180,186],{"type":36,"value":171},"In der Praxis läuft es so: Nutzer klickt „Akzeptieren\" im CMP Banner → CMP setzt ",{"type":31,"tag":51,"props":173,"children":175},{"className":174},[],[176],{"type":36,"value":177},"tcData.purpose.consents",{"type":36,"value":179}," auf ",{"type":31,"tag":51,"props":181,"children":183},{"className":182},[],[184],{"type":36,"value":185},"{1: true, 2: true, ...}",{"type":36,"value":187},". Dieses Objekt wird in einer GTM Custom JavaScript Variable ausgelesen und so gemappt:",{"type":31,"tag":189,"props":190,"children":194},"pre",{"className":191,"code":192,"language":193,"meta":15,"style":15},"language-javascript shiki shiki-themes github-dark","var tcData = window.__tcfapi || {};\nvar purposes = tcData.purpose.consents;\n\nif (purposes[1] && purposes[2]) {\n  gtag('consent', 'update', {\n    ad_storage: 'granted',\n    ad_user_data: 'granted',\n    ad_personalization: 'granted'\n  });\n} else {\n  gtag('consent', 'update', {\n    ad_storage: 'denied',\n    ad_user_data: 'denied',\n    ad_personalization: 'denied'\n  });\n}\n","javascript",[195],{"type":31,"tag":51,"props":196,"children":197},{"__ignoreMap":15},[198,236,258,268,313,349,368,385,399,407,426,454,471,487,500,508],{"type":31,"tag":199,"props":200,"children":203},"span",{"class":201,"line":202},"line",1,[204,210,216,221,226,231],{"type":31,"tag":199,"props":205,"children":207},{"style":206},"--shiki-default:#F97583",[208],{"type":36,"value":209},"var",{"type":31,"tag":199,"props":211,"children":213},{"style":212},"--shiki-default:#E1E4E8",[214],{"type":36,"value":215}," tcData ",{"type":31,"tag":199,"props":217,"children":218},{"style":206},[219],{"type":36,"value":220},"=",{"type":31,"tag":199,"props":222,"children":223},{"style":212},[224],{"type":36,"value":225}," window.__tcfapi ",{"type":31,"tag":199,"props":227,"children":228},{"style":206},[229],{"type":36,"value":230},"||",{"type":31,"tag":199,"props":232,"children":233},{"style":212},[234],{"type":36,"value":235}," {};\n",{"type":31,"tag":199,"props":237,"children":239},{"class":201,"line":238},2,[240,244,249,253],{"type":31,"tag":199,"props":241,"children":242},{"style":206},[243],{"type":36,"value":209},{"type":31,"tag":199,"props":245,"children":246},{"style":212},[247],{"type":36,"value":248}," purposes ",{"type":31,"tag":199,"props":250,"children":251},{"style":206},[252],{"type":36,"value":220},{"type":31,"tag":199,"props":254,"children":255},{"style":212},[256],{"type":36,"value":257}," tcData.purpose.consents;\n",{"type":31,"tag":199,"props":259,"children":261},{"class":201,"line":260},3,[262],{"type":31,"tag":199,"props":263,"children":265},{"emptyLinePlaceholder":264},true,[266],{"type":36,"value":267},"\n",{"type":31,"tag":199,"props":269,"children":271},{"class":201,"line":270},4,[272,277,282,288,293,298,303,308],{"type":31,"tag":199,"props":273,"children":274},{"style":206},[275],{"type":36,"value":276},"if",{"type":31,"tag":199,"props":278,"children":279},{"style":212},[280],{"type":36,"value":281}," (purposes[",{"type":31,"tag":199,"props":283,"children":285},{"style":284},"--shiki-default:#79B8FF",[286],{"type":36,"value":287},"1",{"type":31,"tag":199,"props":289,"children":290},{"style":212},[291],{"type":36,"value":292},"] ",{"type":31,"tag":199,"props":294,"children":295},{"style":206},[296],{"type":36,"value":297},"&&",{"type":31,"tag":199,"props":299,"children":300},{"style":212},[301],{"type":36,"value":302}," purposes[",{"type":31,"tag":199,"props":304,"children":305},{"style":284},[306],{"type":36,"value":307},"2",{"type":31,"tag":199,"props":309,"children":310},{"style":212},[311],{"type":36,"value":312},"]) {\n",{"type":31,"tag":199,"props":314,"children":316},{"class":201,"line":315},5,[317,323,328,334,339,344],{"type":31,"tag":199,"props":318,"children":320},{"style":319},"--shiki-default:#B392F0",[321],{"type":36,"value":322},"  gtag",{"type":31,"tag":199,"props":324,"children":325},{"style":212},[326],{"type":36,"value":327},"(",{"type":31,"tag":199,"props":329,"children":331},{"style":330},"--shiki-default:#9ECBFF",[332],{"type":36,"value":333},"'consent'",{"type":31,"tag":199,"props":335,"children":336},{"style":212},[337],{"type":36,"value":338},", ",{"type":31,"tag":199,"props":340,"children":341},{"style":330},[342],{"type":36,"value":343},"'update'",{"type":31,"tag":199,"props":345,"children":346},{"style":212},[347],{"type":36,"value":348},", {\n",{"type":31,"tag":199,"props":350,"children":352},{"class":201,"line":351},6,[353,358,363],{"type":31,"tag":199,"props":354,"children":355},{"style":212},[356],{"type":36,"value":357},"    ad_storage: ",{"type":31,"tag":199,"props":359,"children":360},{"style":330},[361],{"type":36,"value":362},"'granted'",{"type":31,"tag":199,"props":364,"children":365},{"style":212},[366],{"type":36,"value":367},",\n",{"type":31,"tag":199,"props":369,"children":371},{"class":201,"line":370},7,[372,377,381],{"type":31,"tag":199,"props":373,"children":374},{"style":212},[375],{"type":36,"value":376},"    ad_user_data: ",{"type":31,"tag":199,"props":378,"children":379},{"style":330},[380],{"type":36,"value":362},{"type":31,"tag":199,"props":382,"children":383},{"style":212},[384],{"type":36,"value":367},{"type":31,"tag":199,"props":386,"children":388},{"class":201,"line":387},8,[389,394],{"type":31,"tag":199,"props":390,"children":391},{"style":212},[392],{"type":36,"value":393},"    ad_personalization: ",{"type":31,"tag":199,"props":395,"children":396},{"style":330},[397],{"type":36,"value":398},"'granted'\n",{"type":31,"tag":199,"props":400,"children":401},{"class":201,"line":25},[402],{"type":31,"tag":199,"props":403,"children":404},{"style":212},[405],{"type":36,"value":406},"  });\n",{"type":31,"tag":199,"props":408,"children":410},{"class":201,"line":409},10,[411,416,421],{"type":31,"tag":199,"props":412,"children":413},{"style":212},[414],{"type":36,"value":415},"} ",{"type":31,"tag":199,"props":417,"children":418},{"style":206},[419],{"type":36,"value":420},"else",{"type":31,"tag":199,"props":422,"children":423},{"style":212},[424],{"type":36,"value":425}," {\n",{"type":31,"tag":199,"props":427,"children":429},{"class":201,"line":428},11,[430,434,438,442,446,450],{"type":31,"tag":199,"props":431,"children":432},{"style":319},[433],{"type":36,"value":322},{"type":31,"tag":199,"props":435,"children":436},{"style":212},[437],{"type":36,"value":327},{"type":31,"tag":199,"props":439,"children":440},{"style":330},[441],{"type":36,"value":333},{"type":31,"tag":199,"props":443,"children":444},{"style":212},[445],{"type":36,"value":338},{"type":31,"tag":199,"props":447,"children":448},{"style":330},[449],{"type":36,"value":343},{"type":31,"tag":199,"props":451,"children":452},{"style":212},[453],{"type":36,"value":348},{"type":31,"tag":199,"props":455,"children":457},{"class":201,"line":456},12,[458,462,467],{"type":31,"tag":199,"props":459,"children":460},{"style":212},[461],{"type":36,"value":357},{"type":31,"tag":199,"props":463,"children":464},{"style":330},[465],{"type":36,"value":466},"'denied'",{"type":31,"tag":199,"props":468,"children":469},{"style":212},[470],{"type":36,"value":367},{"type":31,"tag":199,"props":472,"children":474},{"class":201,"line":473},13,[475,479,483],{"type":31,"tag":199,"props":476,"children":477},{"style":212},[478],{"type":36,"value":376},{"type":31,"tag":199,"props":480,"children":481},{"style":330},[482],{"type":36,"value":466},{"type":31,"tag":199,"props":484,"children":485},{"style":212},[486],{"type":36,"value":367},{"type":31,"tag":199,"props":488,"children":490},{"class":201,"line":489},14,[491,495],{"type":31,"tag":199,"props":492,"children":493},{"style":212},[494],{"type":36,"value":393},{"type":31,"tag":199,"props":496,"children":497},{"style":330},[498],{"type":36,"value":499},"'denied'\n",{"type":31,"tag":199,"props":501,"children":503},{"class":201,"line":502},15,[504],{"type":31,"tag":199,"props":505,"children":506},{"style":212},[507],{"type":36,"value":406},{"type":31,"tag":199,"props":509,"children":511},{"class":201,"line":510},16,[512],{"type":31,"tag":199,"props":513,"children":514},{"style":212},[515],{"type":36,"value":516},"}\n",{"type":31,"tag":32,"props":518,"children":519},{},[520],{"type":36,"value":521},"Drei Punkte sind beim Mapping wichtig:",{"type":31,"tag":523,"props":524,"children":525},"ol",{},[526,544,554],{"type":31,"tag":102,"props":527,"children":528},{},[529,534,536,542],{"type":31,"tag":106,"props":530,"children":531},{},[532],{"type":36,"value":533},"Vendor-List-Check:",{"type":36,"value":535}," Google (Vendor ID 755) muss in der TCF-Vendor-Liste sein und vom Nutzer genehmigt sein – sonst sollte ",{"type":31,"tag":51,"props":537,"children":539},{"className":538},[],[540],{"type":36,"value":541},"ad_storage: 'denied'",{"type":36,"value":543}," bleiben.",{"type":31,"tag":102,"props":545,"children":546},{},[547,552],{"type":31,"tag":106,"props":548,"children":549},{},[550],{"type":36,"value":551},"Legitimate Interest Modell:",{"type":36,"value":553}," Purpose 2–7–9–10 können auch über „Legitimate Interest\" (berechtigtes Interesse) funktionieren. In der Türkei ist das rechtlich fragwürdig – KVKK-konformität ist unklar.",{"type":31,"tag":102,"props":555,"children":556},{},[557,562,564,570],{"type":31,"tag":106,"props":558,"children":559},{},[560],{"type":36,"value":561},"Consent-Renewal-Zyklus:",{"type":36,"value":563}," TCF 2.2 verlangt Consent-Erneuerung alle 13 Monate. Fehlt dem CMP der Auto-Refresh, fällt der Status auf ",{"type":31,"tag":51,"props":565,"children":567},{"className":566},[],[568],{"type":36,"value":569},"denied",{"type":36,"value":571},".",{"type":31,"tag":86,"props":573,"children":575},{"id":574},"cmp-auswahl-und-qa-checkliste",[576],{"type":36,"value":577},"CMP-Auswahl und QA-Checkliste",{"type":31,"tag":32,"props":579,"children":580},{},[581],{"type":36,"value":582},"Ein TCF-v2.2-Zertifikat ist beim CMP-Kauf Pflicht. OneTrust und Cookiebot sind zertifiziert, aber Custom-Purposes können den IAB Standard brechen. QA-Checkliste:",{"type":31,"tag":584,"props":585,"children":586},"table",{},[587,606],{"type":31,"tag":588,"props":589,"children":590},"thead",{},[591],{"type":31,"tag":592,"props":593,"children":594},"tr",{},[595,601],{"type":31,"tag":596,"props":597,"children":598},"th",{},[599],{"type":36,"value":600},"Schritt",{"type":31,"tag":596,"props":602,"children":603},{},[604],{"type":36,"value":605},"Kontrollpunkt",{"type":31,"tag":607,"props":608,"children":609},"tbody",{},[610,623,641,654,667,688],{"type":31,"tag":592,"props":611,"children":612},{},[613,618],{"type":31,"tag":614,"props":615,"children":616},"td",{},[617],{"type":36,"value":287},{"type":31,"tag":614,"props":619,"children":620},{},[621],{"type":36,"value":622},"CMP-Load-Reihenfolge: Vor GTM Container? (Keine Race Condition?)",{"type":31,"tag":592,"props":624,"children":625},{},[626,630],{"type":31,"tag":614,"props":627,"children":628},{},[629],{"type":36,"value":307},{"type":31,"tag":614,"props":631,"children":632},{},[633,639],{"type":31,"tag":51,"props":634,"children":636},{"className":635},[],[637],{"type":36,"value":638},"__tcfapi('getTCData', 2, callback)",{"type":36,"value":640}," antwortet?",{"type":31,"tag":592,"props":642,"children":643},{},[644,649],{"type":31,"tag":614,"props":645,"children":646},{},[647],{"type":36,"value":648},"3",{"type":31,"tag":614,"props":650,"children":651},{},[652],{"type":36,"value":653},"Purpose 1, 2, 7, 9, 10 Mapping korrekt?",{"type":31,"tag":592,"props":655,"children":656},{},[657,662],{"type":31,"tag":614,"props":658,"children":659},{},[660],{"type":36,"value":661},"4",{"type":31,"tag":614,"props":663,"children":664},{},[665],{"type":36,"value":666},"Vendor 755 (Google) approved?",{"type":31,"tag":592,"props":668,"children":669},{},[670,675],{"type":31,"tag":614,"props":671,"children":672},{},[673],{"type":36,"value":674},"5",{"type":31,"tag":614,"props":676,"children":677},{},[678,680,686],{"type":36,"value":679},"Nach Consent-Update: Ereignis ",{"type":31,"tag":51,"props":681,"children":683},{"className":682},[],[684],{"type":36,"value":685},"consent_update",{"type":36,"value":687}," im GTM Data Layer?",{"type":31,"tag":592,"props":689,"children":690},{},[691,696],{"type":31,"tag":614,"props":692,"children":693},{},[694],{"type":36,"value":695},"6",{"type":31,"tag":614,"props":697,"children":698},{},[699,701,707],{"type":36,"value":700},"GA4 Events bei ",{"type":31,"tag":51,"props":702,"children":704},{"className":703},[],[705],{"type":36,"value":706},"ad_storage: denied",{"type":36,"value":708}," noch gepingt? (Consent-denied-Ping ist verpflichtend)",{"type":31,"tag":32,"props":710,"children":711},{},[712,714,720],{"type":36,"value":713},"Punkt 6 ist kritisch: Auch bei Consent Denied muss ",{"type":31,"tag":51,"props":715,"children":717},{"className":716},[],[718],{"type":36,"value":719},"gtag('event', ...)",{"type":36,"value":721}," gepingt werden – nur das Cookie wird nicht gesetzt. Diese Pings geben Googles Modeling Input.",{"type":31,"tag":39,"props":723,"children":725},{"id":724},"server-side-gtm-hybrid-consent-architektur",[726],{"type":36,"value":727},"Server-Side GTM: Hybrid-Consent-Architektur",{"type":31,"tag":32,"props":729,"children":730},{},[731],{"type":36,"value":732},"Um Signal-Qualität in Consent Mode v2 zu steigern, ist die beste Methode eine „Hybrid-Consent\"-Architektur über server-side GTM (sGTM). Das funktioniert so:",{"type":31,"tag":523,"props":734,"children":735},{},[736,754],{"type":31,"tag":102,"props":737,"children":738},{},[739,744,746,752],{"type":31,"tag":106,"props":740,"children":741},{},[742],{"type":36,"value":743},"Client-Side:",{"type":36,"value":745}," CMP liest Consent-Status, GTM sendet ihn via ",{"type":31,"tag":51,"props":747,"children":749},{"className":748},[],[750],{"type":36,"value":751},"gtag('consent', 'update', ...)",{"type":36,"value":753}," an Google.",{"type":31,"tag":102,"props":755,"children":756},{},[757,762],{"type":31,"tag":106,"props":758,"children":759},{},[760],{"type":36,"value":761},"Server-Side:",{"type":36,"value":763}," sGTM-Container prüft eingehende HTTP-Requests auf Consent-Header. Ist Consent granted, sendet sGTM den Backend-Event (z.B. Checkout-Abschluss) direkt an Google Ads Conversion Endpoint.",{"type":31,"tag":32,"props":765,"children":766},{},[767,769,775],{"type":36,"value":768},"Der Vorteil: Selbst bei iOS ATT-Ablehnung oder Adblocker-Nutzern kann sGTM Server-Side-Conversion-Signale senden – weil der Event Backend-basiert ist, nicht vom Browser-Cookie abhängt. Google matched das via ",{"type":31,"tag":51,"props":770,"children":772},{"className":771},[],[773],{"type":36,"value":774},"gclid",{"type":36,"value":776}," (Google Click ID).",{"type":31,"tag":32,"props":778,"children":779},{},[780],{"type":36,"value":781},"Szenario: Nutzer benutzt Adblocker, Client-Side GTM lädt nicht. Aber Backend sendet beim Checkout HTTP-POST an sGTM:",{"type":31,"tag":189,"props":783,"children":787},{"className":784,"code":785,"language":786,"meta":15,"style":15},"language-json shiki shiki-themes github-dark","{\n  \"event_name\": \"purchase\",\n  \"client_id\": \"hashed_user_id\",\n  \"gclid\": \"abc123\",\n  \"value\": 250.00,\n  \"currency\": \"EUR\",\n  \"consent_ad_storage\": \"denied\"\n}\n","json",[788],{"type":31,"tag":51,"props":789,"children":790},{"__ignoreMap":15},[791,799,821,842,863,884,905,922],{"type":31,"tag":199,"props":792,"children":793},{"class":201,"line":202},[794],{"type":31,"tag":199,"props":795,"children":796},{"style":212},[797],{"type":36,"value":798},"{\n",{"type":31,"tag":199,"props":800,"children":801},{"class":201,"line":238},[802,807,812,817],{"type":31,"tag":199,"props":803,"children":804},{"style":284},[805],{"type":36,"value":806},"  \"event_name\"",{"type":31,"tag":199,"props":808,"children":809},{"style":212},[810],{"type":36,"value":811},": ",{"type":31,"tag":199,"props":813,"children":814},{"style":330},[815],{"type":36,"value":816},"\"purchase\"",{"type":31,"tag":199,"props":818,"children":819},{"style":212},[820],{"type":36,"value":367},{"type":31,"tag":199,"props":822,"children":823},{"class":201,"line":260},[824,829,833,838],{"type":31,"tag":199,"props":825,"children":826},{"style":284},[827],{"type":36,"value":828},"  \"client_id\"",{"type":31,"tag":199,"props":830,"children":831},{"style":212},[832],{"type":36,"value":811},{"type":31,"tag":199,"props":834,"children":835},{"style":330},[836],{"type":36,"value":837},"\"hashed_user_id\"",{"type":31,"tag":199,"props":839,"children":840},{"style":212},[841],{"type":36,"value":367},{"type":31,"tag":199,"props":843,"children":844},{"class":201,"line":270},[845,850,854,859],{"type":31,"tag":199,"props":846,"children":847},{"style":284},[848],{"type":36,"value":849},"  \"gclid\"",{"type":31,"tag":199,"props":851,"children":852},{"style":212},[853],{"type":36,"value":811},{"type":31,"tag":199,"props":855,"children":856},{"style":330},[857],{"type":36,"value":858},"\"abc123\"",{"type":31,"tag":199,"props":860,"children":861},{"style":212},[862],{"type":36,"value":367},{"type":31,"tag":199,"props":864,"children":865},{"class":201,"line":315},[866,871,875,880],{"type":31,"tag":199,"props":867,"children":868},{"style":284},[869],{"type":36,"value":870},"  \"value\"",{"type":31,"tag":199,"props":872,"children":873},{"style":212},[874],{"type":36,"value":811},{"type":31,"tag":199,"props":876,"children":877},{"style":284},[878],{"type":36,"value":879},"250.00",{"type":31,"tag":199,"props":881,"children":882},{"style":212},[883],{"type":36,"value":367},{"type":31,"tag":199,"props":885,"children":886},{"class":201,"line":351},[887,892,896,901],{"type":31,"tag":199,"props":888,"children":889},{"style":284},[890],{"type":36,"value":891},"  \"currency\"",{"type":31,"tag":199,"props":893,"children":894},{"style":212},[895],{"type":36,"value":811},{"type":31,"tag":199,"props":897,"children":898},{"style":330},[899],{"type":36,"value":900},"\"EUR\"",{"type":31,"tag":199,"props":902,"children":903},{"style":212},[904],{"type":36,"value":367},{"type":31,"tag":199,"props":906,"children":907},{"class":201,"line":370},[908,913,917],{"type":31,"tag":199,"props":909,"children":910},{"style":284},[911],{"type":36,"value":912},"  \"consent_ad_storage\"",{"type":31,"tag":199,"props":914,"children":915},{"style":212},[916],{"type":36,"value":811},{"type":31,"tag":199,"props":918,"children":919},{"style":330},[920],{"type":36,"value":921},"\"denied\"\n",{"type":31,"tag":199,"props":923,"children":924},{"class":201,"line":387},[925],{"type":31,"tag":199,"props":926,"children":927},{"style":212},[928],{"type":36,"value":516},{"type":31,"tag":32,"props":930,"children":931},{},[932,934,940],{"type":36,"value":933},"sGTM leitet diesen Event an Google Ads weiter – setzt zwar kein Cookie, weil ",{"type":31,"tag":51,"props":935,"children":937},{"className":936},[],[938],{"type":36,"value":939},"consent_ad_storage: denied",{"type":36,"value":941},", gibt dem Modeling aber Input. Dafür braucht es Google Ads Conversion Linker Tag + Server-Side Client ID Mapping in sGTM.",{"type":31,"tag":86,"props":943,"children":945},{"id":944},"sgtm-implementierungs-schritte",[946],{"type":36,"value":947},"sGTM Implementierungs-Schritte",{"type":31,"tag":523,"props":949,"children":950},{},[951,961,971,989],{"type":31,"tag":102,"props":952,"children":953},{},[954,959],{"type":31,"tag":106,"props":955,"children":956},{},[957],{"type":36,"value":958},"sGTM-Container aufsetzen:",{"type":36,"value":960}," Deploy auf Google Cloud Run oder Cloudflare Workers.",{"type":31,"tag":102,"props":962,"children":963},{},[964,969],{"type":31,"tag":106,"props":965,"children":966},{},[967],{"type":36,"value":968},"Backend Event POST senden:",{"type":36,"value":970}," Checkout-Completion mit Order ID + gclid + Consent-Flag.",{"type":31,"tag":102,"props":972,"children":973},{},[974,979,981,987],{"type":31,"tag":106,"props":975,"children":976},{},[977],{"type":36,"value":978},"Google Ads Tag in sGTM:",{"type":36,"value":980}," Conversion ID + Label eintragen, unter „User-Provided Data\" ",{"type":31,"tag":51,"props":982,"children":984},{"className":983},[],[985],{"type":36,"value":986},"client_id",{"type":36,"value":988}," mappen.",{"type":31,"tag":102,"props":990,"children":991},{},[992,997,999,1005],{"type":31,"tag":106,"props":993,"children":994},{},[995],{"type":36,"value":996},"Consent-Enforcement hinzufügen:",{"type":36,"value":998}," sGTM Custom Template mit Consent-Check – wenn ",{"type":31,"tag":51,"props":1000,"children":1002},{"className":1001},[],[1003],{"type":36,"value":1004},"ad_user_data: denied",{"type":36,"value":1006},", dann IP masking + User-ID hashing erzwingen.",{"type":31,"tag":32,"props":1008,"children":1009},{},[1010,1012,1017],{"type":36,"value":1011},"Wichtig für GDPR: Der ",{"type":31,"tag":51,"props":1013,"children":1015},{"className":1014},[],[1016],{"type":36,"value":986},{"type":36,"value":1018}," vom Backend muss SHA-256-gehashed sein. Raw Email oder User ID senden ist Datentransfer-Violation.",{"type":31,"tag":39,"props":1020,"children":1022},{"id":1021},"modeling-loss-messen-und-optimieren",[1023],{"type":36,"value":1024},"Modeling Loss messen und optimieren",{"type":31,"tag":32,"props":1026,"children":1027},{},[1028],{"type":36,"value":1029},"In Google Ads Interface unter „Conversions > Measurement\" gibt es die Spalte „Modeled conversions\". Sie zeigt geschätzte Conversions von Consent-Denied-Nutzern:",{"type":31,"tag":98,"props":1031,"children":1032},{},[1033,1043,1053],{"type":31,"tag":102,"props":1034,"children":1035},{},[1036,1041],{"type":31,"tag":106,"props":1037,"children":1038},{},[1039],{"type":36,"value":1040},"Observed conversions:",{"type":36,"value":1042}," Echte Conversions von Consent-Granted-Nutzern.",{"type":31,"tag":102,"props":1044,"children":1045},{},[1046,1051],{"type":31,"tag":106,"props":1047,"children":1048},{},[1049],{"type":36,"value":1050},"Modeled conversions:",{"type":36,"value":1052}," Geschätzte Conversions für Consent-Denied.",{"type":31,"tag":102,"props":1054,"children":1055},{},[1056,1061],{"type":31,"tag":106,"props":1057,"children":1058},{},[1059],{"type":36,"value":1060},"Total conversions:",{"type":36,"value":1062}," Observed + Modeled.",{"type":31,"tag":32,"props":1064,"children":1065},{},[1066,1068,1074],{"type":36,"value":1067},"Modeling Loss berechnet sich so: ",{"type":31,"tag":51,"props":1069,"children":1071},{"className":1070},[],[1072],{"type":36,"value":1073},"(1 - (Modeled \u002F (Total Traffic × Consent Denial Rate))) × 100",{"type":36,"value":1075},". Beispiel:",{"type":31,"tag":98,"props":1077,"children":1078},{},[1079,1084,1089,1094],{"type":31,"tag":102,"props":1080,"children":1081},{},[1082],{"type":36,"value":1083},"Gesamt-Traffic: 10.000 Clicks",{"type":31,"tag":102,"props":1085,"children":1086},{},[1087],{"type":36,"value":1088},"Consent Denial Rate: 50 % (5.000 Deny)",{"type":31,"tag":102,"props":1090,"children":1091},{},[1092],{"type":36,"value":1093},"Observed: 150",{"type":31,"tag":102,"props":1095,"children":1096},{},[1097],{"type":36,"value":1098},"Modeled: 60",{"type":31,"tag":32,"props":1100,"children":1101},{},[1102,1104,1110,1112,1118],{"type":36,"value":1103},"Erwartete Conversions (ohne Consent-Denial): ",{"type":31,"tag":51,"props":1105,"children":1107},{"className":1106},[],[1108],{"type":36,"value":1109},"150 × 2 = 300",{"type":36,"value":1111},". Tatsächlich: 210 (150 + 60). Loss: ",{"type":31,"tag":51,"props":1113,"children":1115},{"className":1114},[],[1116],{"type":36,"value":1117},"(1 - (210 \u002F 300)) × 100 = 30 %",{"type":36,"value":571},{"type":31,"tag":86,"props":1120,"children":1122},{"id":1121},"modeling-verbessern-taktiken",[1123],{"type":36,"value":1124},"Modeling verbessern: Taktiken",{"type":31,"tag":32,"props":1126,"children":1127},{},[1128],{"type":36,"value":1129},"So optimiert man Modeling-Performance:",{"type":31,"tag":523,"props":1131,"children":1132},{},[1133,1143,1153,1163],{"type":31,"tag":102,"props":1134,"children":1135},{},[1136,1141],{"type":31,"tag":106,"props":1137,"children":1138},{},[1139],{"type":36,"value":1140},"Consent-Granted-Volumen steigern:",{"type":36,"value":1142}," CMP Banner – „Akzeptieren\"-Button sichtbarer machen. Aber nicht dunkel – nur Layout. Keine Dark Patterns.",{"type":31,"tag":102,"props":1144,"children":1145},{},[1146,1151],{"type":31,"tag":106,"props":1147,"children":1148},{},[1149],{"type":36,"value":1150},"Funnel-Events erweitern:",{"type":36,"value":1152}," Nicht nur Purchase, auch Add-to-Cart, Begin-Checkout an Google Ads senden. Modell lernt über breiteres Intent-Signal.",{"type":31,"tag":102,"props":1154,"children":1155},{},[1156,1161],{"type":31,"tag":106,"props":1157,"children":1158},{},[1159],{"type":36,"value":1160},"Offline-Conversion-Import:",{"type":36,"value":1162}," Backend-Order-Daten täglich zu Google Ads importieren. Das bypassed Modeling, aber API-Limit: 2.000 Conversions\u002FTag\u002FKonto.",{"type":31,"tag":102,"props":1164,"children":1165},{},[1166,1171],{"type":31,"tag":106,"props":1167,"children":1168},{},[1169],{"type":36,"value":1170},"Enhanced Conversions:",{"type":36,"value":1172}," Email\u002FPhone-Hashes mit Conversion-Event senden. First-Party-Match erhöht Modeling-Präzision.",{"type":31,"tag":32,"props":1174,"children":1175},{},[1176,1178,1184],{"type":36,"value":1177},"Hinweis: Enhanced Conversions ist GDPR-Grauzone. Bei Consent granted ist Email-Hash legal, bei Denied nicht mal gehashed. Daher: Enhanced Conversions nur bei ",{"type":31,"tag":51,"props":1179,"children":1181},{"className":1180},[],[1182],{"type":36,"value":1183},"ad_user_data: granted",{"type":36,"value":1185}," auslösen.",{"type":31,"tag":39,"props":1187,"children":1189},{"id":1188},"reale-tradeoffs-compliance-vs-performance",[1190],{"type":36,"value":1191},"Reale Tradeoffs: Compliance vs. Performance",{"type":31,"tag":32,"props":1193,"children":1194},{},[1195],{"type":36,"value":1196},"Abschließend die drei Consent-Strategien mit Tradeoffs:",{"type":31,"tag":584,"props":1198,"children":1199},{},[1200,1231],{"type":31,"tag":588,"props":1201,"children":1202},{},[1203],{"type":31,"tag":592,"props":1204,"children":1205},{},[1206,1211,1216,1221,1226],{"type":31,"tag":596,"props":1207,"children":1208},{},[1209],{"type":36,"value":1210},"Ansatz",{"type":31,"tag":596,"props":1212,"children":1213},{},[1214],{"type":36,"value":1215},"Consent Denial",{"type":31,"tag":596,"props":1217,"children":1218},{},[1219],{"type":36,"value":1220},"Modeling Recovery",{"type":31,"tag":596,"props":1222,"children":1223},{},[1224],{"type":36,"value":1225},"ROAS-Impact",{"type":31,"tag":596,"props":1227,"children":1228},{},[1229],{"type":36,"value":1230},"GDPR-Risiko",{"type":31,"tag":607,"props":1232,"children":1233},{},[1234,1264,1295],{"type":31,"tag":592,"props":1235,"children":1236},{},[1237,1245,1250,1254,1259],{"type":31,"tag":614,"props":1238,"children":1239},{},[1240],{"type":31,"tag":106,"props":1241,"children":1242},{},[1243],{"type":36,"value":1244},"Strict (keine Vorauswahl)",{"type":31,"tag":614,"props":1246,"children":1247},{},[1248],{"type":36,"value":1249},"60–70 %",{"type":31,"tag":614,"props":1251,"children":1252},{},[1253],{"type":36,"value":1249},{"type":31,"tag":614,"props":1255,"children":1256},{},[1257],{"type":36,"value":1258},"–25 % ROAS",{"type":31,"tag":614,"props":1260,"children":1261},{},[1262],{"type":36,"value":1263},"Niedrig",{"type":31,"tag":592,"props":1265,"children":1266},{},[1267,1275,1280,1285,1290],{"type":31,"tag":614,"props":1268,"children":1269},{},[1270],{"type":31,"tag":106,"props":1271,"children":1272},{},[1273],{"type":36,"value":1274},"Ausgewogen (Legitimate Interest)",{"type":31,"tag":614,"props":1276,"children":1277},{},[1278],{"type":36,"value":1279},"40–50 %",{"type":31,"tag":614,"props":1281,"children":1282},{},[1283],{"type":36,"value":1284},"70–80 %",{"type":31,"tag":614,"props":1286,"children":1287},{},[1288],{"type":36,"value":1289},"–15 % ROAS",{"type":31,"tag":614,"props":1291,"children":1292},{},[1293],{"type":36,"value":1294},"Mittel (in TR unklar)",{"type":31,"tag":592,"props":1296,"children":1297},{},[1298,1306,1311,1316,1321],{"type":31,"tag":614,"props":1299,"children":1300},{},[1301],{"type":31,"tag":106,"props":1302,"children":1303},{},[1304],{"type":36,"value":1305},"Aggressive (vorausgewählt)",{"type":31,"tag":614,"props":1307,"children":1308},{},[1309],{"type":36,"value":1310},"20–30 %",{"type":31,"tag":614,"props":1312,"children":1313},{},[1314],{"type":36,"value":1315},"80–90 %",{"type":31,"tag":614,"props":1317,"children":1318},{},[1319],{"type":36,"value":1320},"–5 % ROAS",{"type":31,"tag":614,"props":1322,"children":1323},{},[1324],{"type":36,"value":1325},"Hoch (GDPR-Verstoß)",{"type":31,"tag":32,"props":1327,"children":1328},{},[1329,1331,1336,1338,1347],{"type":36,"value":1330},"Roibase empfiehlt: ",{"type":31,"tag":106,"props":1332,"children":1333},{},[1334],{"type":36,"value":1335},"Ausgewogener Ansatz + sGTM.",{"type":36,"value":1337}," Im CMP Legitimate Interest nutzen, Purpose 2–7–9–10 aktiv, aber nicht vorauswählen. Server-Side GTM für Backend-Conversion-Signal zu Google. Consent Denial bleibt bei 40–50 %, Modeling Loss ~15 %, und ",{"type":31,"tag":1339,"props":1340,"children":1344},"a",{"href":1341,"rel":1342},"https:\u002F\u002Fwww.roibase.com.tr\u002Fde\u002Fppc",[1343],"nofollow",[1345],{"type":36,"value":1346},"Performance-Marketing",{"type":36,"value":1348}," Kampagnen-Bidding Power bleibt intakt.",{"type":31,"tag":32,"props":1350,"children":1351},{},[1352,1354,1359],{"type":36,"value":1353},"Habt Ihr Consent Mode, aber Modeling funktioniert nicht? Checklist nochmal durchgehen. Meist: CMP lädt nicht vor GTM, oder ",{"type":31,"tag":51,"props":1355,"children":1357},{"className":1356},[],[1358],{"type":36,"value":56},{"type":36,"value":1360}," fehlt. Google Tag Assistant + sGTM Preview Mode zeigen Euch Consent-Pings live. So findet Ihr Fehler schnell.",{"type":31,"tag":1362,"props":1363,"children":1364},"style",{},[1365],{"type":36,"value":1366},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":15,"searchDepth":260,"depth":260,"links":1368},[1369,1372,1375,1378,1381],{"id":41,"depth":238,"text":44,"children":1370},[1371],{"id":88,"depth":260,"text":91},{"id":150,"depth":238,"text":153,"children":1373},[1374],{"id":574,"depth":260,"text":577},{"id":724,"depth":238,"text":727,"children":1376},[1377],{"id":944,"depth":260,"text":947},{"id":1021,"depth":238,"text":1024,"children":1379},[1380],{"id":1121,"depth":260,"text":1124},{"id":1188,"depth":238,"text":1191},"markdown","content:de:marketing:consent-mode-v2-tcf-2-2-modeling-loss-yonetimi.md","content","de\u002Fmarketing\u002Fconsent-mode-v2-tcf-2-2-modeling-loss-yonetimi.md","de\u002Fmarketing\u002Fconsent-mode-v2-tcf-2-2-modeling-loss-yonetimi","md",1785967489151]