Vodnik za integracijo soglasja za piškotke PostHog Product Analytics: Priročnik za lastno gostovanje in uvajanje v oblaku za leto 2026
PostHog je platforma za analitiko izdelkov, ki jo inženirske ekipe dosežejo, ko želijo analitiko izdelkov, predvajanje sej, zastavice funkcij, eksperimentiranje, ankete in spletno analitiko v enem skladu namesto petih dobaviteljev, zašitih skupaj. Ta združevanje je vrednostna ponudba. To je tudi razlog, zakaj privzeta namestitev PostHog nosi bolj skoncentrirane obveznosti glede soglasja kot skoraj katero koli drugo orodje, ki ga bo namestil založnik. Isti klic posthog.init(), ki zajema dogodke izdelka, lahko začne snemati seje, ocenjevati zastavice funkcij nasproti trajnemu identifikatorju in v vrsto postavljati prikaze anket — in vsaka od teh dejavnosti vključuje drugačno pravno osnovo v skladu z GDPR, ePrivacy in CCPA. Dobra novica je, da PostHog zagotavlja eno od najbolj zrnatih API-jev za soglasje v ekosistemu analitike; delo je v dejanskem izkoriščanju tega. Ta vodnik pojasnjuje, kako namestiti PostHog tako, da pravni položaj ustreza tehnični resničnosti tako v lastno gostovanih namestitvah kot PostHog Cloud, v regijah ZDA in EU ter na celotni površini analitike, predvajanja, zastavic in anket.
Zakaj PostHog zahteva soglasje — in zakaj odgovor ni enak za vsak modul
Spletni SDK PostHog ni pasivna oznaka strani. Pri privzeti inicializaciji SDK nastavi enega ali več vnosov vztrajnosti prve strani — privzeto kombinirana shema piškotka in localStorage z ključem ph_{projectKey}_posthog — ustvari stabilen ločen identifikator, zajame začetni ogled strani z napotitvijo, parametri UTM in identifikatorji klikov ter odpre dolgotrajni kanal dogodkov do konfiguriranega gostitelja za zajem. Če je predvajanje sej omogočeno na ravni projekta, SDK poleg tega začne pretakati neprekinjeni zapis izrisanega DOM, koordinate miške in vhodne dogodke. Če so zastavice funkcij konfigurirane, SDK oceni te zastavice nasproti ločenemu identifikatorju, ohrani odločitve za sejo in odda dogodek $feature_flag_called za vsako oceno.
Vsaka od teh dejavnosti ustreza drugačnemu prehodu soglasja. Shranjevanje ločenega identifikatorja je operacija shranjevanja in dostopa v skladu z Article 5(3) direktive ePrivacy in zahteva predhodno, prosto dano, specifično, informirano in nedvoumno soglasje v celotnem EGP, Združenem kraljestvu in kateri koli jurisdikciji, ki je prevzela enak standard. Zajemanje vedenjskih dogodkov je obdelava osebnih podatkov v skladu z GDPR, ker je kombinacija identifikatorja, naslova IP in vedenjske sledi zadostna za identifikacijo posameznika. Predvajanje sej spada v ločeno, strožjo kategorijo v skladu s smernicami EDPB o predvajanju sej — predvajanje zajame izrisani DOM in kakršna koli nemaskirana vhodna polja ter zahteva eksplicitno, zrnato soglasje, ki je ločeno od splošnega soglasja za analitiko. Ocenjevanje zastavic funkcij je subtilno: preverjanje zastavice, ki vrne vrednost boolean, samo po sebi ne zahteva soglasja, toda shranjevanje dodelitve zastavice uporabnika stabilnemu identifikatorju med sejami to zahteva, ker tako eksperimentiranje na podlagi zastavic ustvari sledljive podatke na ravni uporabnika.
Kaj PostHog zapiše pred soglasjem — in kaj je treba zatreti
Privzeti Browser SDK PostHog ob inicializaciji zapiše naslednje: en kombiniran vnos piškotka in localStorage pod ph_{projectKey}_posthog, ki vsebuje ločeni identifikator, identifikator seje in odločitve o zastavicah funkcij, ter — ko je predvajanje sej omogočeno — dodaten medpomnilnik za snemanje v pomnilniku, ki se izprazni na končno točko za zajem vsakih nekaj sekund. SDK pošlje tudi takojšnji dogodek $pageview in, če je samodejno zajemanje vklopljeno, vsak naslednji klik, interakcijo z obrazcem in klik z besom na strani.
Priporočen vzorec je inicializirati PostHog z opt_out_capturing_by_default: true in disable_session_recording: true, nato pa obrniti oba zastavice, ko pasica soglasja vrne pozitiven signal. To je pozicija integracije, ki jo dokumentacija PostHog zdaj priporoča, in to je pozicija, ki preživi regulatorno preiskavo, ker obrne privzeto: nič se ne zajame, dokler soglasje ni zabeleženo, in SDK zagotavlja čist prehod namesto posodobitve, ki temelji na stanju.
Piškotki, vnosi localStorage in identifikatorji, ki jih PostHog ohrani
Browser SDK 1.x zapiše en vnos vztrajnosti na projekt, z ključem ph_{projectKey}_posthog, s privzetim rokom veljavnosti 365 dni. Inicializacijska možnost persistence nadzira temeljni mehanizem: samo cookie, samo localStorage, localStorage+cookie (privzeto), sessionStorage ali memory. Za namestitev, ki daje soglasje na prvo mesto, je vztrajnost memory pravilen privzeti, ko soglasje še ni bilo odobreno — zagotavlja, da noben identifikator ne preživi seje strani — s prehodom na localStorage+cookie, ko je soglasje odobreno. SDK prav tako zapiše označevalnik opt-in ali opt-out pod __ph_opt_in_out_{projectKey} za shranjevanje izbire uporabnika med obiski; ta označevalnik sam po sebi je strogo potreben piškotek, ker ohranja odločitev o soglasju.
Preslikava modulov PostHog na okvire soglasja
PostHog ne implementira izvorno IAB TCF ali IAB Global Privacy Platform in ni zgrajen kot dobavitelj ad-tech. Vendar se integrira z Google Consent Mode v2 prek premostitve na strani založnika, izpostavlja izvorno API za opt-in in opt-out ter spoštuje glavo Do Not Track prek inicializacijske možnosti respect_dnt. Vzorec, ki deluje v produkciji, obravnava vsak modul PostHog kot ločen prehod, vezan na specifičen signal CMP.
- Dogodki analitike izdelkov so vezani na analitični namen. V terminologiji TCF je to najpogosteje namen 8 (merjenje zmogljivosti vsebine) v kombinaciji z namenom 1 (shranjevanje in/ali dostop do informacij). Za Consent Mode to ustreza analytics_storage.
- Predvajanje sej se nahaja za strožjim prehodom. Predvajanje sej PostHog zajame izrisani DOM in kakršna koli nemaskirana vhodna polja, zato je opt-in na ravni preferencij ali raziskav, ločen od analitike, zagovorljiva pozicija v skladu s smernicami EDPB.
- Zastavice funkcij in eksperimentiranje lahko delujeta z efemerno, pomnilniško oceno na podlagi legitimnega interesa, ko je cilj le variacija izrisane strani. Trajna dodelitev zastavice, vezana na stabilen identifikator med sejami, zahteva enako soglasje kot analitika, ker takrat zastavica postane sledljiva podatkovna točka na ravni uporabnika.
- Ankete in povratne informacije so vezane na isti prehod kot predvajanje sej, ko zbirajo prosti vnos besedila, ali na analitični prehod, ko zbirajo le ocene ali odgovore z enim izborom.
Integracijski vzorec, ki deluje
Referenčna namestitev ima štiri dele: CMP, ki izpostavi dogodek spremembe soglasja v realnem času, odložen zagon, ki inicializira PostHog z onemogočenim zajemanjem in predvajanjem, poslušalec soglasja, ki preklopi opt_in_capturing in stikalo snemanja, ko se odprejo ustrezni prehodi, ter pot umika, ki pokliče opt_out_capturing, ustavi medpomnilnik predvajanja in počisti trajne identifikatorje prek API-ja za ponastavitev SDK.
Spletna implementacija
Najčistejši vzorec je naložiti SDK PostHog na vsaki strani, a poklicati posthog.init(apiKey, { api_host: 'https://eu.posthog.com', opt_out_capturing_by_default: true, disable_session_recording: true, persistence: 'memory', respect_dnt: true }) kot začetni zagon. Naročite se na dogodek spremembe soglasja CMP. Ko kategorija analitike preide na true, pokličite posthog.set_config({ persistence: 'localStorage+cookie' }), ki mu sledi posthog.opt_in_capturing(); to znova omogoči zajemanje dogodkov in prehod vztrajnosti začne pisati ločeni identifikator. Ko kategorija predvajanja sej preide na true, pokličite posthog.startSessionRecording(). Ko je kateri koli prehod umaknjen, pokličite posthog.opt_out_capturing() za analitični prehod ali posthog.stopSessionRecording() za prehod predvajanja, poteče relevantne vnose vztrajnosti prek posthog.reset() in pošljite zahtevo za brisanje prek API-ja GDPR PostHog, če je uporabnik uveljavljal pravico do izbrisa.
Izbira regije: PostHog Cloud ZDA vs EU vs lastno gostovanje
PostHog upravlja dve cloudni regiji — ZDA (us.posthog.com) in EU (eu.posthog.com) — ter podpira lastno gostovane namestitve na lastni infrastrukturi stranke. Za promet EGP in Združenega kraljestva je oblak EU pravilna privzeta vrednost; ohranja zajem, obdelavo in shranjevanje znotraj EGP ter zmanjšuje izpostavljenost Schrems II, ki jo nosi vsaka namestitev analitike v regiji ZDA. Inicializacijska možnost api_host določi regijo. Lastno gostovani PostHog prestavi celoten sklad na lastno infrastrukturo založnika, kar je najmočnejša pozicija za rezidentnost podatkov, a ne odpravlja obveznosti glede soglasja — pravna osnova sledi podatkom, ne operaterju. Katera koli izbrana možnost mora biti odražena v obvestilu o zasebnosti in v evidenci dejavnosti obdelave upravljavca.
Zajemanje na strežniku
PostHog podpira zajemanje dogodkov na strežniku prek SDK-jev za Python, Node, Go, Ruby in PHP. Dogodki na strežniku niso izvzeti iz soglasja — pravna osnova sledi podatkom — toda zajemanje na strežniku daje založniku popoln nadzor nad tem, katera polja se oddajajo in kdaj. Pogost vzorec je zajemanje minimalnega nabora le bistvenih dogodkov na strežniku na podlagi legitimnega interesa, nato pa obogatiti te dogodke z vedenjskimi podrobnostmi odjemalca šele, ko je uporabnik podelil soglasje za analitiko. Dogodki na strežniku in odjemalcu se združijo na istem ločenem identifikatorju, ko je soglasje podeljeno; pred soglasjem se dogodki na strežniku oddajajo z anonimnim, efemerni identifikatorjem, ki se ponastavi ob vsaki seji.
Validacija integracije in revizijske sledi
Korak validacije je tisto, kar preverjajo regulatorji in kar založniki najpogosteje preskočijo. Pravilno integrirana namestitev PostHog mora prestati štiri teste zapored. Prvič, čista seja brskalnika s prikazano pasico, a brez izbire, mora ustvariti nič zahtevkov do konfiguriranega api_host razen prenosa datoteke SDK, nič piškotkov ph_ v document.cookie in nič vnosov ph_ v localStorage. Drugič, zavrnitev analitike mora ohraniti to stanje — brez zajemanja, brez snemanja, brez trajnega identifikatorja. Tretjič, sprejetje analitike mora ustvariti takojšnji dogodek $opt_in, pričakovani vnos vztrajnosti ph_{projectKey}_posthog s pravilnimi atributi SameSite in promet dogodkov, ki teče do konfiguriranega gostitelja. Četrtič, umik soglasja po dejstvu mora takoj ustaviti nadaljnje zajemanje in predvajanje, poteče trajne identifikatorje in sproži zahtevo za brisanje prek API-ja GDPR PostHog, če je uporabnik uveljavljal brisanje.
Pričakovanje revizijske sledi v skladu s smernicami EDPB iz leta 2023 o pasicah piškotkov in prenovljenimi prednostnimi nalogami delovne skupino za leto 2026 je, da lahko založnik dokaže za kateri koli posamezni dogodek v projektu PostHog, da je uporabnik, ki ga je ustvaril, dal veljavno soglasje v trenutku zajemanja. Standardni vzorec je nastaviti verzijo soglasja in časovni žig kot lastnosti osebe na ločenem ID-ju prek posthog.setPersonProperties({ consent_version: 'v3', consent_ts: ts }), da bo vsak posamezni dogodek sledljiv nazaj do določenega vnosa v dnevniku soglasja. Pravilno zavarovana namestitev, skupaj z izbiro regije, ki ustreza občinstvu, vztrajnostjo, ki privzeto sloni na pomnilniku, in potjo brisanja, ki se aktivira ob umiku, je tisto, kar PostHog pretvori iz regulatornega tveganja koncentracije v zagovorljivo središče sklada analitike izdelkov.